]> git.sesse.net Git - casparcg/commitdiff
git-svn-id: https://casparcg.svn.sourceforge.net/svnroot/casparcg/server/branches...
authorronag <ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Sat, 10 Dec 2011 01:18:25 +0000 (01:18 +0000)
committerronag <ronag@362d55ac-95cf-4e76-9f9a-cbaa9c17b72d>
Sat, 10 Dec 2011 01:18:25 +0000 (01:18 +0000)
420 files changed:
casparcg.sln
common/common.vcxproj
common/diagnostics/graph.cpp
dependencies64/bluefish/include/BlueC_Api.h [deleted file]
dependencies64/bluefish/include/BlueDriver_p.h [deleted file]
dependencies64/bluefish/include/BlueHANC.h [deleted file]
dependencies64/bluefish/include/BlueHancUtils.h [deleted file]
dependencies64/bluefish/include/BlueTypes.h [deleted file]
dependencies64/bluefish/include/BlueVelvet.h [deleted file]
dependencies64/bluefish/include/BlueVelvet4.h [deleted file]
dependencies64/bluefish/include/BlueVelvet_c.h [deleted file]
dependencies64/bluefish/lib/BlueFishFilters.lib [deleted file]
dependencies64/bluefish/lib/BlueFishFilters.tlb [deleted file]
dependencies64/bluefish/lib/BlueFishFilters64.lib [deleted file]
dependencies64/bluefish/lib/BlueFishFilters64.tlb [deleted file]
dependencies64/bluefish/lib/BlueHancUtils.lib [deleted file]
dependencies64/bluefish/lib/BlueHancUtils64.lib [deleted file]
dependencies64/bluefish/lib/BlueHancUtils64_d.lib [deleted file]
dependencies64/bluefish/lib/BlueHancUtils_d.lib [deleted file]
dependencies64/bluefish/lib/BlueVelvet3.lib [deleted file]
dependencies64/bluefish/lib/BlueVelvet3_d.lib [deleted file]
dependencies64/bluefish/lib/BlueVelvet64.lib [deleted file]
dependencies64/bluefish/lib/BlueVelvet64_d.lib [deleted file]
dependencies64/bluefish/lib/BlueVelvetCom.lib [deleted file]
dependencies64/bluefish/lib/BlueVelvetCom.tlb [deleted file]
dependencies64/bluefish/lib/BlueVelvetConstant.tlb [deleted file]
dependencies64/dependencies64.exe [new file with mode: 0644]
dependencies64/ffmpeg/bin/avcodec-53.dll [deleted file]
dependencies64/ffmpeg/bin/avdevice-53.dll [deleted file]
dependencies64/ffmpeg/bin/avfilter-2.dll [deleted file]
dependencies64/ffmpeg/bin/avformat-53.dll [deleted file]
dependencies64/ffmpeg/bin/avutil-51.dll [deleted file]
dependencies64/ffmpeg/bin/postproc-51.dll [deleted file]
dependencies64/ffmpeg/bin/swresample-0.dll [deleted file]
dependencies64/ffmpeg/bin/swscale-2.dll [deleted file]
dependencies64/ffmpeg/include/libavcodec/avcodec.h [deleted file]
dependencies64/ffmpeg/include/libavcodec/avfft.h [deleted file]
dependencies64/ffmpeg/include/libavcodec/dxva2.h [deleted file]
dependencies64/ffmpeg/include/libavcodec/opt.h [deleted file]
dependencies64/ffmpeg/include/libavcodec/vaapi.h [deleted file]
dependencies64/ffmpeg/include/libavcodec/vda.h [deleted file]
dependencies64/ffmpeg/include/libavcodec/vdpau.h [deleted file]
dependencies64/ffmpeg/include/libavcodec/version.h [deleted file]
dependencies64/ffmpeg/include/libavcodec/xvmc.h [deleted file]
dependencies64/ffmpeg/include/libavdevice/avdevice.h [deleted file]
dependencies64/ffmpeg/include/libavfilter/avcodec.h [deleted file]
dependencies64/ffmpeg/include/libavfilter/avfilter.h [deleted file]
dependencies64/ffmpeg/include/libavfilter/avfiltergraph.h [deleted file]
dependencies64/ffmpeg/include/libavfilter/buffersink.h [deleted file]
dependencies64/ffmpeg/include/libavfilter/vsrc_buffer.h [deleted file]
dependencies64/ffmpeg/include/libavformat/avformat.h [deleted file]
dependencies64/ffmpeg/include/libavformat/avio.h [deleted file]
dependencies64/ffmpeg/include/libavformat/version.h [deleted file]
dependencies64/ffmpeg/include/libavutil/adler32.h [deleted file]
dependencies64/ffmpeg/include/libavutil/aes.h [deleted file]
dependencies64/ffmpeg/include/libavutil/attributes.h [deleted file]
dependencies64/ffmpeg/include/libavutil/audioconvert.h [deleted file]
dependencies64/ffmpeg/include/libavutil/avassert.h [deleted file]
dependencies64/ffmpeg/include/libavutil/avconfig.h [deleted file]
dependencies64/ffmpeg/include/libavutil/avstring.h [deleted file]
dependencies64/ffmpeg/include/libavutil/avutil.h [deleted file]
dependencies64/ffmpeg/include/libavutil/base64.h [deleted file]
dependencies64/ffmpeg/include/libavutil/bswap.h [deleted file]
dependencies64/ffmpeg/include/libavutil/common.h [deleted file]
dependencies64/ffmpeg/include/libavutil/cpu.h [deleted file]
dependencies64/ffmpeg/include/libavutil/crc.h [deleted file]
dependencies64/ffmpeg/include/libavutil/dict.h [deleted file]
dependencies64/ffmpeg/include/libavutil/error.h [deleted file]
dependencies64/ffmpeg/include/libavutil/eval.h [deleted file]
dependencies64/ffmpeg/include/libavutil/fifo.h [deleted file]
dependencies64/ffmpeg/include/libavutil/file.h [deleted file]
dependencies64/ffmpeg/include/libavutil/imgutils.h [deleted file]
dependencies64/ffmpeg/include/libavutil/intfloat_readwrite.h [deleted file]
dependencies64/ffmpeg/include/libavutil/intreadwrite.h [deleted file]
dependencies64/ffmpeg/include/libavutil/lfg.h [deleted file]
dependencies64/ffmpeg/include/libavutil/log.h [deleted file]
dependencies64/ffmpeg/include/libavutil/lzo.h [deleted file]
dependencies64/ffmpeg/include/libavutil/mathematics.h [deleted file]
dependencies64/ffmpeg/include/libavutil/md5.h [deleted file]
dependencies64/ffmpeg/include/libavutil/mem.h [deleted file]
dependencies64/ffmpeg/include/libavutil/opt.h [deleted file]
dependencies64/ffmpeg/include/libavutil/parseutils.h [deleted file]
dependencies64/ffmpeg/include/libavutil/pixdesc.h [deleted file]
dependencies64/ffmpeg/include/libavutil/pixfmt.h [deleted file]
dependencies64/ffmpeg/include/libavutil/random_seed.h [deleted file]
dependencies64/ffmpeg/include/libavutil/rational.h [deleted file]
dependencies64/ffmpeg/include/libavutil/samplefmt.h [deleted file]
dependencies64/ffmpeg/include/libavutil/sha.h [deleted file]
dependencies64/ffmpeg/include/libpostproc/postprocess.h [deleted file]
dependencies64/ffmpeg/include/libswresample/swresample.h [deleted file]
dependencies64/ffmpeg/include/libswscale/swscale.h [deleted file]
dependencies64/ffmpeg/lib/avcodec.lib [deleted file]
dependencies64/ffmpeg/lib/avdevice.lib [deleted file]
dependencies64/ffmpeg/lib/avfilter.lib [deleted file]
dependencies64/ffmpeg/lib/avformat.lib [deleted file]
dependencies64/ffmpeg/lib/avutil.lib [deleted file]
dependencies64/ffmpeg/lib/postproc.lib [deleted file]
dependencies64/ffmpeg/lib/swresample.lib [deleted file]
dependencies64/ffmpeg/lib/swscale.lib [deleted file]
dependencies64/glew/bin/glew32.dll [deleted file]
dependencies64/glew/bin/glew32mx.dll [deleted file]
dependencies64/glew/bin/glewinfo.exe [deleted file]
dependencies64/glew/bin/visualinfo.exe [deleted file]
dependencies64/glew/include/GL/glew.h [deleted file]
dependencies64/glew/include/GL/glxew.h [deleted file]
dependencies64/glew/include/GL/wglew.h [deleted file]
dependencies64/glew/lib/glew32.lib [deleted file]
dependencies64/glew/lib/glew32mx.lib [deleted file]
dependencies64/glew/lib/glew32mxs.lib [deleted file]
dependencies64/glew/lib/glew32s.lib [deleted file]
dependencies64/sfml/bin/sfml-system-d.dll [deleted file]
dependencies64/sfml/bin/sfml-window-d.dll [deleted file]
dependencies64/sfml/extlibs/bin/libsndfile-1.dll [deleted file]
dependencies64/sfml/extlibs/bin/openal32.dll [deleted file]
dependencies64/sfml/extlibs/headers/AL/al.h [deleted file]
dependencies64/sfml/extlibs/headers/AL/alc.h [deleted file]
dependencies64/sfml/extlibs/headers/AL/alext.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/cache/ftccache.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/cache/ftccmap.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/cache/ftcglyph.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/cache/ftcimage.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/cache/ftcmanag.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/cache/ftcmru.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/cache/ftcsbits.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/config/ftconfig.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/config/ftheader.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/config/ftmodule.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/config/ftoption.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/config/ftstdlib.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/freetype.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ft2build.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftbbox.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftbdf.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftbitmap.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftcache.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftchapters.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/fterrdef.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/fterrors.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftglyph.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftgzip.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftimage.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftincrem.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftlist.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftlzw.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftmac.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftmm.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftmodapi.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftmoderr.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftotval.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftoutln.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftpfr.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftrender.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftsizes.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftsnames.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftstroke.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftsynth.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftsysio.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftsysmem.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftsystem.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/fttrigon.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/fttypes.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftwinfnt.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ftxf86.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/autohint.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftcalc.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftdebug.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftdriver.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftgloadr.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftmemory.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftobjs.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftrfork.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftserv.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftstream.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/fttrace.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/ftvalid.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/internal.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/pcftypes.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/psaux.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/pshints.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/sfnt.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svbdf.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svgldict.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svmm.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svotval.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svpfr.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svpostnm.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svpscmap.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svpsinfo.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svsfnt.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svttcmap.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svwinfnt.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/svxf86nm.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/t1types.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/internal/tttypes.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/t1tables.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ttnameid.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/tttables.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/tttags.h [deleted file]
dependencies64/sfml/extlibs/headers/freetype/ttunpat.h [deleted file]
dependencies64/sfml/extlibs/headers/ft2build.h [deleted file]
dependencies64/sfml/extlibs/headers/sndfile.h [deleted file]
dependencies64/sfml/extlibs/libs-vc2005/OpenAL32.lib [deleted file]
dependencies64/sfml/extlibs/libs-vc2005/freetype.lib [deleted file]
dependencies64/sfml/extlibs/libs-vc2005/sndfile.lib [deleted file]
dependencies64/sfml/include/SFML/Audio.hpp [deleted file]
dependencies64/sfml/include/SFML/Audio/AudioResource.hpp [deleted file]
dependencies64/sfml/include/SFML/Audio/Listener.hpp [deleted file]
dependencies64/sfml/include/SFML/Audio/Music.hpp [deleted file]
dependencies64/sfml/include/SFML/Audio/Sound.hpp [deleted file]
dependencies64/sfml/include/SFML/Audio/SoundBuffer.hpp [deleted file]
dependencies64/sfml/include/SFML/Audio/SoundBufferRecorder.hpp [deleted file]
dependencies64/sfml/include/SFML/Audio/SoundRecorder.hpp [deleted file]
dependencies64/sfml/include/SFML/Audio/SoundStream.hpp [deleted file]
dependencies64/sfml/include/SFML/Config.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Color.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Drawable.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Font.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Glyph.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Image.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Matrix3.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Matrix3.inl [deleted file]
dependencies64/sfml/include/SFML/Graphics/PostFX.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Rect.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Rect.inl [deleted file]
dependencies64/sfml/include/SFML/Graphics/RenderTarget.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/RenderWindow.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Shape.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/Sprite.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/String.hpp [deleted file]
dependencies64/sfml/include/SFML/Graphics/View.hpp [deleted file]
dependencies64/sfml/include/SFML/Network.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/Ftp.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/Http.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/IPAddress.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/Packet.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/Selector.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/Selector.inl [deleted file]
dependencies64/sfml/include/SFML/Network/SelectorBase.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/SocketHelper.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/SocketTCP.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/SocketUDP.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/Sockets.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/Unix/SocketHelper.hpp [deleted file]
dependencies64/sfml/include/SFML/Network/Win32/SocketHelper.hpp [deleted file]
dependencies64/sfml/include/SFML/System.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Clock.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Lock.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Mutex.hpp [deleted file]
dependencies64/sfml/include/SFML/System/NonCopyable.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Randomizer.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Resource.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Resource.inl [deleted file]
dependencies64/sfml/include/SFML/System/ResourcePtr.inl [deleted file]
dependencies64/sfml/include/SFML/System/Sleep.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Thread.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Unicode.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Unicode.inl [deleted file]
dependencies64/sfml/include/SFML/System/Unix/Mutex.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Unix/Thread.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Vector2.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Vector2.inl [deleted file]
dependencies64/sfml/include/SFML/System/Vector3.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Vector3.inl [deleted file]
dependencies64/sfml/include/SFML/System/Win32/Mutex.hpp [deleted file]
dependencies64/sfml/include/SFML/System/Win32/Thread.hpp [deleted file]
dependencies64/sfml/include/SFML/Window.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/Context.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/Event.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/Input.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/OpenGL.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/VideoMode.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/Window.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/WindowHandle.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/WindowListener.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/WindowSettings.hpp [deleted file]
dependencies64/sfml/include/SFML/Window/WindowStyle.hpp [deleted file]
dependencies64/sfml/lib/sfml-system-d.lib [deleted file]
dependencies64/sfml/lib/sfml-window-d.lib [deleted file]
dependencies64/tbb/bin/tbb.dll [deleted file]
dependencies64/tbb/bin/tbb.pdb [deleted file]
dependencies64/tbb/bin/tbb_debug.dll [deleted file]
dependencies64/tbb/bin/tbb_debug.pdb [deleted file]
dependencies64/tbb/bin/tbb_preview.dll [deleted file]
dependencies64/tbb/bin/tbb_preview.pdb [deleted file]
dependencies64/tbb/bin/tbb_preview_debug.dll [deleted file]
dependencies64/tbb/bin/tbb_preview_debug.pdb [deleted file]
dependencies64/tbb/bin/tbbmalloc.dll [deleted file]
dependencies64/tbb/bin/tbbmalloc.pdb [deleted file]
dependencies64/tbb/bin/tbbmalloc_debug.dll [deleted file]
dependencies64/tbb/bin/tbbmalloc_debug.pdb [deleted file]
dependencies64/tbb/bin/tbbmalloc_proxy.dll [deleted file]
dependencies64/tbb/bin/tbbmalloc_proxy.pdb [deleted file]
dependencies64/tbb/bin/tbbmalloc_proxy_debug.dll [deleted file]
dependencies64/tbb/bin/tbbmalloc_proxy_debug.pdb [deleted file]
dependencies64/tbb/include/index.html [deleted file]
dependencies64/tbb/include/serial/tbb/parallel_for.h [deleted file]
dependencies64/tbb/include/serial/tbb/tbb_annotate.h [deleted file]
dependencies64/tbb/include/tbb/aligned_space.h [deleted file]
dependencies64/tbb/include/tbb/atomic.h [deleted file]
dependencies64/tbb/include/tbb/blocked_range.h [deleted file]
dependencies64/tbb/include/tbb/blocked_range2d.h [deleted file]
dependencies64/tbb/include/tbb/blocked_range3d.h [deleted file]
dependencies64/tbb/include/tbb/cache_aligned_allocator.h [deleted file]
dependencies64/tbb/include/tbb/combinable.h [deleted file]
dependencies64/tbb/include/tbb/compat/condition_variable [deleted file]
dependencies64/tbb/include/tbb/compat/ppl.h [deleted file]
dependencies64/tbb/include/tbb/compat/thread [deleted file]
dependencies64/tbb/include/tbb/compat/tuple [deleted file]
dependencies64/tbb/include/tbb/concurrent_hash_map.h [deleted file]
dependencies64/tbb/include/tbb/concurrent_priority_queue.h [deleted file]
dependencies64/tbb/include/tbb/concurrent_queue.h [deleted file]
dependencies64/tbb/include/tbb/concurrent_unordered_map.h [deleted file]
dependencies64/tbb/include/tbb/concurrent_unordered_set.h [deleted file]
dependencies64/tbb/include/tbb/concurrent_vector.h [deleted file]
dependencies64/tbb/include/tbb/critical_section.h [deleted file]
dependencies64/tbb/include/tbb/enumerable_thread_specific.h [deleted file]
dependencies64/tbb/include/tbb/flow_graph.h [deleted file]
dependencies64/tbb/include/tbb/index.html [deleted file]
dependencies64/tbb/include/tbb/internal/_aggregator_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_concurrent_queue_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_concurrent_unordered_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_flow_graph_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_flow_graph_item_buffer_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_flow_graph_join_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_flow_graph_node_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_flow_graph_or_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_flow_graph_tagged_buffer_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_flow_graph_types_impl.h [deleted file]
dependencies64/tbb/include/tbb/internal/_tbb_windef.h [deleted file]
dependencies64/tbb/include/tbb/machine/gcc_generic.h [deleted file]
dependencies64/tbb/include/tbb/machine/ibm_aix51.h [deleted file]
dependencies64/tbb/include/tbb/machine/linux_common.h [deleted file]
dependencies64/tbb/include/tbb/machine/linux_ia32.h [deleted file]
dependencies64/tbb/include/tbb/machine/linux_ia64.h [deleted file]
dependencies64/tbb/include/tbb/machine/linux_intel64.h [deleted file]
dependencies64/tbb/include/tbb/machine/mac_ppc.h [deleted file]
dependencies64/tbb/include/tbb/machine/macos_common.h [deleted file]
dependencies64/tbb/include/tbb/machine/sunos_sparc.h [deleted file]
dependencies64/tbb/include/tbb/machine/windows_api.h [deleted file]
dependencies64/tbb/include/tbb/machine/windows_ia32.h [deleted file]
dependencies64/tbb/include/tbb/machine/windows_intel64.h [deleted file]
dependencies64/tbb/include/tbb/machine/xbox360_ppc.h [deleted file]
dependencies64/tbb/include/tbb/memory_pool.h [deleted file]
dependencies64/tbb/include/tbb/mutex.h [deleted file]
dependencies64/tbb/include/tbb/null_mutex.h [deleted file]
dependencies64/tbb/include/tbb/null_rw_mutex.h [deleted file]
dependencies64/tbb/include/tbb/parallel_do.h [deleted file]
dependencies64/tbb/include/tbb/parallel_for.h [deleted file]
dependencies64/tbb/include/tbb/parallel_for_each.h [deleted file]
dependencies64/tbb/include/tbb/parallel_invoke.h [deleted file]
dependencies64/tbb/include/tbb/parallel_reduce.h [deleted file]
dependencies64/tbb/include/tbb/parallel_scan.h [deleted file]
dependencies64/tbb/include/tbb/parallel_sort.h [deleted file]
dependencies64/tbb/include/tbb/parallel_while.h [deleted file]
dependencies64/tbb/include/tbb/partitioner.h [deleted file]
dependencies64/tbb/include/tbb/pipeline.h [deleted file]
dependencies64/tbb/include/tbb/queuing_mutex.h [deleted file]
dependencies64/tbb/include/tbb/queuing_rw_mutex.h [deleted file]
dependencies64/tbb/include/tbb/reader_writer_lock.h [deleted file]
dependencies64/tbb/include/tbb/recursive_mutex.h [deleted file]
dependencies64/tbb/include/tbb/runtime_loader.h [deleted file]
dependencies64/tbb/include/tbb/scalable_allocator.h [deleted file]
dependencies64/tbb/include/tbb/spin_mutex.h [deleted file]
dependencies64/tbb/include/tbb/spin_rw_mutex.h [deleted file]
dependencies64/tbb/include/tbb/task.h [deleted file]
dependencies64/tbb/include/tbb/task_group.h [deleted file]
dependencies64/tbb/include/tbb/task_scheduler_init.h [deleted file]
dependencies64/tbb/include/tbb/task_scheduler_observer.h [deleted file]
dependencies64/tbb/include/tbb/tbb.h [deleted file]
dependencies64/tbb/include/tbb/tbb_allocator.h [deleted file]
dependencies64/tbb/include/tbb/tbb_config.h [deleted file]
dependencies64/tbb/include/tbb/tbb_exception.h [deleted file]
dependencies64/tbb/include/tbb/tbb_machine.h [deleted file]
dependencies64/tbb/include/tbb/tbb_profiling.h [deleted file]
dependencies64/tbb/include/tbb/tbb_stddef.h [deleted file]
dependencies64/tbb/include/tbb/tbb_thread.h [deleted file]
dependencies64/tbb/include/tbb/tbbmalloc_proxy.h [deleted file]
dependencies64/tbb/include/tbb/tick_count.h [deleted file]
dependencies64/tbb/lib/irml/irml.lib [deleted file]
dependencies64/tbb/lib/irml/irml_debug.lib [deleted file]
dependencies64/tbb/lib/irml_c/irml.lib [deleted file]
dependencies64/tbb/lib/irml_c/irml_debug.lib [deleted file]
dependencies64/tbb/lib/tbb.def [deleted file]
dependencies64/tbb/lib/tbb.lib [deleted file]
dependencies64/tbb/lib/tbb_debug.lib [deleted file]
dependencies64/tbb/lib/tbb_preview.lib [deleted file]
dependencies64/tbb/lib/tbb_preview_debug.lib [deleted file]
dependencies64/tbb/lib/tbbmalloc.def [deleted file]
dependencies64/tbb/lib/tbbmalloc.lib [deleted file]
dependencies64/tbb/lib/tbbmalloc_debug.lib [deleted file]
dependencies64/tbb/lib/tbbmalloc_proxy.lib [deleted file]
dependencies64/tbb/lib/tbbmalloc_proxy_debug.lib [deleted file]
dependencies64/tbb/lib/tbbproxy.lib [deleted file]
dependencies64/tbb/lib/tbbproxy_debug.lib [deleted file]
dlls/FreeImage.dll [deleted file]
dlls/libsndfile-1.dll [deleted file]
dlls/openal32.dll [deleted file]
dlls/sfml-audio-d.dll [deleted file]
dlls/sfml-audio.dll [deleted file]
dlls/sfml-graphics-d.dll [deleted file]
dlls/sfml-graphics.dll [deleted file]
dlls/sfml-system-d.dll [deleted file]
dlls/sfml-system.dll [deleted file]
dlls/sfml-window-d.dll [deleted file]
dlls/sfml-window.dll [deleted file]
modules/decklink/interop/DeckLinkAPI_h.h
modules/decklink/interop/DeckLinkAPI_i.c
modules/image/image.cpp
modules/image/image.h
modules/image/image.vcxproj
modules/image/producer/image_producer.cpp
modules/image/util/image_loader.cpp
modules/image/util/image_loader.h
modules/oal/consumer/oal_consumer.cpp
modules/oal/oal.vcxproj
modules/ogl/consumer/ogl_consumer.cpp
modules/ogl/ogl.vcxproj
shell/server.cpp
shell/shell.vcxproj

index 8f1fedc831c20d52d8974375109479fb9037b78b..b2ec1008a40a2acede323fabe5b50bd781fb5a33 100644 (file)
@@ -162,7 +162,8 @@ Global
                {82ED7ED6-8A15-40EC-A8AF-F5E712E0DA68}.Release|x64.ActiveCfg = Release|Win32\r
                {88F974F0-D09F-4788-8CF8-F563209E60C1}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {88F974F0-D09F-4788-8CF8-F563209E60C1}.Debug|Win32.Build.0 = Debug|Win32\r
-               {88F974F0-D09F-4788-8CF8-F563209E60C1}.Debug|x64.ActiveCfg = Debug|Win32\r
+               {88F974F0-D09F-4788-8CF8-F563209E60C1}.Debug|x64.ActiveCfg = Debug|x64\r
+               {88F974F0-D09F-4788-8CF8-F563209E60C1}.Debug|x64.Build.0 = Debug|x64\r
                {88F974F0-D09F-4788-8CF8-F563209E60C1}.Develop|Win32.ActiveCfg = Develop|Win32\r
                {88F974F0-D09F-4788-8CF8-F563209E60C1}.Develop|Win32.Build.0 = Develop|Win32\r
                {88F974F0-D09F-4788-8CF8-F563209E60C1}.Develop|x64.ActiveCfg = Develop|Win32\r
index c8b2e14bd77a7ee89f43f2412d6fb732fd404529..36aba4b9acb77120d59197f6d0bb9b7dd8b26a03 100644 (file)
       <PrecompiledHeader>Use</PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;TBB_USE_DEBUG;SFML_DYNAMIC;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;TBB_USE_DEBUG;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <TreatWarningAsError>true</TreatWarningAsError>\r
       <SmallerTypeCheck>true</SmallerTypeCheck>\r
       <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
       <PrecompiledHeader>Use</PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;TBB_USE_DEBUG;SFML_DYNAMIC;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;TBB_USE_DEBUG;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <TreatWarningAsError>true</TreatWarningAsError>\r
       <SmallerTypeCheck>true</SmallerTypeCheck>\r
       <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
       <FunctionLevelLinking>\r
       </FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;SFML_DYNAMIC;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ExceptionHandling>Async</ExceptionHandling>\r
       <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>\r
       <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
       <FunctionLevelLinking>\r
       </FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;SFML_DYNAMIC;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ExceptionHandling>Async</ExceptionHandling>\r
       <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>\r
       <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
       <FunctionLevelLinking>\r
       </FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_THREADING_TOOLS=1;SFML_DYNAMIC;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_THREADING_TOOLS=1;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ExceptionHandling>Async</ExceptionHandling>\r
       <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>\r
       <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
       <FunctionLevelLinking>\r
       </FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_THREADING_TOOLS=1;SFML_DYNAMIC;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_THREADING_TOOLS=1;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ExceptionHandling>Async</ExceptionHandling>\r
       <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>\r
       <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
       <FunctionLevelLinking>\r
       </FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;TBB_USE_PERFORMANCE_WARNINGS=1;SFML_DYNAMIC;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;TBB_USE_PERFORMANCE_WARNINGS=1;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ExceptionHandling>Async</ExceptionHandling>\r
       <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>\r
       <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
       <FunctionLevelLinking>\r
       </FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;TBB_USE_PERFORMANCE_WARNINGS=1;SFML_DYNAMIC;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;TBB_USE_PERFORMANCE_WARNINGS=1;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <ExceptionHandling>Async</ExceptionHandling>\r
       <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>\r
       <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
index d767479cc3ddadc916704112124f1772dcfbb37f..a57cac1325b319fcb75ac36554c5ba9125df5b83 100644 (file)
@@ -28,7 +28,7 @@
 #include "../concurrency/executor.h"\r
 #include "../env.h"\r
 \r
-//#include <SFML/Graphics.hpp>\r
+#include <SFML/Graphics.hpp>\r
 \r
 #include <boost/foreach.hpp>\r
 #include <boost/optional.hpp>\r
 #include <array>\r
 \r
 namespace caspar { namespace diagnostics {\r
-//             \r
-//struct drawable : public sf::Drawable\r
-//{\r
-//     virtual ~drawable(){}\r
-//     virtual void render(sf::RenderTarget& target) = 0;\r
-//     virtual void Render(sf::RenderTarget& target) const { const_cast<drawable*>(this)->render(target);}\r
-//};\r
-//\r
-//class context : public drawable\r
-//{    \r
-//     std::unique_ptr<sf::RenderWindow> window_;\r
-//     \r
-//     std::list<std::shared_ptr<drawable>> drawables_;\r
-//             \r
-//     executor executor_;\r
-//public:                                      \r
-//\r
-//     template<typename Func>\r
-//     static void begin_invoke(Func&& func, task_priority priority) // noexcept\r
-//     {       \r
-//             if(get_instance().executor_.size() < 128)\r
-//                     get_instance().executor_.begin_invoke(std::forward<Func>(func), priority);      \r
-//     }\r
-//\r
-//     static void register_drawable(const std::shared_ptr<drawable>& drawable)\r
-//     {\r
-//             if(!drawable)\r
-//                     return;\r
-//\r
-//             begin_invoke([=]\r
-//             {\r
-//                     get_instance().do_register_drawable(drawable);\r
-//             }, high_priority);\r
-//     }\r
-//\r
-//     static void show(bool value)\r
-//     {\r
-//             begin_invoke([=]\r
-//             {       \r
-//                     get_instance().do_show(value);\r
-//             }, high_priority);\r
-//     }\r
-//                             \r
-//private:\r
-//     context() : executor_(L"diagnostics")\r
-//     {\r
-//             executor_.set_priority_class(below_normal_priority_class);\r
-//     }\r
-//\r
-//     void do_show(bool value)\r
-//     {\r
-//             if(value)\r
-//             {\r
-//                     if(!window_)\r
-//                     {\r
-//                             window_.reset(new sf::RenderWindow(sf::VideoMode(600, 1000), "CasparCG Diagnostics"));\r
-//                             window_->SetPosition(0, 0);\r
-//                             window_->SetActive();\r
-//                             glEnable(GL_BLEND);\r
-//                             glEnable(GL_LINE_SMOOTH);\r
-//                             glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);\r
-//                             glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\r
-//                             tick();\r
-//                     }\r
-//             }\r
-//             else\r
-//                     window_.reset();\r
-//     }\r
-//\r
-//     void tick()\r
-//     {\r
-//             if(!window_)\r
-//                     return;\r
-//\r
-//             sf::Event e;\r
-//             while(window_->GetEvent(e))\r
-//             {\r
-//                     if(e.Type == sf::Event::Closed)\r
-//                     {\r
-//                             window_.reset();\r
-//                             return;\r
-//                     }\r
-//             }               \r
-//             glClear(GL_COLOR_BUFFER_BIT);\r
-//             window_->Draw(*this);\r
-//             window_->Display();\r
-//             boost::this_thread::sleep(boost::posix_time::milliseconds(20));\r
-//             executor_.begin_invoke([this]{tick();});\r
-//     }\r
-//\r
-//     void render(sf::RenderTarget& target)\r
-//     {\r
-//             auto count = std::max<size_t>(8, drawables_.size());\r
-//             float target_dy = 1.0f/static_cast<float>(count);\r
-//\r
-//             float last_y = 0.0f;\r
-//             int n = 0;\r
-//             for(auto it = drawables_.begin(); it != drawables_.end(); ++n)\r
-//             {\r
-//                     auto& drawable = *it;\r
-//                     if(!drawable.unique())\r
-//                     {\r
-//                             drawable->SetScale(static_cast<float>(window_->GetWidth()), static_cast<float>(target_dy*window_->GetHeight()));\r
-//                             float target_y = std::max(last_y, static_cast<float>(n * window_->GetHeight())*target_dy);\r
-//                             drawable->SetPosition(0.0f, target_y);                  \r
-//                             target.Draw(*drawable);                         \r
-//                             ++it;           \r
-//                     }\r
-//                     else    \r
-//                             it = drawables_.erase(it);                      \r
-//             }               \r
-//     }       \r
-//     \r
-//     void do_register_drawable(const std::shared_ptr<drawable>& drawable)\r
-//     {\r
-//             if(std::find(drawables_.begin(), drawables_.end(), drawable) == drawables_.end())\r
-//                     drawables_.push_back(drawable);\r
-//     }\r
-//     \r
-//     static context& get_instance()\r
-//     {\r
-//             static context impl;\r
-//             return impl;\r
-//     }\r
-//};\r
-//\r
-//class guide : public drawable\r
-//{\r
-//     float value_;\r
-//     color c_;\r
-//public:\r
-//     guide(color c = color(1.0f, 1.0f, 1.0f, 0.6f)) \r
-//             : value_(0.0f)\r
-//             , c_(c){}\r
-//\r
-//     guide(float value, color c = color(1.0f, 1.0f, 1.0f, 0.6f)) \r
-//             : value_(value)\r
-//             , c_(c){}\r
-//                     \r
-//     void set_color(color c) {c_ = c;}\r
-//\r
-//     void render(sf::RenderTarget&)\r
-//     {               \r
-//             glEnable(GL_LINE_STIPPLE);\r
-//             glLineStipple(3, 0xAAAA);\r
-//             glBegin(GL_LINE_STRIP); \r
-//                     glColor4f(c_.red, c_.green, c_.blue+0.2f, c_.alpha);            \r
-//                     glVertex3f(0.0f, (1.0f-value_) * 0.8f + 0.1f, 0.0f);            \r
-//                     glVertex3f(1.0f, (1.0f-value_) * 0.8f + 0.1f, 0.0f);    \r
-//             glEnd();\r
-//             glDisable(GL_LINE_STIPPLE);\r
-//     }\r
-//};\r
-//\r
-//class line : public drawable\r
-//{\r
-//     boost::optional<diagnostics::guide> guide_;\r
-//     boost::circular_buffer<std::pair<double, bool>> line_data_;\r
-//\r
-//     boost::circular_buffer<double>  tick_data_;\r
-//     bool                                                    tick_tag_;\r
-//     color c_;\r
-//public:\r
-//     line(size_t res = 600)\r
-//             : line_data_(res)\r
-//             , tick_data_(50)\r
-//             , tick_tag_(false)\r
-//             , c_(1.0f, 1.0f, 1.0f)\r
-//     {\r
-//             line_data_.push_back(std::make_pair(-1.0f, false));\r
-//     }\r
-//     \r
-//     void update(double value)\r
-//     {\r
-//             tick_data_.push_back(value);\r
-//     }\r
-//\r
-//     void set(double value)\r
-//     {\r
-//             tick_data_.clear();\r
-//             tick_data_.push_back(value);\r
-//     }\r
-//     \r
-//     void tag()\r
-//     {\r
-//             tick_tag_ = true;\r
-//     }\r
-//\r
-//     void guide(const guide& guide)\r
-//     {\r
-//             guide_ = guide;\r
-//             guide_->set_color(c_);\r
-//     }\r
-//     \r
-//     void set_color(color c)\r
-//     {\r
-//             c_ = c;\r
-//             if(guide_)\r
-//                     guide_->set_color(c_);\r
-//     }\r
-//\r
-//     color get_color() const { return c_; }\r
-//     \r
-//     void render(sf::RenderTarget& target)\r
-//     {\r
-//             float dx = 1.0f/static_cast<float>(line_data_.capacity());\r
-//             float x = static_cast<float>(line_data_.capacity()-line_data_.size())*dx;\r
-//\r
-//             if(!tick_data_.empty())\r
-//             {\r
-//                     float sum = std::accumulate(tick_data_.begin(), tick_data_.end(), 0.0) + std::numeric_limits<float>::min();\r
-//                     line_data_.push_back(std::make_pair(static_cast<float>(sum)/static_cast<float>(tick_data_.size()), tick_tag_));\r
-//                     tick_data_.clear();\r
-//             }\r
-//             else if(!line_data_.empty())\r
-//             {\r
-//                     line_data_.push_back(std::make_pair(line_data_.back().first, tick_tag_));\r
-//             }\r
-//             tick_tag_ = false;\r
-//\r
-//             if(guide_)\r
-//                     target.Draw(*guide_);\r
-//             \r
-//             glBegin(GL_LINE_STRIP);\r
-//             glColor4f(c_.red, c_.green, c_.blue, 0.8f);             \r
-//             for(size_t n = 0; n < line_data_.size(); ++n)           \r
-//                     if(line_data_[n].first > -0.5)\r
-//                             glVertex3d(x+n*dx, std::max(0.05, std::min(0.95, (1.0f-line_data_[n].first)*0.8 + 0.1f)), 0.0);         \r
-//             glEnd();\r
-//                             \r
-//             glEnable(GL_LINE_STIPPLE);\r
-//             glLineStipple(3, 0xAAAA);\r
-//             for(size_t n = 0; n < line_data_.size(); ++n)   \r
-//             {\r
-//                     if(line_data_[n].second)\r
-//                     {\r
-//                             glBegin(GL_LINE_STRIP);\r
-//                             glColor4f(c_.red, c_.green, c_.blue, c_.alpha);                                 \r
-//                                     glVertex3f(x+n*dx, 0.0f, 0.0f);                         \r
-//                                     glVertex3f(x+n*dx, 1.0f, 0.0f);         \r
-//                             glEnd();\r
-//                     }\r
-//             }\r
-//             glDisable(GL_LINE_STIPPLE);\r
-//     }\r
-//};\r
-//\r
-//struct graph::implementation : public drawable\r
-//{\r
-//     std::map<std::string, diagnostics::line> lines_;\r
-//     std::string name_;\r
-//     std::string text_;\r
-//     \r
-//     implementation(const std::string& name) \r
-//             : name_(name)\r
-//             , text_(name_){}\r
-//     \r
-//     void set_text(const std::string& value)\r
-//     {\r
-//             text_ = value;\r
-//     }\r
-//\r
-//     void update(const std::string& name, double value)\r
-//     {\r
-//             lines_[name].update(value);\r
-//     }\r
-//\r
-//     void set(const std::string& name, double value)\r
-//     {\r
-//             lines_[name].set(value);\r
-//     }\r
-//\r
-//     void tag(const std::string& name)\r
-//     {\r
-//             lines_[name].tag();\r
-//     }\r
-//\r
-//     void set_color(const std::string& name, color c)\r
-//     {\r
-//             lines_[name].set_color(c);\r
-//     }\r
-//     \r
-//     void guide(const std::string& name, double value)\r
-//     {\r
-//             lines_[name].guide(diagnostics::guide(value));  \r
-//     }\r
-//     \r
-//private:\r
-//     void render(sf::RenderTarget& target)\r
-//     {\r
-//             const size_t text_size = 15;\r
-//             const size_t text_margin = 2;\r
-//             const size_t text_offset = (text_size+text_margin*2)*2;\r
-//\r
-//             sf::String text(text_.c_str(), sf::Font::GetDefaultFont(), text_size);\r
-//             text.SetStyle(sf::String::Italic);\r
-//             text.Move(text_margin, text_margin);\r
-//             \r
-//             glPushMatrix();\r
-//                     glScaled(1.0f/GetScale().x, 1.0f/GetScale().y, 1.0f);\r
-//                     target.Draw(text);\r
-//                     float x_offset = text_margin;\r
-//                     for(auto it = lines_.begin(); it != lines_.end(); ++it)\r
-//                     {                                               \r
-//                             sf::String line_text(it->first, sf::Font::GetDefaultFont(), text_size);\r
-//                             line_text.SetPosition(x_offset, text_margin+text_offset/2);\r
-//                             auto c = it->second.get_color();\r
-//                             line_text.SetColor(sf::Color(c.red*255.0f, c.green*255.0f, c.blue*255.0f, c.alpha*255.0f));\r
-//                             target.Draw(line_text);\r
-//                             x_offset = line_text.GetRect().Right + text_margin*2;\r
-//                     }\r
-//\r
-//                     glDisable(GL_TEXTURE_2D);\r
-//             glPopMatrix();\r
-//\r
-//             glBegin(GL_QUADS);\r
-//                     glColor4f(1.0f, 1.0f, 1.0f, 0.2f);      \r
-//                     glVertex2f(1.0f, 0.99f);\r
-//                     glVertex2f(0.0f, 0.99f);\r
-//                     glVertex2f(0.0f, 0.01f);        \r
-//                     glVertex2f(1.0f, 0.01f);        \r
-//             glEnd();\r
-//\r
-//             glPushMatrix();\r
-//                     glTranslated(0.0f, text_offset/GetScale().y, 1.0f);\r
-//                     glScaled(1.0f, 1.0-text_offset/GetScale().y, 1.0f);\r
-//             \r
-//                     target.Draw(diagnostics::guide(1.0f, color(1.0f, 1.0f, 1.0f, 0.6f)));\r
-//                     target.Draw(diagnostics::guide(0.0f, color(1.0f, 1.0f, 1.0f, 0.6f)));\r
-//\r
-//                     for(auto it = lines_.begin(); it != lines_.end(); ++it)         \r
-//                             target.Draw(it->second);\r
-//             \r
-//             glPopMatrix();\r
-//     }\r
-//\r
-//     implementation(implementation&);\r
-//     implementation& operator=(implementation&);\r
-//};\r
+               \r
+struct drawable : public sf::Drawable\r
+{\r
+       virtual ~drawable(){}\r
+       virtual void render(sf::RenderTarget& target) = 0;\r
+       virtual void Render(sf::RenderTarget& target) const { const_cast<drawable*>(this)->render(target);}\r
+};\r
+\r
+class context : public drawable\r
+{      \r
+       std::unique_ptr<sf::RenderWindow> window_;\r
+       \r
+       std::list<std::shared_ptr<drawable>> drawables_;\r
+               \r
+       executor executor_;\r
+public:                                        \r
+\r
+       template<typename Func>\r
+       static void begin_invoke(Func&& func, task_priority priority) // noexcept\r
+       {       \r
+               if(get_instance().executor_.size() < 128)\r
+                       get_instance().executor_.begin_invoke(std::forward<Func>(func), priority);      \r
+       }\r
+\r
+       static void register_drawable(const std::shared_ptr<drawable>& drawable)\r
+       {\r
+               if(!drawable)\r
+                       return;\r
+\r
+               begin_invoke([=]\r
+               {\r
+                       get_instance().do_register_drawable(drawable);\r
+               }, high_priority);\r
+       }\r
+\r
+       static void show(bool value)\r
+       {\r
+               begin_invoke([=]\r
+               {       \r
+                       get_instance().do_show(value);\r
+               }, high_priority);\r
+       }\r
+                               \r
+private:\r
+       context() : executor_(L"diagnostics")\r
+       {\r
+               executor_.set_priority_class(below_normal_priority_class);\r
+       }\r
+\r
+       void do_show(bool value)\r
+       {\r
+               if(value)\r
+               {\r
+                       if(!window_)\r
+                       {\r
+                               window_.reset(new sf::RenderWindow(sf::VideoMode(600, 1000), "CasparCG Diagnostics"));\r
+                               window_->SetPosition(0, 0);\r
+                               window_->SetActive();\r
+                               glEnable(GL_BLEND);\r
+                               glEnable(GL_LINE_SMOOTH);\r
+                               glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);\r
+                               glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);\r
+                               tick();\r
+                       }\r
+               }\r
+               else\r
+                       window_.reset();\r
+       }\r
+\r
+       void tick()\r
+       {\r
+               if(!window_)\r
+                       return;\r
+\r
+               sf::Event e;\r
+               while(window_->GetEvent(e))\r
+               {\r
+                       if(e.Type == sf::Event::Closed)\r
+                       {\r
+                               window_.reset();\r
+                               return;\r
+                       }\r
+               }               \r
+               glClear(GL_COLOR_BUFFER_BIT);\r
+               window_->Draw(*this);\r
+               window_->Display();\r
+               boost::this_thread::sleep(boost::posix_time::milliseconds(20));\r
+               executor_.begin_invoke([this]{tick();});\r
+       }\r
+\r
+       void render(sf::RenderTarget& target)\r
+       {\r
+               auto count = std::max<size_t>(8, drawables_.size());\r
+               float target_dy = 1.0f/static_cast<float>(count);\r
+\r
+               float last_y = 0.0f;\r
+               int n = 0;\r
+               for(auto it = drawables_.begin(); it != drawables_.end(); ++n)\r
+               {\r
+                       auto& drawable = *it;\r
+                       if(!drawable.unique())\r
+                       {\r
+                               drawable->SetScale(static_cast<float>(window_->GetWidth()), static_cast<float>(target_dy*window_->GetHeight()));\r
+                               float target_y = std::max(last_y, static_cast<float>(n * window_->GetHeight())*target_dy);\r
+                               drawable->SetPosition(0.0f, target_y);                  \r
+                               target.Draw(*drawable);                         \r
+                               ++it;           \r
+                       }\r
+                       else    \r
+                               it = drawables_.erase(it);                      \r
+               }               \r
+       }       \r
+       \r
+       void do_register_drawable(const std::shared_ptr<drawable>& drawable)\r
+       {\r
+               if(std::find(drawables_.begin(), drawables_.end(), drawable) == drawables_.end())\r
+                       drawables_.push_back(drawable);\r
+       }\r
+       \r
+       static context& get_instance()\r
+       {\r
+               static context impl;\r
+               return impl;\r
+       }\r
+};\r
+\r
+class guide : public drawable\r
+{\r
+       float value_;\r
+       color c_;\r
+public:\r
+       guide(color c = color(1.0f, 1.0f, 1.0f, 0.6f)) \r
+               : value_(0.0f)\r
+               , c_(c){}\r
+\r
+       guide(float value, color c = color(1.0f, 1.0f, 1.0f, 0.6f)) \r
+               : value_(value)\r
+               , c_(c){}\r
+                       \r
+       void set_color(color c) {c_ = c;}\r
+\r
+       void render(sf::RenderTarget&)\r
+       {               \r
+               glEnable(GL_LINE_STIPPLE);\r
+               glLineStipple(3, 0xAAAA);\r
+               glBegin(GL_LINE_STRIP); \r
+                       glColor4f(c_.red, c_.green, c_.blue+0.2f, c_.alpha);            \r
+                       glVertex3f(0.0f, (1.0f-value_) * 0.8f + 0.1f, 0.0f);            \r
+                       glVertex3f(1.0f, (1.0f-value_) * 0.8f + 0.1f, 0.0f);    \r
+               glEnd();\r
+               glDisable(GL_LINE_STIPPLE);\r
+       }\r
+};\r
+\r
+class line : public drawable\r
+{\r
+       boost::optional<diagnostics::guide> guide_;\r
+       boost::circular_buffer<std::pair<double, bool>> line_data_;\r
+\r
+       boost::circular_buffer<double>  tick_data_;\r
+       bool                                                    tick_tag_;\r
+       color c_;\r
+public:\r
+       line(size_t res = 600)\r
+               : line_data_(res)\r
+               , tick_data_(50)\r
+               , tick_tag_(false)\r
+               , c_(1.0f, 1.0f, 1.0f)\r
+       {\r
+               line_data_.push_back(std::make_pair(-1.0f, false));\r
+       }\r
+       \r
+       void update(double value)\r
+       {\r
+               tick_data_.push_back(value);\r
+       }\r
+\r
+       void set(double value)\r
+       {\r
+               tick_data_.clear();\r
+               tick_data_.push_back(value);\r
+       }\r
+       \r
+       void tag()\r
+       {\r
+               tick_tag_ = true;\r
+       }\r
+\r
+       void guide(const guide& guide)\r
+       {\r
+               guide_ = guide;\r
+               guide_->set_color(c_);\r
+       }\r
+       \r
+       void set_color(color c)\r
+       {\r
+               c_ = c;\r
+               if(guide_)\r
+                       guide_->set_color(c_);\r
+       }\r
+\r
+       color get_color() const { return c_; }\r
+       \r
+       void render(sf::RenderTarget& target)\r
+       {\r
+               float dx = 1.0f/static_cast<float>(line_data_.capacity());\r
+               float x = static_cast<float>(line_data_.capacity()-line_data_.size())*dx;\r
+\r
+               if(!tick_data_.empty())\r
+               {\r
+                       float sum = std::accumulate(tick_data_.begin(), tick_data_.end(), 0.0) + std::numeric_limits<float>::min();\r
+                       line_data_.push_back(std::make_pair(static_cast<float>(sum)/static_cast<float>(tick_data_.size()), tick_tag_));\r
+                       tick_data_.clear();\r
+               }\r
+               else if(!line_data_.empty())\r
+               {\r
+                       line_data_.push_back(std::make_pair(line_data_.back().first, tick_tag_));\r
+               }\r
+               tick_tag_ = false;\r
+\r
+               if(guide_)\r
+                       target.Draw(*guide_);\r
+               \r
+               glBegin(GL_LINE_STRIP);\r
+               glColor4f(c_.red, c_.green, c_.blue, 0.8f);             \r
+               for(size_t n = 0; n < line_data_.size(); ++n)           \r
+                       if(line_data_[n].first > -0.5)\r
+                               glVertex3d(x+n*dx, std::max(0.05, std::min(0.95, (1.0f-line_data_[n].first)*0.8 + 0.1f)), 0.0);         \r
+               glEnd();\r
+                               \r
+               glEnable(GL_LINE_STIPPLE);\r
+               glLineStipple(3, 0xAAAA);\r
+               for(size_t n = 0; n < line_data_.size(); ++n)   \r
+               {\r
+                       if(line_data_[n].second)\r
+                       {\r
+                               glBegin(GL_LINE_STRIP);\r
+                               glColor4f(c_.red, c_.green, c_.blue, c_.alpha);                                 \r
+                                       glVertex3f(x+n*dx, 0.0f, 0.0f);                         \r
+                                       glVertex3f(x+n*dx, 1.0f, 0.0f);         \r
+                               glEnd();\r
+                       }\r
+               }\r
+               glDisable(GL_LINE_STIPPLE);\r
+       }\r
+};\r
+\r
+struct graph::implementation : public drawable\r
+{\r
+       std::map<std::string, diagnostics::line> lines_;\r
+       std::string name_;\r
+       std::string text_;\r
+       \r
+       implementation(const std::string& name) \r
+               : name_(name)\r
+               , text_(name_){}\r
+       \r
+       void set_text(const std::string& value)\r
+       {\r
+               text_ = value;\r
+       }\r
+\r
+       void update(const std::string& name, double value)\r
+       {\r
+               lines_[name].update(value);\r
+       }\r
+\r
+       void set(const std::string& name, double value)\r
+       {\r
+               lines_[name].set(value);\r
+       }\r
+\r
+       void tag(const std::string& name)\r
+       {\r
+               lines_[name].tag();\r
+       }\r
+\r
+       void set_color(const std::string& name, color c)\r
+       {\r
+               lines_[name].set_color(c);\r
+       }\r
+       \r
+       void guide(const std::string& name, double value)\r
+       {\r
+               lines_[name].guide(diagnostics::guide(value));  \r
+       }\r
+       \r
+private:\r
+       void render(sf::RenderTarget& target)\r
+       {\r
+               const size_t text_size = 15;\r
+               const size_t text_margin = 2;\r
+               const size_t text_offset = (text_size+text_margin*2)*2;\r
+\r
+               sf::String text(text_.c_str(), sf::Font::GetDefaultFont(), text_size);\r
+               text.SetStyle(sf::String::Italic);\r
+               text.Move(text_margin, text_margin);\r
+               \r
+               glPushMatrix();\r
+                       glScaled(1.0f/GetScale().x, 1.0f/GetScale().y, 1.0f);\r
+                       target.Draw(text);\r
+                       float x_offset = text_margin;\r
+                       for(auto it = lines_.begin(); it != lines_.end(); ++it)\r
+                       {                                               \r
+                               sf::String line_text(it->first, sf::Font::GetDefaultFont(), text_size);\r
+                               line_text.SetPosition(x_offset, text_margin+text_offset/2);\r
+                               auto c = it->second.get_color();\r
+                               line_text.SetColor(sf::Color(c.red*255.0f, c.green*255.0f, c.blue*255.0f, c.alpha*255.0f));\r
+                               target.Draw(line_text);\r
+                               x_offset = line_text.GetRect().Right + text_margin*2;\r
+                       }\r
+\r
+                       glDisable(GL_TEXTURE_2D);\r
+               glPopMatrix();\r
+\r
+               glBegin(GL_QUADS);\r
+                       glColor4f(1.0f, 1.0f, 1.0f, 0.2f);      \r
+                       glVertex2f(1.0f, 0.99f);\r
+                       glVertex2f(0.0f, 0.99f);\r
+                       glVertex2f(0.0f, 0.01f);        \r
+                       glVertex2f(1.0f, 0.01f);        \r
+               glEnd();\r
+\r
+               glPushMatrix();\r
+                       glTranslated(0.0f, text_offset/GetScale().y, 1.0f);\r
+                       glScaled(1.0f, 1.0-text_offset/GetScale().y, 1.0f);\r
+               \r
+                       target.Draw(diagnostics::guide(1.0f, color(1.0f, 1.0f, 1.0f, 0.6f)));\r
+                       target.Draw(diagnostics::guide(0.0f, color(1.0f, 1.0f, 1.0f, 0.6f)));\r
+\r
+                       for(auto it = lines_.begin(); it != lines_.end(); ++it)         \r
+                               target.Draw(it->second);\r
+               \r
+               glPopMatrix();\r
+       }\r
+\r
+       implementation(implementation&);\r
+       implementation& operator=(implementation&);\r
+};\r
        \r
-graph::graph() //: impl_(new implementation(""))\r
+graph::graph() : impl_(new implementation(""))\r
 {\r
 \r
 }\r
 \r
 void graph::set_text(const std::string& value)\r
 {\r
-       //auto p = impl_;\r
-       //context::begin_invoke([=]\r
-       //{     \r
-       //      p->set_text(value);\r
-       //}, high_priority);\r
+       auto p = impl_;\r
+       context::begin_invoke([=]\r
+       {       \r
+               p->set_text(value);\r
+       }, high_priority);\r
 }\r
 \r
 void graph::set_text(const std::wstring& value)\r
 {\r
-       //auto p = impl_;\r
-       //context::begin_invoke([=]\r
-       //{     \r
-       //      set_text(u8(value));\r
-       //}, high_priority);\r
+       auto p = impl_;\r
+       context::begin_invoke([=]\r
+       {       \r
+               set_text(u8(value));\r
+       }, high_priority);\r
 }\r
 \r
 void graph::update_value(const std::string& name, double value)\r
 {\r
-       //auto p = impl_;\r
-       //context::begin_invoke([=]\r
-       //{     \r
-       //      p->update(name, value);\r
-       //}, high_priority);\r
+       auto p = impl_;\r
+       context::begin_invoke([=]\r
+       {       \r
+               p->update(name, value);\r
+       }, high_priority);\r
 }\r
 void graph::set_value(const std::string& name, double value)\r
 {      \r
-       //auto p = impl_;\r
-       //context::begin_invoke([=]\r
-       //{     \r
-       //      p->set(name, value);\r
-       //}, high_priority);    \r
+       auto p = impl_;\r
+       context::begin_invoke([=]\r
+       {       \r
+               p->set(name, value);\r
+       }, high_priority);      \r
 }\r
 void graph::set_color(const std::string& name, color c)\r
 {              \r
-       //auto p = impl_;\r
-       //context::begin_invoke([=]\r
-       //{     \r
-       //      p->set_color(name, c);\r
-       //}, high_priority);\r
+       auto p = impl_;\r
+       context::begin_invoke([=]\r
+       {       \r
+               p->set_color(name, c);\r
+       }, high_priority);\r
 }\r
 void graph::add_tag(const std::string& name)\r
 {              \r
-       //auto p = impl_;\r
-       //context::begin_invoke([=]\r
-       //{     \r
-       //      p->tag(name);\r
-       //}, high_priority);\r
+       auto p = impl_;\r
+       context::begin_invoke([=]\r
+       {       \r
+               p->tag(name);\r
+       }, high_priority);\r
 }\r
 void graph::add_guide(const std::string& name, double value)\r
 {      \r
-       //auto p = impl_;\r
-       //context::begin_invoke([=]\r
-       //{     \r
-       //      p->guide(name, value);\r
-       //}, high_priority);\r
+       auto p = impl_;\r
+       context::begin_invoke([=]\r
+       {       \r
+               p->guide(name, value);\r
+       }, high_priority);\r
 }\r
 \r
 void register_graph(const safe_ptr<graph>& graph)\r
 {\r
-       //context::register_drawable(graph->impl_);\r
+       context::register_drawable(graph->impl_);\r
 }\r
 \r
 void show_graphs(bool value)\r
 {\r
-       //context::show(value);\r
+       context::show(value);\r
 }\r
 \r
 //namespace v2\r
diff --git a/dependencies64/bluefish/include/BlueC_Api.h b/dependencies64/bluefish/include/BlueC_Api.h
deleted file mode 100644 (file)
index 5831699..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-// The following ifdef block is the standard way of creating macros which make exporting \r
-// from a DLL simpler. All files within this DLL are compiled with the BLUEC_API_EXPORTS\r
-// symbol defined on the command line. this symbol should not be defined on any project\r
-// that uses this DLL. This way any other project whose source files include this file see \r
-// BLUEC_API_API functions as being imported from a DLL, whereas this DLL sees symbols\r
-// defined with this macro as being exported.\r
-#ifdef BLUEFISH_EXPORTS\r
-#define BLUE_CSDK_API __declspec(dllexport)\r
-#else\r
-#define BLUE_CSDK_API __declspec(dllimport)\r
-#endif\r
-#include "BlueTypes.h"\r
-#include "BlueDriver_p.h"\r
-\r
-#define IGNORE_SYNC_WAIT_TIMEOUT_VALUE (0xFFFFFFFF)\r
-\r
-\r
-#pragma once\r
-\r
-//\r
-//typedef enum _blue_video_engine_flags\r
-//{\r
-//     BLUE_CAPTURE_PREVIEW_ON_OUTPUT_CHANNEL_A=0x1,\r
-//     BLUE_CAPTURE_PREVIEW_ON_OUTPUT_CHANNEL_B=0x2,\r
-//     BLUE_CAPTURE_PREVIEW_ON_OUTPUT_CHANNEL_C=0x3,\r
-//     BLUE_CAPTURE_PREVIEW_ON_OUTPUT_CHANNEL_D=0x4\r
-//}blue_video_engine_flags;\r
-//\r
-typedef enum _EBLUEDMA_DIRECTION\r
-{\r
-       BLUEDMA_WRITE=0,\r
-       BLUEDMA_READ=1,\r
-       BLUEDMA_INVALID=3\r
-}EBLUEDMA_DIRECTION;\r
-\r
-typedef struct _EBlueConnectorPropertySetting\r
-{\r
-       EBlueVideoChannel channel;\r
-       EBlueConnectorIdentifier connector;\r
-       EBlueConnectorSignalDirection   signaldirection;\r
-       EBlueConnectorProperty propType;\r
-       VARIANT Value;\r
-}EBlueConnectorPropertySetting;\r
-\r
-\r
-typedef struct _blue_card_property\r
-{\r
-       EBlueVideoChannel       video_channel;\r
-       EBlueCardProperty       prop;\r
-       VARIANT  value;\r
-}blue_card_property;\r
-\r
-\r
-extern "C" {\r
-BLUE_CSDK_API unsigned int blue_device_count();\r
-BLUE_CSDK_API void * blue_attach_to_device(int device_id);\r
-BLUE_CSDK_API BERR blue_detach_from_device(void ** device_handle);\r
-\r
-//\r
-//BLUE_CSDK_API BERR blue_set_video_engine(            void * device_handle,\r
-//                                                                                     EBlueVideoChannel video_channel,\r
-//                                                                                     EEngineMode * video_engine,\r
-//                                                                                     BLUE_UINT32 video_engine_flag);\r
-BLUE_CSDK_API BERR blue_video_dma(                     void * device_handle,\r
-                                                                                       EBLUEDMA_DIRECTION      dma_direction,\r
-                                                                                       void * pFrameBuffer,\r
-                                                                                       BLUE_UINT32 FrameSize,\r
-                                                                                       BLUE_UINT32 BufferId,\r
-                                                                                       BLUE_UINT32 * dma_bytes_transferred,\r
-                                                                                       BLUE_UINT32 CardFrameOffset,\r
-                                                                                       OVERLAPPED      * pAsync\r
-                                                                       );\r
-\r
-\r
-/*\r
-       functions used to set the card property . This includes the video property \r
-       and the video connection/routing property.\r
-*/\r
-BLUE_CSDK_API BERR     blue_set_video_property(                void * device_handle,\r
-                                                                                       BLUE_UINT32 prop_count,\r
-                                                                                       blue_card_property * card_prop);\r
-\r
-BLUE_CSDK_API BERR     blue_get_video_property(                void * device_handle,\r
-                                                                                       BLUE_UINT32 prop_count,\r
-                                                                                       blue_card_property * card_prop);\r
-\r
-BLUE_CSDK_API BERR     blue_get_connector_property(void * device_handle,\r
-                                                                       BLUE_UINT32 VideoChannel,\r
-                                                                       BLUE_UINT32 *settingsCount,     // In: element count of settings array\r
-                                                                                                                               // Out: if settings is non-NULL, number of valid elements\r
-                                                                                                                               // Out: if settings is NULL, number of elements required\r
-                                                                       EBlueConnectorPropertySetting *settings // Caller allocates/frees memory\r
-                                                                       );\r
-\r
-BLUE_CSDK_API BERR     blue_set_connector_property(\r
-                                                                                       void * device_handle,\r
-                                                                                       BLUE_UINT32 settingsCount,\r
-                                                                                       EBlueConnectorPropertySetting *settings\r
-                                                                                       );\r
-\r
-//BLUE_CSDK_API BERR blue_wait_video_interrupt(void * device_handle,\r
-//                                                                                     EBlueVideoChannel  video_channel,\r
-//                                                                                     EUpdateMethod upd_fmt,\r
-//                                                                                     BLUE_UINT32 field_wait_count,\r
-//                                                                                     BLUE_UINT32 *field_count\r
-//                                                                                     );\r
-}
\ No newline at end of file
diff --git a/dependencies64/bluefish/include/BlueDriver_p.h b/dependencies64/bluefish/include/BlueDriver_p.h
deleted file mode 100644 (file)
index 4d0bed6..0000000
+++ /dev/null
@@ -1,1545 +0,0 @@
-/*\r
- $Id: BlueDriver_p.h,v 1.62.2.16 2011/10/26 05:33:18 tim Exp $\r
-*/\r
-#pragma once \r
-#define _BLUEDRIVER_P_H__\r
-#define BLUE_UINT32    unsigned int \r
-#define BLUE_INT32     int \r
-#define BLUE_UINT8     unsigned char\r
-#define BLUE_INT8      char\r
-#define BLUE_UINT16    unsigned short\r
-#define BLUE_INT16     short\r
-#pragma once\r
-#ifdef BLUE_LINUX_CODE\r
-#define BLUE_UINT64 unsigned long long \r
-//#include <asm/types.h>\r
-#else\r
-#define BLUE_UINT64    unsigned __int64\r
-#endif \r
-\r
-//#define ORAC_FILMPOST_FIRMWARE_PRODUCTID     (0x1)\r
-//#define ORAC_BROADCAST_FIRMWARE_PRODUCTID    (0x2)\r
-//#define ORAC_ASI_FIRMWARE_PRODUCTID                  (0x3)\r
-//#define ORAC_4SDIINPUT_FIRMWARE_PRODUCTID    (0x4)\r
-//#define ORAC_4SDIOUTPUT_FIRMWARE_PRODUCTID   (0x5)\r
-\r
-\r
-\r
-/**\r
- * This contains the enumerators that can be used to set the cards \n\r
- * video output and also to determine the video mode of the incoming \n\r
- * video signal.\r
- */ \r
-typedef enum _EVideoMode\r
-{\r
-       VID_FMT_PAL=0,\r
-       VID_FMT_NTSC=1,\r
-       VID_FMT_576I_5000=0,    /**< 720  x 576  50       Interlaced */\r
-       VID_FMT_486I_5994=1,    /**< 720  x 486  60/1.001 Interlaced */\r
-       VID_FMT_720P_5994,              /**< 1280 x 720  60/1.001 Progressive */\r
-       VID_FMT_720P_6000,              /**< 1280 x 720  60       Progressive */\r
-       VID_FMT_1080PSF_2397,   /**< 1920 x 1080 24/1.001 Segment Frame */\r
-       VID_FMT_1080PSF_2400,   /**< 1920 x 1080 24       Segment Frame */\r
-       VID_FMT_1080P_2397,             /**< 1920 x 1080 24/1.001 Progressive */\r
-       VID_FMT_1080P_2400,             /**< 1920 x 1080 24       Progressive */\r
-       VID_FMT_1080I_5000,             /**< 1920 x 1080 50       Interlaced */\r
-       VID_FMT_1080I_5994,             /**< 1920 x 1080 60/1.001 Interlaced */\r
-       VID_FMT_1080I_6000,             /**< 1920 x 1080 60       Interlaced */\r
-       VID_FMT_1080P_2500,             /**< 1920 x 1080 25       Progressive */\r
-       VID_FMT_1080P_2997,             /**< 1920 x 1080 30/1.001 Progressive */\r
-       VID_FMT_1080P_3000,             /**< 1920 x 1080 30       Progressive */\r
-       VID_FMT_HSDL_1498,              /**< 2048 x 1556 15/1.0   Segment Frame */\r
-       VID_FMT_HSDL_1500,              /**< 2048 x 1556 15                     Segment Frame */\r
-       VID_FMT_720P_5000,              /**< 1280 x 720  50                     Progressive */\r
-       VID_FMT_720P_2398,              /**< 1280 x 720  24/1.001       Progressive */\r
-       VID_FMT_720P_2400,              /**< 1280 x 720  24     Progressive */\r
-       VID_FMT_2048_1080PSF_2397=19,   /**< 2048 x 1080 24/1.001       Segment Frame */\r
-       VID_FMT_2048_1080PSF_2400=20,   /**< 2048 x 1080 24     Segment Frame */\r
-       VID_FMT_2048_1080P_2397=21,     /**< 2048 x 1080 24/1.001       progressive */ \r
-       VID_FMT_2048_1080P_2400=22,     /**< 2048 x 1080 24     progressive  */\r
-       VID_FMT_1080PSF_2500=23,\r
-       VID_FMT_1080PSF_2997=24,\r
-       VID_FMT_1080PSF_3000=25,\r
-       VID_FMT_1080P_5000=26,\r
-       VID_FMT_1080P_5994=27,\r
-       VID_FMT_1080P_6000=28,\r
-       VID_FMT_720P_2500=29,\r
-       VID_FMT_720P_2997=30,\r
-       VID_FMT_720P_3000=31,\r
-       VID_FMT_DVB_ASI=32,\r
-       VID_FMT_2048_1080PSF_2500=33,\r
-       VID_FMT_2048_1080PSF_2997=34,\r
-       VID_FMT_2048_1080PSF_3000=35,\r
-       VID_FMT_2048_1080P_2500=36,\r
-       VID_FMT_2048_1080P_2997=37,\r
-       VID_FMT_2048_1080P_3000=38,\r
-       VID_FMT_2048_1080P_5000=39,\r
-       VID_FMT_2048_1080P_5994=40,\r
-       VID_FMT_2048_1080P_6000=41,\r
-       VID_FMT_INVALID=42\r
-} EVideoMode;\r
-\r
-/**\r
-@brief Use these enumerators to set the pixel format \r
-               that should be used by the video input and output \r
-               framestores.\r
-*/\r
-typedef enum _EMemoryFormat\r
-{\r
-       MEM_FMT_ARGB=0, /**< ARGB 4:4:4:4 */\r
-       MEM_FMT_BV10=1,\r
-       MEM_FMT_BV8=2,\r
-       MEM_FMT_YUVS=MEM_FMT_BV8,\r
-       MEM_FMT_V210=3, // Iridium HD (BAG1)\r
-       MEM_FMT_RGBA=4,\r
-       MEM_FMT_CINEON_LITTLE_ENDIAN=5,\r
-       MEM_FMT_ARGB_PC=6,\r
-       MEM_FMT_BGRA=MEM_FMT_ARGB_PC,\r
-       MEM_FMT_CINEON=7,\r
-       MEM_FMT_2VUY=8,\r
-       MEM_FMT_BGR=9,\r
-       MEM_FMT_BGR_16_16_16=10,\r
-       MEM_FMT_BGRA_16_16_16_16=11,\r
-       MEM_FMT_VUYA_4444=12,\r
-       MEM_FMT_V216=13,\r
-       MEM_FMT_Y210=14,\r
-       MEM_FMT_Y216=15,\r
-       MEM_FMT_INVALID=16\r
-} EMemoryFormat;\r
-\r
-/**\r
-@brief Used to control the video update type, \r
-               whether the card should capture/playback a\r
-               video frame or field.\r
-*/\r
-typedef enum _EUpdateMethod\r
-{\r
-       UPD_FMT_FIELD=0,\r
-       UPD_FMT_FRAME,\r
-       UPD_FMT_FRAME_DISPLAY_FIELD1,\r
-       UPD_FMT_FRAME_DISPLAY_FIELD2,\r
-       UPD_FMT_INVALID,\r
-       UPD_FMT_FLAG_RETURN_CURRENT_UNIQUEID=0x80000000,/**< if this flag is used on epoch cards, function would \r
-                                                                                                       return the unique id of the current frame as the return value.*/\r
-} EUpdateMethod;\r
-\r
-typedef enum _EResoFormat\r
-{\r
-       RES_FMT_NORMAL=0,\r
-       RES_FMT_HALF,\r
-       RES_FMT_INVALID\r
-} EResoFormat;\r
-\r
-typedef enum _ECardType\r
-{\r
-       CRD_BLUEDEEP_LT=0,              // D64 Lite\r
-       CRD_BLUEDEEP_SD,                // Iridium SD\r
-       CRD_BLUEDEEP_AV,                // Iridium AV\r
-       CRD_BLUEDEEP_IO,                // D64 Full\r
-       CRD_BLUEWILD_AV,                // D64 AV\r
-       CRD_IRIDIUM_HD,                 // * Iridium HD\r
-       CRD_BLUEWILD_RT,                // D64 RT\r
-       CRD_BLUEWILD_HD,                // * BadAss G2\r
-       CRD_REDDEVIL,                   // Iridium Full\r
-       CRD_BLUEDEEP_HD,                // * BadAss G2 variant, proposed, reserved\r
-       CRD_BLUE_EPOCH_2K = CRD_BLUEDEEP_HD,\r
-       CRD_BLUE_EPOCH_2K_HORIZON=CRD_BLUE_EPOCH_2K,\r
-       CRD_BLUEDEEP_HDS,               // * BadAss G2 variant, proposed, reserved\r
-       CRD_BLUE_ENVY,                  // Mini Din \r
-       CRD_BLUE_PRIDE,                 //Mini Din Output \r
-       CRD_BLUE_GREED,\r
-       CRD_BLUE_INGEST,\r
-       CRD_BLUE_SD_DUALLINK,\r
-       CRD_BLUE_CATALYST,\r
-       CRD_BLUE_SD_DUALLINK_PRO,\r
-       CRD_BLUE_SD_INGEST_PRO,\r
-       CRD_BLUE_SD_DEEPBLUE_LITE_PRO,\r
-       CRD_BLUE_SD_SINGLELINK_PRO,\r
-       CRD_BLUE_SD_IRIDIUM_AV_PRO,\r
-       CRD_BLUE_SD_FIDELITY,\r
-       CRD_BLUE_SD_FOCUS,\r
-       CRD_BLUE_SD_PRIME,\r
-       CRD_BLUE_EPOCH_2K_CORE,\r
-       CRD_BLUE_EPOCH_2K_ULTRA,\r
-       CRD_BLUE_EPOCH_HORIZON,\r
-       CRD_BLUE_EPOCH_CORE,\r
-       CRD_BLUE_EPOCH_ULTRA,\r
-       CRD_BLUE_CREATE_HD,\r
-       CRD_BLUE_CREATE_2K,\r
-       CRD_BLUE_CREATE_2K_ULTRA,\r
-       CRD_BLUE_CREATE_3D = CRD_BLUE_CREATE_2K,\r
-       CRD_BLUE_CREATE_3D_ULTRA = CRD_BLUE_CREATE_2K_ULTRA,\r
-       CRD_BLUE_SUPER_NOVA,\r
-       CRD_INVALID\r
-} ECardType;\r
-\r
-\r
-typedef enum _EHDCardSubType\r
-{      \r
-       CRD_HD_FURY=1,\r
-       CRD_HD_VENGENCE=2,\r
-       CRD_HD_IRIDIUM_XP=3,\r
-       CRD_HD_IRIDIUM = 4,\r
-       CRD_HD_LUST=5,\r
-       CRD_HD_INVALID\r
-}EHDCardSubType;\r
-\r
-enum EEpochFirmwareProductID\r
-{\r
-       ORAC_FILMPOST_FIRMWARE_PRODUCTID=(0x1),                         //Epoch/Create, standard firmware\r
-       ORAC_BROADCAST_FIRMWARE_PRODUCTID=(0x2),                        //Epoch\r
-       ORAC_ASI_FIRMWARE_PRODUCTID=(0x3),                                      //Epoch\r
-       ORAC_4SDIINPUT_FIRMWARE_PRODUCTID=(0x4),                        //SuperNova\r
-       ORAC_4SDIOUTPUT_FIRMWARE_PRODUCTID=(0x5),                       //SuperNova\r
-       ORAC_2SDIINPUT_2SDIOUTPUT_FIRMWARE_PRODUCTID=(0x6),     //SuperNova\r
-};\r
-\r
-/**< @brief Use this enumerator to select the audio channels that should be captured  or played back.\r
-*/\r
-typedef enum _BlueAudioChannelDesc\r
-{\r
-       MONO_FLAG               = 0xC0000000,\r
-       MONO_CHANNEL_1  = 0x00000001,\r
-       MONO_CHANNEL_2  = 0x00000002,\r
-       MONO_CHANNEL_3  = 0x00000004,\r
-       MONO_CHANNEL_4  = 0x00000008,\r
-       MONO_CHANNEL_5  = 0x00000010,\r
-       MONO_CHANNEL_6  = 0x00000020,\r
-       MONO_CHANNEL_7  = 0x00000040,\r
-       MONO_CHANNEL_8  = 0x00000080,\r
-       MONO_CHANNEL_9  = 0x00000100,// to be used by analog audio output channels \r
-       MONO_CHANNEL_10 = 0x00000200,// to be used by analog audio output channels \r
-       MONO_CHANNEL_11 = 0x00000400,//actual channel 9\r
-       MONO_CHANNEL_12 = 0x00000800,//actual channel 10\r
-       MONO_CHANNEL_13 = 0x00001000,//actual channel 11\r
-       MONO_CHANNEL_14 = 0x00002000,//actual channel 12\r
-       MONO_CHANNEL_15 = 0x00004000,//actual channel 13\r
-       MONO_CHANNEL_16 = 0x00008000,//actual channel 14\r
-       MONO_CHANNEL_17 = 0x00010000,//actual channel 15\r
-       MONO_CHANNEL_18 = 0x00020000 //actual channel 16\r
-}BlueAudioChannelDesc;\r
-\r
-\r
-//----------------------------------------------------------------------------\r
-/**<\r
-Use this enumeraotor to set the type of pcm audio data.\r
-*/\r
-typedef enum\r
-{\r
-       AUDIO_CHANNEL_LOOPING_OFF               = 0x00000000, /**< deprecated not used any more */\r
-       AUDIO_CHANNEL_LOOPING                   = 0x00000001,/**< deprecated not used any more */\r
-       AUDIO_CHANNEL_LITTLEENDIAN              = 0x00000000, /**< if the audio data is little endian this flag must be set*/\r
-       AUDIO_CHANNEL_BIGENDIAN                 = 0x00000002,/**< if the audio data is big  endian this flag must be set*/\r
-       AUDIO_CHANNEL_OFFSET_IN_BYTES   = 0x00000004,/**< deprecated not used any more */\r
-       AUDIO_CHANNEL_16BIT                             = 0x00000008, /**< if the audio channel bit depth is 16 bits this flag must be set*/\r
-       AUDIO_CHANNEL_BLIP_PENDING              = 0x00000010,/**< deprecated not used any more */\r
-       AUDIO_CHANNEL_BLIP_COMPLETE             = 0x00000020,/**< deprecated not used any more */\r
-       AUDIO_CHANNEL_SELECT_CHANNEL    = 0x00000040,/**< deprecated not used any more */\r
-       AUDIO_CHANNEL_24BIT                             = 0x00000080/**< if the audio channel bit depth is 24 bits this flag must be set*/\r
-} EAudioFlags;\r
-\r
-/**\r
-@desc Used to select Audio input source on new generation SD cards \r
-@remarks\r
-This enumerator works only when used with ReadAudioSample function.\r
-*/\r
-typedef enum\r
-{\r
-       BLUE_AUDIO_AES=0, /**< Used to select All 8 channels of Digital Audio using AES/AES3id  connector*/\r
-       BLUE_AUDIO_ANALOG=1,/**< Used to select Analog audio*/\r
-       BLUE_AUDIO_SDIA=2, /**< Used to select Emb audio from SDI A */\r
-       BLUE_AUDIO_EMBEDDED=BLUE_AUDIO_SDIA,\r
-       BLUE_AUDIO_SDIB=3, /**< Used to select Emb audio from SDI B */\r
-       BLUE_AUDIO_AES_PAIR0=4, /**< Used to select stereo pair 0 as audio input source. This is only supported on SD Greed Derivative cards.*/\r
-       BLUE_AUDIO_AES_PAIR1=5,/**< Used to select stereo pair 1 as audio input source. This is only supported on SD Greed Derivative cards.*/\r
-       BLUE_AUDIO_AES_PAIR2=6,/**< Used to select stereo pair 2 as audio input source. This is only supported on SD Greed Derivative cards.*/\r
-       BLUE_AUDIO_AES_PAIR3=7,/**< Used to select stereo pair 3 as audio input source. This is only supported on SD Greed Derivative cards.*/\r
-       BLUE_AUDIO_SDIC=8, /**< Used to select Emb audio from SDI C */\r
-       BLUE_AUDIO_SDID=9, /**< Used to select Emb audio from SDI D */\r
-       BLUE_AUDIO_INVALID=10\r
-} Blue_Audio_Connector_Type;\r
-\r
-typedef enum _EAudioRate\r
-{\r
-       AUDIO_SAMPLE_RATE_48K=48000,\r
-       AUDIO_SAMPLE_RATE_96K=96000,\r
-       AUDIO_SAMPLE_RATE_UNKNOWN=-1\r
-} EAudioRate;\r
-\r
-/**<\r
-@brief use this enumerator to define the color space of the video signal on the SDI cable\r
-*/\r
-typedef enum _EConnectorSignalColorSpace\r
-{\r
-       RGB_ON_CONNECTOR=0x00400000, /**< Use this enumerator if the colorspace of video data on the SDI cable is RGB <br/>\r
-                                                                               When using dual link capture/playback , user can choose the \r
-                                                                               color space of the data. <br>\r
-                                                                               In single link SDI the color space of the signal is always YUB*/\r
-       YUV_ON_CONNECTOR=0 /**<Use this enumerator if color space of video data on the SDI cable  is RGB.*/\r
-}EConnectorSignalColorSpace;\r
-\r
-\r
-/**<\r
-@brief use this enumerator for controlling the dual link functionality.\r
-*/\r
-typedef enum _EDualLinkSignalFormatType\r
-{\r
-       Signal_FormatType_4224=0, /**< sets the card to work in  4:2:2:4 mode*/\r
-       Signal_FormatType_4444=1,/**< sets the card to work in  4:4:4 10 bit dual link mode*/\r
-       Signal_FormatType_444_10BitSDI=Signal_FormatType_4444,/**< sets the card to work in  10 bit 4:4:4 dual link mode*/\r
-       Signal_FormatType_444_12BitSDI=0x4,/**< sets the card to work in  4:4:4 12 bit dual link mode*/\r
-       Signal_FormatType_Independent_422 = 0x2,\r
-       Signal_FormatType_Key_Key=0x8000/**< not used currently on epoch cards */\r
-       \r
-}EDualLinkSignalFormatType;\r
-\r
-\r
-enum ECardOperatingMode\r
-{\r
-       CardOperatingMode_SingleLink=0x0,\r
-       CardOperatingMode_Independent_422=CardOperatingMode_SingleLink,\r
-       CardOperatingMode_DualLink=0x1, \r
-       CardOperatingMode_StereoScopic_422=0x3, \r
-       CardOperatingMode_Dependent_422=CardOperatingMode_StereoScopic_422,/**< not used currently on epoch cards */\r
-};\r
-\r
-\r
-typedef enum _EPreDefinedColorSpaceMatrix\r
-{\r
-       UNITY_MATRIX=0,\r
-       MATRIX_709_CGR=1,\r
-       MATRIX_RGB_TO_YUV_709_CGR=MATRIX_709_CGR,\r
-       MATRIX_709=2,\r
-       MATRIX_RGB_TO_YUV_709=MATRIX_709,\r
-       RGB_FULL_RGB_SMPTE=3,\r
-       MATRIX_601_CGR=4,\r
-       MATRIX_RGB_TO_YUV_601_CGR=MATRIX_601_CGR,\r
-       MATRIX_601=5,\r
-       MATRIX_RGB_TO_YUV_601=MATRIX_601,\r
-       MATRIX_SMPTE_274_CGR=6,\r
-       MATRIX_SMPTE_274=7,\r
-       MATRIX_VUYA=8,\r
-       UNITY_MATRIX_INPUT=9,\r
-       MATRIX_YUV_TO_RGB_709_CGR=10,\r
-       MATRIX_YUV_TO_RGB_709=11,\r
-       RGB_SMPTE_RGB_FULL=12,\r
-       MATRIX_YUV_TO_RGB_601_CGR=13,\r
-       MATRIX_YUV_TO_RGB_601=14,\r
-       MATRIX_USER_DEFINED=15,\r
-}EPreDefinedColorSpaceMatrix;\r
-\r
-#ifndef BLUE_LINUX_CODE\r
-/**< \r
-@brief this enumerator contains the status of the driver video/hanc fifo \r
-*/\r
-typedef enum\r
-{\r
-       BLUE_FIFO_CLOSED=0, /**< Fifo has not been initialized*/\r
-       BLUE_FIFO_STARTING=1,/**< Fifo is starting */\r
-       BLUE_FIFO_RUNNING=2,/**< Fifo is running */\r
-       BLUE_FIFO_STOPPING=3,/**< Fifo is in the process of stopping */\r
-       BLUE_FIFO_PASSIVE=5,/**< Fifo is currently stopped or not active*/\r
-}BlueVideoFifoStatus;\r
-#endif\r
-\r
-/**<\r
-@brief use this enumerator to define the data range of the RGB video frame data.\r
-*/\r
-typedef enum _ERGBDataRange\r
-{\r
-       CGR_RANGE=0, /**<       In this mode RGB data expected by the user (capture) or provided by the user(playback) is \r
-                                               in the range of 0-255(8 bit) or 0-1023(10 bit0).<br/>\r
-                                               driver uses this information to choose the appropriate YUV conversion matrices.*/\r
-       SMPTE_RANGE=1  /**<     In this mode RGB data expected by the user (capture) or provided by the user(playback) is \r
-                                               in the range of 16-235(8 bit) or 64-940(10 bit0).<br/>\r
-                                               driver uses this information to choose the appropriate YUV conversion matrices.*/\r
-}ERGBDataRange;\r
-\r
-typedef enum _EHD_XCONNECTOR_MODE\r
-{\r
-       SD_SDI=1,\r
-       HD_SDI=2\r
-}EHD_XCONNECTOR_MODE;\r
-\r
-/**< @brief  this enumerator can be used to set the image orienatation of the frame.                                                   \r
-*/\r
-typedef enum _EImageOrientation\r
-{\r
-       ImageOrientation_Normal=0,      /**< in this configuration , frame is top to bottom and left to right */\r
-       ImageOrientation_VerticalFlip=1, /**< in this configuration frame is bottom to top and left to right*/\r
-       ImageOrientation_Invalid=2,     \r
-}EImageOrientation;\r
-\r
-/**< @brief this enumerator defines the reference signal source that can be used with bluefish cards\r
-*/\r
-typedef enum _EBlueGenlockSource\r
-{\r
-       BlueGenlockBNC=0, /**< Genlock is used as reference signal source */\r
-       BlueSDIBNC=0x10000, /**< SDI input B  is used as reference signal source */\r
-       BlueSDI_B_BNC=BlueSDIBNC,\r
-       BlueSDI_A_BNC=0x20000,/**< SDI input A  is used as reference signal source */\r
-       BlueAnalog_BNC=0x40000, /**< Analog input is used as reference signal source */\r
-       BlueSoftware=0x80000,\r
-}EBlueGenlockSource;\r
-\r
-\r
-typedef enum _EBlueVideoChannel\r
-{\r
-       BLUE_VIDEOCHANNEL_A=0,\r
-       BLUE_VIDEO_OUTPUT_CHANNEL_A=BLUE_VIDEOCHANNEL_A,\r
-       \r
-       BLUE_VIDEOCHANNEL_B=1,\r
-       BLUE_VIDEO_OUTPUT_CHANNEL_B=BLUE_VIDEOCHANNEL_B,\r
-       \r
-       BLUE_VIDEOCHANNEL_C=2,\r
-       BLUE_VIDEO_INPUT_CHANNEL_A=BLUE_VIDEOCHANNEL_C,\r
-\r
-       BLUE_VIDEOCHANNEL_D=3,\r
-       BLUE_VIDEO_INPUT_CHANNEL_B=BLUE_VIDEOCHANNEL_D,\r
-\r
-       BLUE_VIDEOCHANNEL_E=4,\r
-       BLUE_VIDEO_INPUT_CHANNEL_C=BLUE_VIDEOCHANNEL_E,\r
-\r
-       BLUE_VIDEOCHANNEL_F=5,\r
-       BLUE_VIDEO_INPUT_CHANNEL_D=BLUE_VIDEOCHANNEL_F,\r
-\r
-       BLUE_VIDEOCHANNEL_G=6,\r
-       BLUE_VIDEO_OUTPUT_CHANNEL_C=BLUE_VIDEOCHANNEL_G,\r
-\r
-       BLUE_VIDEOCHANNEL_H=7,\r
-       BLUE_VIDEO_OUTPUT_CHANNEL_D=BLUE_VIDEOCHANNEL_H,\r
-       \r
-       BLUE_OUTPUT_MEM_MODULE_A=BLUE_VIDEO_OUTPUT_CHANNEL_A,\r
-       BLUE_OUTPUT_MEM_MODULE_B=BLUE_VIDEO_OUTPUT_CHANNEL_B,\r
-       BLUE_INPUT_MEM_MODULE_A=BLUE_VIDEO_INPUT_CHANNEL_A,\r
-       BLUE_INPUT_MEM_MODULE_B=BLUE_VIDEO_INPUT_CHANNEL_B,\r
-       //BLUE_JETSTREAM_SCALER_MODULE_0=0x10,\r
-       //BLUE_JETSTREAM_SCALER_MODULE_1=0x11,\r
-       //BLUE_JETSTREAM_SCALER_MODULE_2=0x12,\r
-       //BLUE_JETSTREAM_SCALER_MODULE_3=0x13,\r
-\r
-       BLUE_VIDEOCHANNEL_INVALID=30\r
-}EBlueVideoChannel;\r
-\r
-typedef enum _EBlueVideoRouting\r
-{\r
-       BLUE_VIDEO_LINK_INVALID=0,\r
-       BLUE_SDI_A_LINK1=4,\r
-       BLUE_SDI_A_LINK2=5,\r
-       BLUE_SDI_B_LINK1=6,\r
-       BLUE_SDI_B_LINK2=7,\r
-       BLUE_ANALOG_LINK1=8,\r
-       BLUE_ANALOG_LINK2=9,\r
-       BLUE_SDI_A_SINGLE_LINK=BLUE_SDI_A_LINK1,\r
-       BLUE_SDI_B_SINGLE_LINK=BLUE_SDI_B_LINK1,\r
-       BLUE_ANALOG_SINGLE_LINK=BLUE_ANALOG_LINK1\r
-\r
-}EBlueVideoRouting;\r
-\r
-typedef enum\r
-{\r
-       BLUE_FIFO_NULL_ATTRIBUTE=0x0,\r
-       BLUE_FIFO_ECHOPORT_ENABLED=0x1,\r
-       BLUE_FIFO_STEPMODE = 0x2,\r
-       BLUE_FIFO_LOOPMODE = 0x4\r
-}BlueVideoFifo_Attributes;\r
-\r
-typedef enum _BlueAudioOutputDest\r
-{\r
-       Blue_AnalogAudio_Output=0x0,\r
-       Blue_AES_Output=0x80000000,\r
-       Blue_Emb_Output=0x40000000,\r
-}BlueAudioOutputDest;\r
-\r
-\r
-/**<@brief this enumerator is not used need to be removed*/\r
-typedef enum _BlueAudioInputSource\r
-{\r
-       Blue_AES=0x10,\r
-       Blue_AnalogAudio=0x20,\r
-       Blue_SDIA_Embed=0x40,\r
-       Blue_SDIB_Embed=0x80,\r
-}BlueAudioInputSource;\r
-\r
-typedef enum _EBlueConnectorIdentifier\r
-{\r
-       BLUE_CONNECTOR_INVALID = -1,\r
-       \r
-       // BNC connectors in order from top to bottom of shield\r
-       BLUE_CONNECTOR_BNC_A = 0,    // BNC closest to top of shield\r
-       BLUE_CONNECTOR_BNC_B,\r
-       BLUE_CONNECTOR_BNC_C,\r
-       BLUE_CONNECTOR_BNC_D,\r
-       BLUE_CONNECTOR_BNC_E,\r
-       BLUE_CONNECTOR_BNC_F,\r
-       BLUE_CONNECTOR_GENLOCK,\r
-       \r
-       BLUE_CONNECTOR_ANALOG_VIDEO_1 = 100,\r
-       BLUE_CONNECTOR_ANALOG_VIDEO_2,\r
-       BLUE_CONNECTOR_ANALOG_VIDEO_3,\r
-       BLUE_CONNECTOR_ANALOG_VIDEO_4,\r
-       BLUE_CONNECTOR_ANALOG_VIDEO_5,\r
-       BLUE_CONNECTOR_ANALOG_VIDEO_6,\r
-\r
-       BLUE_CONNECTOR_DVID_1 = 200,\r
-       BLUE_CONNECTOR_SDI_OUTPUT_A= BLUE_CONNECTOR_DVID_1,\r
-       BLUE_CONNECTOR_DVID_2,\r
-       BLUE_CONNECTOR_SDI_OUTPUT_B= BLUE_CONNECTOR_DVID_2,\r
-       BLUE_CONNECTOR_DVID_3,\r
-       BLUE_CONNECTOR_SDI_INPUT_A= BLUE_CONNECTOR_DVID_3,\r
-       BLUE_CONNECTOR_DVID_4,\r
-       BLUE_CONNECTOR_SDI_INPUT_B= BLUE_CONNECTOR_DVID_4,\r
-       BLUE_CONNECTOR_DVID_5,\r
-       BLUE_CONNECTOR_SDI_OUTPUT_C,\r
-       BLUE_CONNECTOR_SDI_OUTPUT_D,\r
-\r
-       BLUE_CONNECTOR_AES = 300,\r
-       BLUE_CONNECTOR_ANALOG_AUDIO_1,\r
-       BLUE_CONNECTOR_ANALOG_AUDIO_2,\r
-\r
-       BLUE_CONNECTOR_DVID_6,\r
-       BLUE_CONNECTOR_SDI_INPUT_C= BLUE_CONNECTOR_DVID_6,\r
-       BLUE_CONNECTOR_DVID_7,\r
-       BLUE_CONNECTOR_SDI_INPUT_D= BLUE_CONNECTOR_DVID_7,\r
-\r
-       //BLUE_CONNECTOR_RESOURCE_BLOCK=0x400,\r
-       //BLUE_CONNECTOR_JETSTREAM_SCALER_0=(BLUE_CONNECTOR_RESOURCE_BLOCK|BLUE_JETSTREAM_SCALER_MODULE_0),\r
-       //BLUE_CONNECTOR_JETSTREAM_SCALER_1=(BLUE_CONNECTOR_RESOURCE_BLOCK|BLUE_JETSTREAM_SCALER_MODULE_1),\r
-       //BLUE_CONNECTOR_JETSTREAM_SCALER_2=(BLUE_CONNECTOR_RESOURCE_BLOCK|BLUE_JETSTREAM_SCALER_MODULE_2),\r
-       //BLUE_CONNECTOR_JETSTREAM_SCALER_3=(BLUE_CONNECTOR_RESOURCE_BLOCK|BLUE_JETSTREAM_SCALER_MODULE_3),\r
-\r
-       //BLUE_CONNECTOR_OUTPUT_MEM_MODULE_A=(BLUE_CONNECTOR_RESOURCE_BLOCK|BLUE_OUTPUT_MEM_MODULE_A),\r
-       //BLUE_CONNECTOR_OUTPUT_MEM_MODULE_B=(BLUE_CONNECTOR_RESOURCE_BLOCK|BLUE_OUTPUT_MEM_MODULE_B),\r
-       //BLUE_CONNECTOR_INPUT_MEM_MODULE_A=(BLUE_CONNECTOR_RESOURCE_BLOCK|BLUE_INPUT_MEM_MODULE_A),\r
-       //BLUE_CONNECTOR_INPUT_MEM_MODULE_B=(BLUE_CONNECTOR_RESOURCE_BLOCK|BLUE_INPUT_MEM_MODULE_B),\r
-       //\r
-}EBlueConnectorIdentifier;\r
-\r
-typedef enum _EBlueConnectorSignalDirection\r
-{\r
-       BLUE_CONNECTOR_SIGNAL_INVALID=-1,\r
-       BLUE_CONNECTOR_SIGNAL_INPUT=0,\r
-       BLUE_CONNECTOR_SIGNAL_OUTPUT=1,\r
-}EBlueConnectorSignalDirection;\r
-\r
-typedef enum _EBlueConnectorProperty\r
-{\r
-       BLUE_INVALID_CONNECTOR_PROPERTY = -1,\r
-\r
-       //signal property\r
-       BLUE_CONNECTOR_PROP_INPUT_SIGNAL=0,\r
-       BLUE_CONNECTOR_PROP_OUTPUT_SIGNAL=1,\r
-\r
-       // Video output\r
-       BLUE_CONNECTOR_PROP_SDI = 0,\r
-       BLUE_CONNECTOR_PROP_YUV_Y,\r
-       BLUE_CONNECTOR_PROP_YUV_U,\r
-       BLUE_CONNECTOR_PROP_YUV_V,\r
-       BLUE_CONNECTOR_PROP_RGB_R,\r
-       BLUE_CONNECTOR_PROP_RGB_G,\r
-       BLUE_CONNECTOR_PROP_RGB_B,\r
-       BLUE_CONNECTOR_PROP_CVBS,\r
-       BLUE_CONNECTOR_PROP_SVIDEO_Y,\r
-       BLUE_CONNECTOR_PROP_SVIDEO_C,\r
-       \r
-       // Audio output\r
-       BLUE_CONNECTOR_PROP_AUDIO_AES = 0x2000,\r
-       BLUE_CONNECTOR_PROP_AUDIO_EMBEDDED,\r
-       BLUE_CONNECTOR_PROP_AUDIO_ANALOG,\r
-\r
-       \r
-       BLUE_CONNECTOR_PROP_SINGLE_LINK=0x3000,\r
-       BLUE_CONNECTOR_PROP_DUALLINK_LINK_1,\r
-       BLUE_CONNECTOR_PROP_DUALLINK_LINK_2,\r
-       BLUE_CONNECTOR_PROP_DUALLINK_LINK,\r
-\r
-       BLUE_CONNECTOR_PROP_STEREO_MODE_SIDE_BY_SIDE,\r
-       BLUE_CONNECTOR_PROP_STEREO_MODE_TOP_DOWN,\r
-       BLUE_CONNECTOR_PROP_STEREO_MODE_LINE_BY_LINE,\r
-\r
-}EBlueConnectorProperty;\r
-\r
-/*\r
-typedef enum _BLUE_AUDIOINPUT_SOURCE\r
-{\r
-       BLUE_AES_AUDIO_INPUT=0x10000,\r
-       BLUE_ANALOG_AUDIO_INPUT=0x20000,\r
-       BLUE_SDIA_AUDIO_INPUT=0x30000,\r
-       BLUE_SDIB_AUDIO_INPUT=0x40000\r
-}BLUE_AUDIOINPUT_SOURCE;\r
-*/\r
-/**\r
-@desc use the values in this enumerator for controlling card property\r
-*/\r
-typedef enum _EBlueCardProperty\r
-{\r
-       VIDEO_DUAL_LINK_OUTPUT=0,/**<  Use this property to enable/diable cards dual link output property*/\r
-       VIDEO_DUAL_LINK_INPUT=1,/**<  Use this property to enable/diable cards dual link input property*/\r
-       VIDEO_DUAL_LINK_OUTPUT_SIGNAL_FORMAT_TYPE=2, /**<Use this property to select signal format type that should be used \r
-                                                       when dual link output is enabled. Possible values this property can\r
-                                                       accept is defined in the enumerator EDualLinkSignalFormatType\r
-                                                                                               */\r
-       VIDEO_DUAL_LINK_INPUT_SIGNAL_FORMAT_TYPE=3,/**< Use this property to select signal format type that should be used \r
-                                               when dual link input is enabled. Possible values this property can\r
-                                               accept is defined in the enumerator EDualLinkSignalFormatType\r
-                                               */\r
-       VIDEO_OUTPUT_SIGNAL_COLOR_SPACE=4,/**<  Use this property to select color space of the signal when dual link output is set to \r
-                                       use 4:4:4/4:4:4:4 signal format type. Possible values this property can\r
-                                       accept is defined in the enumerator EConnectorSignalColorSpace\r
-                                       */\r
-       VIDEO_INPUT_SIGNAL_COLOR_SPACE=5,/**<   Use this property to select color space of the signal when dual link input is set to \r
-                                       use 4:4:4/4:4:4:4 signal format type. Possible values this property can\r
-                                       accept is defined in the enumerator EConnectorSignalColorSpace\r
-                                       */\r
-       VIDEO_MEMORY_FORMAT=6, /**<Use this property to ser the pixel format that should be used by \r
-                       video output channels.  Possible values this property can\r
-                       accept is defined in the enumerator EMemoryFormat\r
-                       */      \r
-       VIDEO_MODE=7,/**<Use this property to set the video mode that should be used by \r
-                       video output channels.  Possible values this property can\r
-                       accept is defined in the enumerator EVideoMode\r
-                       */      //\r
-       VIDEO_UPDATE_TYPE=8,/**<Use this property to set the framestore update type that should be used by \r
-                       video output channels.  Card can update video framestore at field/frame rate.\r
-                       Possible values this property can accept is defined in the enumerator EUpdateMethod\r
-                       */      \r
-       VIDEO_ENGINE=9,\r
-       VIDEO_IMAGE_ORIENTATION=10,/**< Use this property to set the image orientation of the video output framestore.\r
-                               This property must be set before frame is transferred to on card memory using \r
-                               DMA transfer functions(system_buffer_write_async). It is recommended to use \r
-                               vertical flipped image orientation only on RGB pixel formats.\r
-                               Possible values this property can accept is defined in the enumerator EImageOrientation\r
-                               */\r
-       VIDEO_USER_DEFINED_COLOR_MATRIX=11,\r
-       VIDEO_PREDEFINED_COLOR_MATRIX=12,//EPreDefinedColorSpaceMatrix\r
-       VIDEO_RGB_DATA_RANGE=13,                /**<    Use this property to set the data range of RGB pixel format, user can specify \r
-                                                                                       whether the RGB data is in either SMPTE or CGR range. Based on this information \r
-                                                                                       driver is decide which color matrix should be used.\r
-                                                                                       Possible values this property can accept is defined in the enumerator ERGBDataRange\r
-                                                                                       For SD cards this property will set the input and the output to the specified value.\r
-                                                                                       For Epoch/Create/SuperNova cards this property will only set the output to the specified value.\r
-                                                                                       For setting the input on Epoch/Create/SuperNova cards see EPOCH_VIDEO_INPUT_RGB_DATA_RANGE*/\r
-       VIDEO_KEY_OVER_BLACK=14,/**< this property is deprecated and no longer supported on epoch/create range of cards.*/      \r
-       VIDEO_KEY_OVER_INPUT_SIGNAL=15,\r
-       VIDEO_SET_DOWN_CONVERTER_VIDEO_MODE=16,/**< this property is deprecated and no longer supported on epoch/create range of cards.\r
-                                               EHD_XCONNECTOR_MODE\r
-                                               */\r
-       VIDEO_LETTER_BOX=17,\r
-       VIDEO_PILLOR_BOX_LEFT=18,\r
-       VIDEO_PILLOR_BOX_RIGHT=19,\r
-       VIDEO_PILLOR_BOX_TOP=20,\r
-       VIDEO_PILLOR_BOX_BOTTOM=21,\r
-       VIDEO_SAFE_PICTURE=22,\r
-       VIDEO_SAFE_TITLE=23,\r
-       VIDEO_INPUT_SIGNAL_VIDEO_MODE=24,/**< Use this property to retreive the video input signal information on the \r
-                                       default video input channel used by that  SDK object.\r
-                                       */\r
-       VIDEO_COLOR_MATRIX_MODE=25,\r
-       VIDEO_OUTPUT_MAIN_LUT=26,/**< this property is deprecated and no longer supported on epoch/create range of cards.*/\r
-       VIDEO_OUTPUT_AUX_LUT=27,/**< this property is deprecated and no longer supported on epoch/create range of cards.*/\r
-       VIDEO_LTC=28,           /**< this property is deprecated and no longer supported on epoch/create range of cards. To retreive/ outputting \r
-                               LTC information you can use the HANC decoding and encoding functions.*/\r
-       VIDEO_GPIO=29,  \r
-       VIDEO_PLAYBACK_FIFO_STATUS=30, /**< This property can be used to retreive how many frames are bufferd in the video playback fifo.*/\r
-       RS422_RX_BUFFER_LENGTH=31,\r
-       RS422_RX_BUFFER_FLUSH=32,\r
-       VIDEO_INPUT_UPDATE_TYPE=33,/**< Use this property to set the framestore update type that should be used by \r
-                               video input  channels.  Card can update video framestore at field/frame rate.\r
-                               Possible values this property can accept is defined in the enumerator EUpdateMethod\r
-                                                                       */      \r
-       VIDEO_INPUT_MEMORY_FORMAT=34,/**<Use this property to set the pixel format that should be used by \r
-                                       video input channels when it is capturing a frame from video input source.  \r
-                                       Possible values this property can accept is defined in the enumerator EMemoryFormat\r
-                                                                       */      \r
-       VIDEO_GENLOCK_SIGNAL=35,/**< Use this property to retrieve video signal of the reference source that is used by the card.\r
-                               This can also be used to select the reference signal source that should be used.        \r
-                               */\r
-\r
-       AUDIO_OUTPUT_PROP=36,   /**< this can be used to route PCM audio data onto respective audio output connectors. */\r
-       AUDIO_CHANNEL_ROUTING=AUDIO_OUTPUT_PROP,\r
-       AUDIO_INPUT_PROP=37,/**< Use this property to select audio input source that should be used when doing \r
-                       an audio capture.\r
-                       Possible values this property can accept is defined in the enumerator Blue_Audio_Connector_Type.\r
-                       */\r
-       VIDEO_ENABLE_LETTERBOX=38,\r
-       VIDEO_DUALLINK_OUTPUT_INVERT_KEY_COLOR=39,/**< this property is deprecated and no longer supported on epoch/create range of cards.*/\r
-       VIDEO_DUALLINK_OUTPUT_DEFAULT_KEY_COLOR=40,/**< this property is deprecated and no longer supported on epoch/create range of cards.*/\r
-       VIDEO_BLACKGENERATOR=41, /**< Use this property to control the black generator on the video output channel.\r
-                                                        */\r
-       VIDEO_INPUTFRAMESTORE_IMAGE_ORIENTATION=42,\r
-       VIDEO_INPUT_SOURCE_SELECTION=43, /**<   The video input source that should be used by the SDK default video input channel \r
-                                       can be configured using this property.  \r
-                                       Possible values this property can accept is defined in the enumerator EBlueConnectorIdentifier.\r
-                                       */\r
-       DEFAULT_VIDEO_OUTPUT_CHANNEL=44,\r
-       DEFAULT_VIDEO_INPUT_CHANNEL=45,\r
-       VIDEO_REFERENCE_SIGNAL_TIMING=46,\r
-       EMBEDEDDED_AUDIO_OUTPUT=47, /**< the embedded audio output property can be configured using this property.\r
-                                       Possible values this property can accept is defined in the enumerator EBlueEmbAudioOutput.\r
-                                       */\r
-       EMBEDDED_AUDIO_OUTPUT=EMBEDEDDED_AUDIO_OUTPUT,\r
-       VIDEO_PLAYBACK_FIFO_FREE_STATUS=48, /**< this will return the number of free buffer in the fifo. \r
-                                       If the video engine  is framestore this will give you the number of buffers that the framestore mode \r
-                                       can you use with that video output channel.*/\r
-       VIDEO_IMAGE_WIDTH=49,           /**< only for selective DMA of a smaller image onto video output raster; size in bytes (not pixels) */\r
-       VIDEO_IMAGE_HEIGHT=50,          /**< only for selective DMA of a smaller image onto video output raster; number of lines */\r
-       VIDEO_SCALER_MODE=51,\r
-       AVAIL_AUDIO_INPUT_SAMPLE_COUNT=52,\r
-       VIDEO_PLAYBACK_FIFO_ENGINE_STATUS=53,   /**< this will return the playback fifo status. The values returned by this property \r
-                                               are defined in the enumerator BlueVideoFifoStatus.\r
-                                               */      \r
-       VIDEO_CAPTURE_FIFO_ENGINE_STATUS=54,    /**< this will return the capture  fifo status. \r
-                                               The values returned by this property are defined in the enumerator BlueVideoFifoStatus.\r
-                                               */\r
-       VIDEO_2K_1556_PANSCAN=55,/**< this property is deprecated and no longer supported on epoch/create range of cards.*/\r
-       VIDEO_OUTPUT_ENGINE=56, /**< Use this property to set the video engine of the video output channels.\r
-                               Possible values this property can accept is defined in the enumerator EEngineMode \r
-                               */\r
-       VIDEO_INPUT_ENGINE=57, /**< Use this property to set the video engine of the video input channels.\r
-                               Possible values this property can accept is defined in the enumerator EEngineMode \r
-                               */\r
-       BYPASS_RELAY_A_ENABLE=58, /**< use this property to control the bypass relay on SDI A output.*/\r
-       BYPASS_RELAY_B_ENABLE=59, /**< use this property to control the bypass relay on SDI B output.*/\r
-       VIDEO_PREMULTIPLIER=60,\r
-       VIDEO_PLAYBACK_START_TRIGGER_POINT=61, /**< Using this property you can instruct the driver to start the \r
-                                               video playback fifo on a particular video output field count.\r
-                                               Normally video playback fifo is started on the next video interrupt after \r
-                                               the video_playback_start call.*/\r
-       GENLOCK_TIMING=62,\r
-       VIDEO_IMAGE_PITCH=63,\r
-       VIDEO_IMAGE_OFFSET=64,\r
-       VIDEO_INPUT_IMAGE_WIDTH=65,\r
-       VIDEO_INPUT_IMAGE_HEIGHT=66,\r
-       VIDEO_INPUT_IMAGE_PITCH=67,\r
-       VIDEO_INPUT_IMAGE_OFFSET=68,\r
-       TIMECODE_RP188=69,      /**< this property is deprecated and no longer supported on epoch/create range of cards.*/\r
-       BOARD_TEMPERATURE=70,/**<This property can be used to retreive the Board temperature, core temperature and \r
-                               RPM of the Fan on epoch/create range of cards.<br/>\r
-                               Use the macro's EPOCH_CORE_TEMP ,EPOCH_BOARD_TEMP and EPOCH_FAN_SPEED\r
-                               to retireive the respective values from the property.<br/>                                                      \r
-                                               */      \r
-       MR2_ROUTING=71, /**< Use this property to control the MR2 functionlity on epoch range of cards.\r
-                       Use the following macro with this property.<br/>\r
-                       1) EPOCH_SET_ROUTING --> for setting the source, destination and link type of the routing connection,<br/>\r
-                       2) EPOCH_ROUTING_GET_SRC_DATA --> for getting the routing source.<br/>\r
-                                                       The possible source and destination elements supported by the routing matrix are defined in the \r
-                                                       enumerator EEpochRoutingElements.<br/>\r
-                       */\r
-       SAVEAS_POWERUP_SETTINGS=72,\r
-       VIDEO_CAPTURE_AVAIL_BUFFER_COUNT=73, /**< This property will return the number of captured frame avail in the fifo at present.\r
-                                               If the video engine  is framestore this will give you the number of buffers that the framestore mode \r
-                                               can you use with that video input channel */\r
-       EPOCH_APP_WATCHDOG_TIMER=74,/**< Use this property to control the application  watchdog timer functionality. \r
-                                       Possible values this property can accept is defined in the enumerator enum_blue_app_watchdog_timer_prop.\r
-                               */      \r
-       EPOCH_RESET_VIDEO_INPUT_FIELDCOUNT=75, /**< Use this property to reset the field count on both the \r
-                                               video channels of the card. You can pass the value that \r
-                                               should be used as starting fieldcount after the reset.\r
-                                               This property can be used to keep track  sync between left and right signal \r
-                                               when you are capturing in stereoscopic mode.\r
-                                       */\r
-       EPOCH_RS422_PORT_FLAGS=76,/**<  Use this property to set the master/slave property of the RS422 ports.\r
-                               Possible values this property can accept is defined in the enumerator enum_blue_rs422_port_flags.\r
-                               */\r
-       EPOCH_DVB_ASI_INPUT_TIMEOUT=77, /**< Current DVB ASI input firmware does not support this property in hardware,\r
-                                       this is a future addition.\r
-                                       Use this property to set the timeout  of the DVB ASI input stream. \r
-                                       timeout is specified in  milliseconds.If hardware did not get the required no of                \r
-                                       packets( specified using EPOCH_DVB_ASI_INPUT_LATENCY_PACKET_COUNT)\r
-                                       within the period specified in the timeout, hardware would generate a video input interrupt\r
-                                       and it would be safe to read the dvb asi packet from the card.\r
-                                       */\r
-       EPOCH_DVB_ASI_INPUT_PACKING_FORMAT=78, /**< Use this property to specify the packing method that should be used \r
-                                               when capturing DVB ASI packets.\r
-                                               The possible packing methods are defined in the enumerator enum_blue_dvb_asi_packing_format.*/\r
-       EPOCH_DVB_ASI_INPUT_LATENCY_PACKET_COUNT=79, /**< Use this property to set  how many asi packets should be captured by the card , before it \r
-                                                       notifies the driver of available data using video input interrupt.<br/>\r
-                                                       */\r
-       VIDEO_PLAYBACK_FIFO_CURRENT_FRAME_UNIQUEID=80, /**< This property can be used to query the current unique id of \r
-                                                       the frame that is being displayed currently by the video output channel. This \r
-                                                       property is only usefull in the context of video fifo.<br/>\r
-                                                       You get a uniqueid when you present a frame using video_playback_present function.\r
-                                                       Alternative ways to get this information are <br/>\r
-                                                       1) using blue_wait_video_sync_async , the member current_display_frame_uniqueid contains the same information<br/>\r
-                                                       2) using wait_video_output_sync function on epoch cards, if \r
-                                                       the flag UPD_FMT_FLAG_RETURN_CURRENT_UNIQUEID is appended with \r
-                                                       either UPD_FMT_FRAME or UPD_FMT_FIELD , the return value of \r
-                                                       the function wait_video_output_sync woukd contain the current display\r
-                                                       frames uniqueid.<br/>*/\r
-\r
-       EPOCH_DVB_ASI_INPUT_GET_PACKET_SIZE = 81,/**< use this property to get the size of each asi transport stream packet\r
-                                                       (whether it is 188 or 204.*/\r
-       EPOCH_DVB_ASI_INPUT_PACKET_COUNT = 82,/**< this property would give you the number of packets captured during the last \r
-                                               interrupt time frame. For ASI interrupt is generated if \r
-                                               hardware captured the requested number of packets or it hit the \r
-                                               timeout value\r
-                                               */\r
-       EPOCH_DVB_ASI_INPUT_LIVE_PACKET_COUNT = 83,/**< this property would give you the number of packets that\r
-                                               is being captured during the current interrupt time frame. \r
-                                               For ASI interrupt is generated when has hardware captured the \r
-                                               requested number of packets specified using  \r
-                                               EPOCH_DVB_ASI_INPUT_LATENCY_PACKET_COUNT property.\r
-                                               */\r
-       EPOCH_DVB_ASI_INPUT_AVAIL_PACKETS_IN_FIFO = 84,/**< This property would return the number of ASI packets \r
-                                                       that has been captured into card memory , that\r
-                                                       can be retreived.\r
-                                                       This property is only valid when the video input \r
-                                                       channel is being used in FIFO modes.\r
-                                               */\r
-       EPOCH_ROUTING_SOURCE_VIDEO_MODE=VIDEO_SCALER_MODE,/**< Use this property to change the video mode that scaler should be set to.\r
-                                                       USe the macro SET_EPOCH_SCALER_MODE when using this property, as this macro \r
-                                                       would allow you to select which one of the scaler blocks video mode should be updated.\r
-                                                       */\r
-       EPOCH_AVAIL_VIDEO_SCALER_COUNT=85,/**< This property would return available scaler processing block available on the card.*/\r
-       EPOCH_ENUM_AVAIL_VIDEO_SCALERS_ID=86,/**< You can enumerate the available scaler processing block available on the card using this property.\r
-                                       You pass in the index value as input parameter to get the scaler id that should be used.\r
-                                       Applications are recommended to use this property to query the available scaler id's \r
-                                       rather than hardcoding a scaler id. As the scaler id's that you can use would vary based on\r
-                                       whether you have VPS0 or VPS1 boards loaded on the base board.\r
-                                       */\r
-       EPOCH_ALLOCATE_VIDEO_SCALER=87, /**< This is just a helper property for applications who need to use more than one scaler\r
-                                       and just wants to query the next available scaler from the driver pool, rather than hardcoding \r
-                                       each thread to use a particular scaler.\r
-                                       Allocate a free scaler from the available scaler pool.\r
-                                       User has got the option to specify whether they want to use the scaler for \r
-                                       use with a single link or dual link stream */\r
-       EPOCH_RELEASE_VIDEO_SCALER=88, /**< Release the previously allocated scaler processing block back to the free pool.\r
-                                       If the user passes in a value of 0, all the allocated scaler blocks in the driver are released.\r
-                                       So effectively\r
-                                       */\r
-       EPOCH_DMA_CARDMEMORY_PITCH=89,\r
-       EPOCH_OUTPUT_CHANNEL_AV_OFFSET=90,\r
-       EPOCH_SCALER_CHANNEL_MUX_MODE=91,\r
-       EPOCH_INPUT_CHANNEL_AV_OFFSET=92,\r
-       EPOCH_AUDIOOUTPUT_MANUAL_UCZV_GENERATION=93,/* ASI firmware only */\r
-       EPOCH_SAMPLE_RATE_CONVERTER_BYPASS=94,\r
-       EPOCH_GET_PRODUCT_ID=95,                                        /* returns the enum for the firmware type EEpochFirmwareProductID */\r
-       EPOCH_GENLOCK_IS_LOCKED=96,\r
-       EPOCH_DVB_ASI_OUTPUT_PACKET_COUNT=97,           /* ASI firmware only */\r
-       EPOCH_DVB_ASI_OUTPUT_BIT_RATE=98,                       /* ASI firmware only */\r
-       EPOCH_DVB_ASI_DUPLICATE_OUTPUT_A=99,            /* ASI firmware only */\r
-       EPOCH_DVB_ASI_DUPLICATE_OUTPUT_B=100,           /* ASI firmware only */\r
-       EPOCH_SCALER_HORIZONTAL_FLIP=101,                       /* see SideBySide_3D sample application */\r
-       EPOCH_CONNECTOR_DIRECTION=102,                          /* see application notes */\r
-       EPOCH_AUDIOOUTPUT_VALIDITY_BITS=103,            /* ASI firmware only */\r
-       EPOCH_SIZEOF_DRIVER_ALLOCATED_MEMORY=104,       /* video buffer allocated in Kernel space; accessible in userland via system_buffer_map() */\r
-       INVALID_VIDEO_MODE_FLAG=105,                            /* returns the enum for VID_FMT_INVALID that this SDK/Driver was compiled with;\r
-                                                                                               it changed between 5.9.x.x and 5.10.x.x driver branch and has to be handled differently for\r
-                                                                                               each driver if the application wants to use the VID_FMT_INVALID flag and support both driver branches */\r
-       EPOCH_VIDEO_INPUT_VPID=106,                                     /* returns the VPID for the current video input signal */\r
-       EPOCH_LOW_LATENCY_DMA=107,                                      /* not fully supported yet */\r
-       EPOCH_VIDEO_INPUT_RGB_DATA_RANGE=108,\r
-\r
-       VIDEO_CARDPROPERTY_INVALID=1000\r
-}EBlueCardProperty;\r
-\r
-\r
-typedef enum _EAnalogConnectorSignalType\r
-{\r
-       ANALOG_OUTPUTSIGNAL_CVBS_Y_C=1,\r
-       ANALOG_OUTPUTSIGNAL_COMPONENT=2,\r
-       ANALOG_OUTPUTSIGNAL_RGB=4\r
-}EAnalogConnectorSignalType;\r
-\r
-/**<\r
-@brief Use this enumerator to set the analog video signal types and connectors.\r
-*/\r
-typedef enum _EAnalogInputConnectorType \r
-{\r
-/* Composite input */\r
-       ANALOG_VIDEO_INPUT_CVBS_AIN1=0x00, /**<only available on Mini COAX */\r
-       ANALOG_VIDEO_INPUT_CVBS_AIN2=0x01, /**<available on both Mini COAX and Mini DIN*/\r
-       ANALOG_VIDEO_INPUT_CVBS_AIN3=0x02, /**<available on both Mini COAX and Mini DIN*/\r
-       ANALOG_VIDEO_INPUT_CVBS_AIN4=0x03, /**<only available on Mini COAX */\r
-       ANALOG_VIDEO_INPUT_CVBS_AIN5=0x04, /**<only available on Mini COAX */\r
-       ANALOG_VIDEO_INPUT_CVBS_AIN6=0x05, /**<available on both Mini COAX and Mini DIN */\r
-\r
-/*svideo input*/\r
-//Y_C is a synonym for svideo\r
-       ANALOG_VIDEO_INPUT_Y_C_AIN1_AIN4=0x06, /**<only available on Mini COAX*/\r
-       ANALOG_VIDEO_INPUT_Y_C_AIN2_AIN5=0x07, /**<only available on Mini COAX*/\r
-       ANALOG_VIDEO_INPUT_Y_C_AIN3_AIN6=0x08, /**<available on both Mini COAX and Mini DIN*/\r
-\r
-/*YUV input*/\r
-       ANALOG_VIDEO_INPUT_YUV_AIN1_AIN4_AIN5=0x09, /**<only available on Mini COAX*/\r
-       ANALOG_VIDEO_INPUT_YUV_AIN2_AIN3_AIN6=0x0a, /**<available on both Mini COAX and Mini DIN*/\r
-       ANALOG_VIDEO_INPUT_USE_SDI_A=0x6F,      \r
-       ANALOG_VIDEO_INPUT_USE_SDI=0x7F,\r
-       GENERIC_ANALOG_VIDEO_SOURCE=0x8F,\r
-       ANALOG_VIDEO_INPUT_USE_SDI_B=ANALOG_VIDEO_INPUT_USE_SDI\r
-}EAnalogInputConnectorType;\r
-\r
-\r
-typedef enum {\r
-       ANALOG_VIDEO_INPUT_CONNECTOR,//EAnalogInputConnectorType\r
-       ANALOG_VIDEO_INPUT_PED,\r
-       ANALOG_VIDEO_INPUT_BRIGHTNESS,\r
-       ANALOG_VIDEO_INPUT_HUE,\r
-       ANALOG_VIDEO_INPUT_LUMA_GAIN,\r
-       ANALOG_VIDEO_INPUT_CHROMA_GAIN,\r
-       ANALOG_VIDEO_INPUT_AUTO_GAIN,\r
-       ANALOG_VIDEO_INPUT_LOAD_DEFAULT_SETTING,        \r
-       ANALOG_VIDEO_OUTPUT_PED,\r
-       ANALOG_VIDEO_OUTPUT_BRIGHTNESS,\r
-       ANALOG_VIDEO_OUTPUT_HUE,\r
-       ANALOG_VIDEO_OUTPUT_LUMA_GAIN,\r
-       ANALOG_VIDEO_OUTPUT_CHROMA_GAIN,        \r
-       ANALOG_VIDEO_OUTPUT_SHARPNESS,\r
-       ANALOG_VIDEO_OUTPUT_AUTO_GAIN,\r
-       ANALOG_VIDEO_OUTPUT_LOAD_DEFAULT_SETTING,\r
-       ANALOG_VIDEO_OUTPUT_SIGNAL_TYPE,//_EAnalogConnectorSignalType\r
-       ANALOG_LOAD_BLUEFISH_DEFAULT_SETTING,\r
-       ANALOG_SET_AS_POWERUP_SETTINGS,\r
-       ANALOG_LOAD_POWERUP_SETTINGS,\r
-       ANALOG_CONNECTOR_STATUS\r
-} AnalogCard_Property;\r
-\r
-typedef struct {\r
-       BLUE_INT32 inputConnector;                      //ANALOG_VIDEO_INPUT_CONNECTOR, EAnalogInputConnectorType\r
-       BLUE_INT32 inputPed;                            //ANALOG_VIDEO_INPUT_PED,\r
-       BLUE_INT32 inputBrightness;             //ANALOG_VIDEO_INPUT_BRIGHTNESS,\r
-       BLUE_INT32 inputHue;                            //ANALOG_VIDEO_INPUT_HUE,\r
-       BLUE_INT32 inputLumaGain;                       //ANALOG_VIDEO_INPUT_LUMA_GAIN,\r
-       BLUE_INT32 inputChromaGain;             //ANALOG_VIDEO_INPUT_CHROMA_GAIN,\r
-       BLUE_INT32 inputAutoGain;                       //ANALOG_VIDEO_INPUT_AUTO_GAIN,\r
-       BLUE_INT32 outputPed;                           //ANALOG_VIDEO_OUTPUT_PED,\r
-       BLUE_INT32 outputBrightness;            //ANALOG_VIDEO_OUTPUT_BRIGHTNESS,\r
-       BLUE_INT32 outputHue;                           //ANALOG_VIDEO_OUTPUT_HUE,\r
-       BLUE_INT32 outputYGain;                 //ANALOG_VIDEO_OUTPUT_Y_GAIN,\r
-       BLUE_INT32 outputUGain;                 //ANALOG_VIDEO_OUTPUT_U_GAIN,\r
-       BLUE_INT32 outputVGain;                 //ANALOG_VIDEO_OUTPUT_V_GAIN,\r
-       BLUE_INT32 outputSharpness;             //ANALOG_VIDEO_OUTPUT_SHARPNESS,\r
-       BLUE_INT32 outputAutoGain;                      //ANALOG_VIDEO_OUTPUT_AUTO_GAIN,\r
-       BLUE_INT32 outputSignalTypes;           //EAnalogConnectorSignalType\r
-}AnalogCardState;\r
-\r
-//----------------------------------------------------------------------------------------------------\r
-/**< brief Used to determine how video interrupts are handled*/\r
-typedef enum _EEngineMode\r
-{\r
-       VIDEO_ENGINE_FRAMESTORE=0,      /**< framestore engine. In this mode user is responsible for \r
-                                                                        schduling a capture or playback after waiting for the \r
-                                                                        respective video sync;s*/\r
-       VIDEO_ENGINE_PLAYBACK=1,        /**< Playback engine. In this mode there is a driver FIFO, which \r
-                                                                       is reponisble for scheudling a frame for  playback.\r
-                                                                       User just adds video frames into the fifo.*/\r
-       VIDEO_ENGINE_CAPTURE=2,         /**< Capture engine  In this mode there is a driver FIFO, which \r
-                                                                       is reponisble for scheudling a frame for capture.\r
-                                                                       User just retreives video frames from the FIFO.*/\r
-       VIDEO_ENGINE_PAGEFLIP=3,        /**< not supported any more */\r
-       VIDEO_ENGINE_DUPLEX=4,          /**< Full Duplex video. This is a FIFO mode. Use this mode if you want \r
-                                                               to capture and playback at the same time.*/\r
-       VIDEO_ENGINE_INVALID\r
-} EEngineMode;\r
-\r
-/**< use this enumerator for controlling emb audio output properties using the \r
-        property EMBEDDED_AUDIO_OUTPUT.        \r
-*/\r
-typedef enum _EBlueEmbAudioOutput\r
-{\r
-       blue_emb_audio_enable=0x1,      // Switches off/on  the whole HANC output from connecotrs associated with the channel\r
-       blue_auto_aes_to_emb_audio_encoder=0x2, //control whether the auto aes to emb thread should be running or not.\r
-       blue_emb_audio_group1_enable=0x4, /**< enables group1(ch 0-  3) emb audio */\r
-       blue_emb_audio_group2_enable=0x8, /**< enables group2(ch 4-  7) emb audio */\r
-       blue_emb_audio_group3_enable=0x10, /**< enables group3(ch 8-  11) emb audio */\r
-       blue_emb_audio_group4_enable=0x20, /**< enables group4(ch 12-  16) emb audio */\r
-       blue_enable_hanc_timestamp_pkt = 0x40\r
-}EBlueEmbAudioOutput;\r
-\r
-\r
-/**< Not used any more */\r
-typedef enum _EBufferTarget\r
-{\r
-       BUFFER_TARGET_VIDEO=0,          // Generic R/W DMA\r
-       BUFFER_TARGET_AUDIO,            // Special processing required for audio\r
-       BUFFER_TARGET_VIDEO_8BIT,       // Special R/W DMA utilising 8 bit aperture\r
-       BUFFER_TARGET_VIDEO_HALF,       // Special R/W DMA every second line (currently unused)\r
-       BUFFER_TARGET_VIDEO_OUT,        // Updates video out register on DMA completion for write \r
-       BUFFER_TARGET_INVALID\r
-} EBufferTarget;\r
-\r
-#define        BUFFER_TYPE_VIDEO               (0)\r
-#define        BUFFER_TYPE_AUDIO               (1)\r
-#define        BUFFER_TYPE_VIDEO_8BIT  (2)     // use this when assigning a buffer to indicate DMA from aperture!\r
-#define        BUFFER_TYPE_VIDEO_OUT   (3)     // On DMA start set video output address to DMA target\r
-#define        BUFFER_TYPE_VIDEO_HALF  (4)     // DMA every second line...\r
-\r
-// Buffer identifiers\r
-#define        BUFFER_ID_AUDIO_IN              (0)\r
-#define        BUFFER_ID_AUDIO_OUT             (1)\r
-#define        BUFFER_ID_VIDEO0                (2)\r
-#define        BUFFER_ID_VIDEO1                (3)\r
-#define        BUFFER_ID_VIDEO2                (4)\r
-#define        BUFFER_ID_VIDEO3                (5)\r
-\r
-//#define      BUFFER_ID_USER_BASE             (6)\r
-\r
-\r
-\r
-#define VIDEO_BORDER_TOP               (0x10000000)\r
-#define VIDEO_BORDER_BOTTOM            (0x20000000)\r
-#define VIDEO_BORDER_LEFT              (0x40000000)\r
-#define VIDEO_BORDER_RIGHT             (0x80000000)\r
-\r
-typedef struct _AnalogCardPropStruct\r
-{\r
-       BLUE_UINT32 VideoChannel;\r
-       BLUE_INT32  prop;\r
-       BLUE_INT32  value;\r
-       BLUE_INT32  minValue;\r
-       BLUE_INT32  maxValue;\r
-       BLUE_INT32  bReadFlag;\r
-}AnalogCardPropStruct;\r
-\r
-typedef enum _EConnectorSignalFormatType\r
-{\r
-       Signal_Type_4444 =1,\r
-       Signal_Type_4224 =0,\r
-       Signal_Type_422=2\r
-}EConnectorSignalFormatType;\r
-\r
-typedef enum _EDMADirection\r
-{\r
-       DMA_WRITE=0,\r
-       DMA_READ=1,\r
-       DMA_INVALID=2\r
-}EDMADirection;                        \r
-\r
-\r
-typedef enum _MatrixColType\r
-{\r
-       COL_BLUE_PB=0,\r
-       COL_RED_PR=1,\r
-       COL_GREEN_Y=2,\r
-       COL_KEY=3\r
-}MatrixColType;\r
-\r
-\r
-\r
-\r
-/**< Bits defining supported features that can be used with VideoFeature_struct*/\r
-#define VIDEO_CAPS_INPUT_SDI                                   (0x00000001)    /**<  Capable of input of SDI Video */\r
-#define VIDEO_CAPS_OUTPUT_SDI                                  (0x00000002)    /**<  Capable of output of SDI Video */\r
-#define VIDEO_CAPS_INPUT_COMP                                  (0x00000004)    /**<  Capable of capturing Composite Video input */\r
-#define VIDEO_CAPS_OUTPUT_COMP                                 (0x00000008)    /**<  Capable of capturing Composite Video output */\r
-\r
-#define VIDEO_CAPS_INPUT_YUV                                   (0x00000010)    /**<  Capable of capturing Component Video input */\r
-#define VIDEO_CAPS_OUTPUT_YUV                                  (0x00000020)    /**<  Capable of capturing Component Video output */\r
-#define VIDEO_CAPS_INPUT_SVIDEO                                        (0x00000040)    /**<  Capable of capturing SVideo input */\r
-#define VIDEO_CAPS_OUTPUT_SVIDEO                               (0x00000080)    /**<  Capable of capturing SVideo output */\r
-\r
-#define VIDEO_CAPS_GENLOCK                                             (0x00000100)    /**<  Able to adjust Vert & Horiz timing */\r
-#define VIDEO_CAPS_VERTICAL_FLIP                               (0x00000200)    /**<  Able to flip rasterisation */\r
-#define VIDEO_CAPS_KEY_OUTPUT                                  (0x00000400)    /**<  Video keying output capable */\r
-#define VIDEO_CAPS_4444_OUTPUT                                 (0x00000800)    /**<  Capable of outputting 4444 (dual link) */\r
-\r
-#define VIDEO_CAPS_DUALLINK_INPUT                              (0x00001000)    /**<  Dual Link input   */\r
-#define VIDEO_CAPS_INTERNAL_KEYER                              (0x00002000)    /**<  Has got an internal Keyer */\r
-#define VIDEO_CAPS_RGB_COLORSPACE_SDI_CONN             (0x00004000)    /**<  Support RGB colorspace  in on an  SDI connector  */\r
-#define VIDEO_CAPS_HAS_PILLOR_BOX                              (0x00008000)    /**<  Has got support for pillor box */\r
-\r
-#define VIDEO_CAPS_OUTPUT_RGB                                  (0x00010000)    /**<  Has Analog RGB output connector  */\r
-#define VIDEO_CAPS_SCALED_RGB                                  (0x00020000)    /**<  Can scale RGB colour space */\r
-#define AUDIO_CAPS_PLAYBACK                                    (0x00040000)    /**<  Has got audio output */\r
-#define AUDIO_CAPS_CAPTURE                                             (0x00080000)\r
-\r
-#define VIDEO_CAPS_DOWNCONVERTER                               (0x00100000)\r
-#define VIDEO_CAPS_DUALOUTPUT_422_IND_STREAM   (0x00200000)    /**<  Specifies whether the card supports Dual Indepenedent 422 output streams */\r
-#define VIDEO_CAPS_DUALINPUT_422_IND_STREAM            (0x00400000)    /**<  Specifies whether the card supports Dual Indepenedent 422 input streams */\r
-\r
-#define VIDEO_CAPS_VBI_OUTPUT                                  (0x00800000)    /**<  Specifies whether the card supports VBI output */\r
-#define VIDEO_CAPS_VBI_INPUT                                   (0x04000000)    /**<  Specifies whether the card supports VBI input */  \r
-\r
-#define VIDEO_CAPS_HANC_OUTPUT                                 (0x02000000)\r
-#define VIDEO_CAPS_HANC_INPUT                                  (0x04000000)\r
-\r
-#define VIDEO_CAPS_FOUND_VPS0                                  VIDEO_CAPS_DOWNCONVERTER        /**< specifies whether the VPS0 scaler board was found on the card */\r
-#define VIDEO_CAPS_FOUND_VPS1                                  (0x10000000)                            /**< specifies whether the VPS1 scaler board was found on the card */\r
-#define VIDEO_CAPS_FOUND_VPIO                                  (0x20000000)                            /**< specifies whether the VPIO(DVI daughter board)board was found on the card */\r
-\r
-/*\r
-#define VIDEO_CAPS_DUALOUTPUT_422_IND_STREAM   (0x00100000)    // Specifies whether the card supports Dual Indepenedent 422 output streams\r
-#define VIDEO_CAPS_DUALINPUT_422_IND_STREAM            (0x00200000)    // Specifies whether the card supports Dual Indepenedent 422 input streams\r
-\r
-#define VIDEO_CAPS_VBI_OUTPUT                                  (0x00400000)\r
-#define VIDEO_CAPS_VBI_INPUT                                   (0x00800000)\r
-\r
-#define VIDEO_CAPS_HANC_OUTPUT                                 (0x01000000)\r
-#define VIDEO_CAPS_HANC_INPUT                                  (0x02000000)\r
-*/\r
-\r
-#define BLUE_CARD_BUFFER_TYPE_OFFSET           (12)\r
-#define BLUE_DMA_DATA_TYPE_OFFSET                      (16)\r
-#define BLUE_DMA_FLAGS_OFFSET                          (20)\r
-#define GetDMACardBufferId(value)                      (value & 0xFFF)\r
-#define GetCardBufferType(value)                       ((value & 0xF000) >> BLUE_CARD_BUFFER_TYPE_OFFSET)\r
-#define GetDMADataType(value)                          ((value & 0xF0000) >> BLUE_DMA_DATA_TYPE_OFFSET)\r
-#define GetDMAFlags(value)                                     ((value & 0xF00000) >> (BLUE_DMA_FLAGS_OFFSET))\r
-\r
-\r
-#define Blue_DMABuffer(CardBufferType,BufferId,DataType)               ( (((ULONG)DataType&0xF)<<(ULONG)BLUE_DMA_DATA_TYPE_OFFSET)| \\r
-                                                                                                                               ( CardBufferType<<(ULONG)BLUE_CARD_BUFFER_TYPE_OFFSET) | \\r
-                                                                                                                               ( ((ULONG)BufferId&0xFFF)) |0)\r
-\r
-#define BlueImage_VBI_DMABuffer(BufferId,DataType)                             ( (((ULONG)DataType&0xF)<<(ULONG)BLUE_DMA_DATA_TYPE_OFFSET)| \\r
-                                                                                                                               ( BLUE_CARDBUFFER_IMAGE_VBI<<(ULONG)BLUE_CARD_BUFFER_TYPE_OFFSET) | \\r
-                                                                                                                               ( ((ULONG)BufferId&0xFFF)) |0)\r
-\r
-#define BlueImage_DMABuffer(BufferId,DataType)                                 ( (((ULONG)DataType&0xF)<<(ULONG)BLUE_DMA_DATA_TYPE_OFFSET)| \\r
-                                                                                                                               ( BLUE_CARDBUFFER_IMAGE<<(ULONG)BLUE_CARD_BUFFER_TYPE_OFFSET) | \\r
-                                                                                                                               ( ((ULONG)BufferId&0xFFF)) |0)\r
-\r
-#define BlueImage_VBI_HANC_DMABuffer(BufferId,DataType)                        ( (((ULONG)DataType&0xF)<<(ULONG)BLUE_DMA_DATA_TYPE_OFFSET)| \\r
-                                                                                                                               ( BLUE_CARDBUFFER_IMAGE_VBI_HANC<<(ULONG)BLUE_CARD_BUFFER_TYPE_OFFSET) | \\r
-                                                                                                                               ( ((ULONG)BufferId&0xFFF)) |0)\r
-\r
-#define BlueImage_HANC_DMABuffer(BufferId,DataType)                            ( (((ULONG)DataType&0xF)<<(ULONG)BLUE_DMA_DATA_TYPE_OFFSET)| \\r
-                                                                                                                               ( BLUE_CARDBUFFER_IMAGE_HANC<<(ULONG)BLUE_CARD_BUFFER_TYPE_OFFSET) | \\r
-                                                                                                                               ( ((ULONG)BufferId&0xFFF)) |0)\r
-\r
-\r
-#define BlueBuffer(CardBufferType,BufferId)                    (((CardBufferType)<<BLUE_CARD_BUFFER_TYPE_OFFSET)|((BufferId&0xFFF))|0)\r
-#define BlueBuffer_Image_VBI(BufferId)                         (((BLUE_CARDBUFFER_IMAGE_VBI)<<BLUE_CARD_BUFFER_TYPE_OFFSET)|((BufferId&0xFFF))|0)\r
-#define BlueBuffer_Image(BufferId)                                     (((BLUE_CARDBUFFER_IMAGE)<<BLUE_CARD_BUFFER_TYPE_OFFSET)|((BufferId&0xFFF))|0)\r
-#define BlueBuffer_Image_VBI_HANC(BufferId)                    (((BLUE_CARDBUFFER_IMAGE_VBI_HANC)<<BLUE_CARD_BUFFER_TYPE_OFFSET)|((BufferId&0xFFF))|0)\r
-#define BlueBuffer_Image_HANC(BufferId)                                (((BLUE_CARDBUFFER_IMAGE_HANC)<<BLUE_CARD_BUFFER_TYPE_OFFSET)|((BufferId&0xFFF))|0)\r
-#define BlueBuffer_HANC(BufferId)                                      (((BLUE_CARDBUFFER_HANC)<<BLUE_CARD_BUFFER_TYPE_OFFSET)|((BufferId&0xFFF))|0)\r
-\r
-#define BYPASS_RELAY_A                                                         (0x00000001) // enable bypass relay channel a when loading driver , only used in linux \r
-#define BYPASS_RELAY_B                                                         (0x00000002) // enable bypass relay channel a when loading driver , only used in linux \r
-typedef enum _EDMACardBufferType\r
-{\r
-       BLUE_CARDBUFFER_IMAGE=0,\r
-       BLUE_CARDBUFFER_IMAGE_VBI_HANC=1,\r
-       BLUE_CARDBUFFER_IMAGE_VBI=2,\r
-       BLUE_CARDBUFFER_AUDIO_OUT=3,\r
-       BLUE_CARDBUFFER_AUDIO_IN=4,\r
-       BLUE_CARDBUFFER_HANC=5,\r
-       BLUE_CARDBUFFER_IMAGE_HANC=6,\r
-       BLUE_CARDBUFFER_INVALID=6\r
-}EDMACardBufferType;\r
-\r
-typedef enum _EDMADataType\r
-{\r
-       BLUE_DATA_FRAME=0,\r
-       BLUE_DATA_IMAGE=0,\r
-       BLUE_DATA_FIELD1=1,\r
-       BLUE_DATA_FIELD2=2,\r
-       BLUE_DATA_VBI=3,\r
-       BLUE_DATA_HANC=4,\r
-       BLUE_DATA_AUDIO_IN=5,\r
-       BLUE_DATA_AUDIO_OUT=6,\r
-       BLUE_DATA_FRAME_RDOM=7,\r
-       BLUE_DATA_FRAME_STEREO_LEFT=BLUE_DATA_FRAME,\r
-       BLUE_DATA_FRAME_STEREO_RIGHT=8,\r
-       BLUE_DMADATA_INVALID=9\r
-}EDMADataType;\r
-\r
-typedef struct _AUXILLARY_VIDEO_INFO\r
-{\r
-       BLUE_UINT32  video_channel_id;\r
-       BLUE_UINT32  lVideoMode;\r
-       BLUE_UINT32  lUniqueId;\r
-       BLUE_UINT32  lInfoType;\r
-       BLUE_UINT32  lMemFmt;\r
-       BLUE_UINT32  lGpio;\r
-       BLUE_UINT64  lLTC;\r
-}Auxillary_Video_Info;\r
-\r
-\r
-typedef enum _EBlueVideoAuxInfoType\r
-{\r
-       BLUE_VIDEO_AUX_MEMFMT_CHANGE=1,\r
-       BLUE_VIDEO_AUX_UPDATE_LTC=2,\r
-       BLUE_VIDEO_AUX_UPDATE_GPIO=4,\r
-       BLUE_VIDEO_AUX_VIDFMT_CHANGE=8,\r
-\r
-}EBlueVideoAuxInfoType;\r
-// Max of 4 bits \r
-\r
-#define GET_ANALOG_AUDIO_LEFT_ROUTINGCHANNEL(value)                            (value&0xFF)\r
-#define GET_ANALOG_AUDIO_RIGHT_ROUTINGCHANNEL(value)                   ((value&0xFF00)>>8)\r
-#define SET_ANALOG_AUDIO_ROUTINGCHANNEL(left,right)                            (((right & 0xFF)<<8)|(left & 0xFF))\r
-#define SET_AUDIO_OUTPUT_ROUTINGCHANNEL(output_type,src_channel_id,_output_channel_id) ((1<<31)|((output_type&3)<<29)|((src_channel_id & 0x7F)<<16)|((_output_channel_id &0x3f)<<23))\r
-#define GET_AUDIO_OUTPUT_SRC_CHANNEL_ROUTING(value)                            ((value>>16) & 0x7F)\r
-#define GET_AUDIO_OUTPUT_CHANNEL_ROUTING(value)                                        ((value>>23) & 0x3F)\r
-#define GET_AUDIO_OUTPUT_TYPE_ROUTING(value)                                   ((value & 0x60000000)>>29)\r
-\r
-#define AUDIO_INPUT_SOURCE_SELECT_FLAG                                                 (1<<16) \r
-#define AUDIO_INPUT_SOURCE_SELECT(SynchCount,AudioInputSource) (AUDIO_INPUT_SOURCE_SELECT_FLAG|(SynchCount)|(AudioInputSource<<17))\r
-\r
-struct blue_video_connection_routing_struct\r
-{\r
-       BLUE_UINT32 video_channel;\r
-       BLUE_UINT32 duallink_flag;\r
-       BLUE_UINT32 link1_connector;\r
-       BLUE_UINT32 link2_connector;\r
-};\r
-\r
-#pragma pack(push, video_sync_struct, 1)\r
-typedef struct _blue_video_sync_struct\r
-{\r
-       BLUE_UINT32     sync_wait_type;// field or frame\r
-       BLUE_UINT32     video_channel; // which video channel interrupt should the interrupt wait for \r
-       BLUE_UINT32     timeout_video_msc;      //if the current video msc is equal to this one insert it into the queue.\r
-       BLUE_UINT32     video_msc;              //current video msc\r
-       BLUE_UINT32 current_display_frame_id; // would give you the current frame id which is being displayed\r
-       BLUE_UINT32 current_display_frame_uniqueid; // would give you the unique id associated with current frame id which is being displayed\r
-                                                                                               // this is only valid when using fifo modes.\r
-       BLUE_UINT8  pad[24];\r
-}blue_video_sync_struct;\r
-#pragma pack(pop,video_sync_struct)\r
-\r
-\r
-typedef enum _EBlueLUTType\r
-{\r
-       BLUE_MAIN_LUT_B_Pb=0,\r
-       BLUE_MAIN_LUT_G_Y=1,\r
-       BLUE_MAIN_LUT_R_Pr=2,\r
-       BLUE_AUX_LUT_B_Pb=3,\r
-       BLUE_AUX_LUT_G_Y=4,\r
-       BLUE_AUX_LUT_R_Pr=5,\r
-}EBlueLUTType;\r
-\r
-#pragma pack(push, video_frame, 1)\r
-struct VideoFeature_struct \r
-{\r
-       BLUE_UINT32  Type;                   // Bluefish card type\r
-       BLUE_UINT32  CardSubType;               \r
-       BLUE_UINT32  Bus;                    // Which PIC bus (bridge) it is on\r
-       BLUE_UINT32  Slot;                   // Which slot card is plugged into\r
-       BLUE_UINT32  Feature;                //  Look at  the _EBlueFishCardFeatures  definition to know what each bit mean\r
-       BLUE_UINT32  FirmwareVersion;\r
-};\r
-\r
-struct blue_videoframe_info\r
-{\r
-       BLUE_UINT64 ltcTimeCode;\r
-       unsigned long videochannel;\r
-       unsigned long BufferId;\r
-       unsigned long Count;\r
-       unsigned long DroppedFrameCount;\r
-};\r
-\r
-struct blue_videoframe_info_ex\r
-{\r
-       BLUE_UINT64 ltcTimeCode;                        //LTC timecode\r
-       unsigned long videochannel;                     //the channel this frame was captured from\r
-       long BufferId;                                          //this buffer contains the captured frame\r
-       unsigned long Count;                            //total captured frames\r
-       unsigned long DroppedFrameCount;        //dropped frame count\r
-       unsigned long nFrameTimeStamp;          //field count the frame was captured at\r
-       unsigned long nVideoSignalType;         //video mode of this frame\r
-       unsigned int  nASIPktCount;                     //only for DVB-ASI; how many ASI packets are in this frame\r
-       unsigned int  nASIPktSize;                      //only for DVB-ASI; how many bytes per packet\r
-       unsigned int  nAudioValidityBits;       //part of the channels status block for audio\r
-       unsigned char pad[20];                          //not used\r
-};\r
-\r
-struct blue_1d_lookup_table_struct\r
-{\r
-       BLUE_UINT32 nVideoChannel;\r
-       BLUE_UINT32  nLUTId;\r
-       BLUE_UINT16 * pLUTData;\r
-       BLUE_UINT32  nLUTElementCount;  \r
-       BLUE_UINT8      pad[256];\r
-};\r
-#pragma pack(pop, video_frame)\r
-\r
-#pragma pack(push, blue_dma_request, 1)\r
-struct blue_dma_request_struct\r
-{\r
-       unsigned char * pBuffer;\r
-       BLUE_UINT32 video_channel;\r
-       BLUE_UINT32     BufferId;\r
-       unsigned int BufferDataType;\r
-       unsigned int FrameType;\r
-       unsigned int BufferSize;\r
-       unsigned int Offset;\r
-       unsigned long   BytesTransferred;\r
-       unsigned char pad[64];\r
-};\r
-\r
-enum SerialPort_struct_flags\r
-{\r
-       SerialPort_Read=1,\r
-       SerialPort_Write=2,\r
-       SerialPort_TX_Queue_Status=4,           \r
-       SerialPort_RX_Queue_Status=8,\r
-       SerialPort_RX_FlushBuffer=16,\r
-       SerialPort_RX_IntWait_Return_On_Data=32,\r
-       \r
-};\r
-\r
-struct SerialPort_struct\r
-{\r
-       unsigned char   Buffer[64];\r
-       unsigned int    nBufLength;\r
-       unsigned int    nSerialPortId;\r
-       unsigned int    bFlag; // SerialPort_struct_flags \r
-       unsigned short  sTimeOut; \r
-};\r
-\r
-\r
-struct blue_video_scaler_ceofficent\r
-{\r
-       BLUE_UINT32 ioctl_read_only_flag;\r
-       BLUE_UINT32 nScalerId;\r
-       BLUE_UINT32 nScalerFilterType;\r
-       BLUE_UINT32 nScalerCoefficentWeight[15];\r
-};\r
-\r
-enum blue_video_scaler_param_flags\r
-{\r
-       scaler_flags_set_destrect_as_framesize = 0x1,\r
-};\r
-\r
-struct blue_video_scaler_param_struct\r
-{\r
-       BLUE_UINT32 ioctl_read_only_flag;\r
-       BLUE_UINT32 nScalerId;\r
-       BLUE_UINT32 nSrcVideoHeight;\r
-       BLUE_UINT32 nSrcVideoWidth;\r
-       BLUE_UINT32 nSrcVideoYPos;\r
-       BLUE_UINT32 nSrcVideoXPos;\r
-       BLUE_UINT32 nDestVideoHeight;\r
-       BLUE_UINT32 nDestVideoWidth;\r
-       BLUE_UINT32 nDestVideoYPos;\r
-       BLUE_UINT32 nDestVideoXPos;\r
-       BLUE_UINT32 nHScaleFactor;\r
-       BLUE_UINT32 nVScaleFactor;\r
-       BLUE_UINT32 nScalerOutputVideoMode;\r
-       BLUE_UINT32 nScalerParamFlags;\r
-       BLUE_UINT32 pad[128];\r
-};\r
-#ifndef EXCLUDE_USERLAND_STRUCT\r
-struct blue_color_matrix_struct{\r
-       BLUE_UINT32  VideoChannel;\r
-       BLUE_UINT32 MatrixColumn; //MatrixColType enumerator defines this \r
-       double  Coeff_B;\r
-       double  Coeff_R;\r
-       double  Coeff_G;\r
-       double  Coeff_K;\r
-       double  const_value;\r
-};\r
-#endif\r
-#pragma pack(pop, blue_dma_request)\r
-\r
-typedef enum _blue_output_hanc_ioctl_enum\r
-{\r
-       blue_get_output_hanc_buffer=0,\r
-       blue_put_output_hanc_buffer=1,\r
-       blue_get_valid_silent_hanc_data_status=3,\r
-       blue_set_valid_silent_hanc_data_status=4,\r
-       blue_start_output_fifo=5,\r
-       blue_stop_output_fifo=6,\r
-       blue_init_output_fifo=7,\r
-       blue_get_queues_info=8,\r
-       blue_get_output_fifo_info=blue_get_queues_info,\r
-       blue_get_output_fifo_status=9,\r
-\r
-}blue_output_hanc_ioctl_enum;\r
-\r
-typedef enum _blue_input_hanc_ioctl_enum\r
-{\r
-       blue_get_input_hanc_buffer=0,\r
-       blue_start_input_fifo=3,\r
-       blue_stop_input_fifo=4,\r
-       blue_init_input_fifo=5,\r
-       blue_playthru_input_fifo=6,\r
-       blue_release_input_hanc_buffer=7,\r
-       blue_map_input_hanc_buffer=8,\r
-       blue_unmap_input_hanc_buffer=9,\r
-       blue_get_info_input_hanc_fifo=10,\r
-       blue_get_input_rp188=11,\r
-       blue_get_input_fifo_status=12,\r
-}blue_input_hanc_ioctl_enum;\r
-\r
-\r
-#define HANC_PLAYBACK_INIT                             (0x00000001)\r
-#define HANC_PLAYBACK_START                            (0x00000002)\r
-#define HANC_PLAYBACK_STOP                             (0x00000004)\r
-\r
-#define HANC_CAPTURE_INIT                              (0x00000010)\r
-#define HANC_CAPTURE_START                             (0x00000020)\r
-#define HANC_CAPTURE_STOP                              (0x00000040)\r
-#define HANC_CAPTURE_PLAYTHRU                  (0x00000080)\r
-\r
-\r
-typedef enum _EOracFPGAConfigCMD\r
-{\r
-       ORAC_FPGA_CONFIG_CMD_ERASE_SECTOR=0,\r
-       ORAC_FPGA_CONFIG_CMD_UNLOCK_SECTOR=1,\r
-       ORAC_FPGA_CONFIG_CMD_WRITE_DATA=2,\r
-       ORAC_FPGA_CONFIG_CMD_STATUS=3,\r
-       ORAC_FPGA_CONFIG_CMD_READMODE=4,\r
-       ORAC_FPGA_CONFIG_RAW_WRITE=5,\r
-       ORAC_FPGA_CONFIG_RAW_READ=6,\r
-       ORAC_FPGA_CONFIG_CMD_READ_DATA=7,\r
-       ORAC_FPGA_CONFIG_INIT=8,\r
-       ORAC_FPGA_CONFIG_EXIT=9\r
-}EOracFPGAConfigCMD;\r
-\r
-\r
-#define ANALOG_CHANNEL_0 MONO_CHANNEL_9\r
-#define ANALOG_CHANNEL_1 MONO_CHANNEL_10\r
-\r
-/*Assumes that the data is in stereo pairs not individual samples*/\r
-#define STEREO_PAIR_1  (MONO_CHANNEL_1|MONO_CHANNEL_2) /* Mono Channel 1 & Mono channel 2* together*/\r
-#define STEREO_PAIR_2  (MONO_CHANNEL_3|MONO_CHANNEL_4) /* Mono Channel 3 & Mono Channel 4* together*/\r
-#define STEREO_PAIR_3  (MONO_CHANNEL_5|MONO_CHANNEL_6) /* Mono Channel 5 & Mono Channel 6* together*/\r
-#define STEREO_PAIR_4  (MONO_CHANNEL_7|MONO_CHANNEL_8) /* Mono Channel 7 & Mono Channel 8* together*/\r
-\r
-#define ANALOG_AUDIO_PAIR (ANALOG_CHANNEL_0|ANALOG_CHANNEL_1)\r
-\r
-#define BLUE_LITTLE_ENDIAN     0\r
-#define BLUE_BIG_ENDIAN                1\r
-\r
-#define GREED_SILENT_HANC_BUFFER1      250\r
-#define GREED_SILENT_HANC_BUFFER2      251\r
-\r
-#define        AES_SRC_BYPASS_CHANNEL_1_2 0x1\r
-#define        AES_SRC_BYPASS_CHANNEL_3_4 0x2\r
-#define        AES_SRC_BYPASS_CHANNEL_5_6 0x4\r
-#define        AES_SRC_BYPASS_CHANNEL_7_8 0x8\r
-\r
-typedef enum _EEpochRoutingElements\r
-{\r
-       EPOCH_SRC_DEST_SCALER_0=0x1,\r
-       EPOCH_SRC_DEST_SCALER_1,\r
-       EPOCH_SRC_DEST_SCALER_2,\r
-       EPOCH_SRC_DEST_SCALER_3,\r
-\r
-       EPOCH_SRC_SDI_INPUT_A,\r
-       EPOCH_SRC_SDI_INPUT_B,\r
-       EPOCH_SRC_SDI_INPUT_C,\r
-       EPOCH_SRC_SDI_INPUT_D,\r
-\r
-       EPOCH_DEST_SDI_OUTPUT_A,\r
-       EPOCH_DEST_SDI_OUTPUT_B,\r
-       EPOCH_DEST_SDI_OUTPUT_C,\r
-       EPOCH_DEST_SDI_OUTPUT_D,\r
-\r
-       EPOCH_SRC_OUTPUT_MEM_INTERFACE_CHA,\r
-       EPOCH_SRC_OUTPUT_MEM_INTERFACE_CHB,\r
-\r
-       EPOCH_DEST_INPUT_MEM_INTERFACE_CHA,\r
-       EPOCH_DEST_INPUT_MEM_INTERFACE_CHB,\r
-\r
-       EPOCH_DEST_AES_ANALOG_AUDIO_OUTPUT,\r
-\r
-       EPOCH_SRC_AV_SIGNAL_GEN,\r
-       EPOCH_SRC_DEST_VPIO_SCALER_0,\r
-       EPOCH_SRC_DEST_VPIO_SCALER_1,\r
-\r
-       EPOCH_DEST_VARIVUE_HDMI,\r
-\r
-       EPOCH_DEST_INPUT_MEM_INTERFACE_CHC,\r
-       EPOCH_DEST_INPUT_MEM_INTERFACE_CHD,\r
-\r
-       EPOCH_SRC_OUTPUT_MEM_INTERFACE_CHC,\r
-       EPOCH_SRC_OUTPUT_MEM_INTERFACE_CHD,\r
-\r
-}EEpochRoutingElements;\r
-\r
-\r
-\r
-#define VPEnableFieldCountTrigger              ((BLUE_UINT64)1<<63)\r
-#define VPTriggerGetFieldCount(value)  ((BLUE_UINT64)value & 0xFFFFFFFF)\r
-\r
-typedef enum _EBlueScalerFilterType\r
-{\r
-       BlueScalerHorizontalYFilter=1,\r
-       BlueScalerHorizontalCFilter=2,\r
-       BlueScalerVerticalYFilter=3,\r
-       BlueScalerVerticalCFilter=4,\r
-}EBlueScalerFilterType;\r
-\r
-\r
-\r
-#define SET_EPOCH_SCALER_MODE(scaler_id,video_mode) ((scaler_id <<16)|video_mode)\r
-#define GET_EPOCH_SCALER_MODE(value)                           (value&0xFFFF)\r
-#define GET_EPOCH_SCALER_ID(value)                                     ((value&0xFFFF0000)>>16)\r
-\r
-\r
-// use these macros for retreiving the temp and fan speed.\r
-// on epoch range of cards.\r
-#define EPOCH_CORE_TEMP(value)                                 (value & 0xFFFF)\r
-#define EPOCH_BOARD_TEMP(value)                                        ((value>>16) & 0xFF)\r
-#define EPOCH_FAN_SPEED(value)                                 ((value>>24) & 0xFF)\r
-\r
-/** \r
-       @desc   use these macro for doing the MR2 routing  on epoch range of cards.\r
-                       MR2 routing can be controlled using the property MR_ROUTING.\r
-*/\r
-#define EPOCH_SET_ROUTING(routing_src,routing_dest,data_link_type) ((routing_src & 0xFF) | ((routing_dest & 0xFF)<<8) | ((data_link_type&0xFFFF)<<16))\r
-#define EPOCH_ROUTING_GET_SRC_DATA(value)              (value & 0xFF)\r
-#define EPOCH_ROUTING_GET_DEST_DATA(value)             ((value>>8) & 0xFF)\r
-#define EPOCH_ROUTING_GET_LINK_TYPE_DATA(value)        ((value>>16) & 0xFFFF)\r
-\r
-#define GPIO_TX_PORT_A (1)\r
-#define GPIO_TX_PORT_B (2)\r
-\r
-#define EPOCH_GPIO_TX(port,value)      (port<<16|value) // if want to set each of the GPO \r
-                                                                                                       // ports individually you should use this macro.\r
-                                                                                                       // without the macro it would set both the GPO\r
-                                                                                                       // ports on the card\r
-\r
-/**\r
-       @desc   use these macros for controlling epoch application watch dog settings.\r
-                       The card property EPOCH_APP_WATCHDOG_TIMER can be used to control \r
-                       the watchdog timer functionality.\r
-*/\r
-enum enum_blue_app_watchdog_timer_prop\r
-{\r
-       enum_blue_app_watchdog_timer_start_stop=(1<<31),                        // can be used to enable/disable timer \r
-       enum_blue_app_watchdog_timer_keepalive=(1<<30),                         // can be used to reset the timer value\r
-       enum_blue_app_watchdog_timer_get_present_time=(1<<29),          // can query to get the value of the timer\r
-       enum_blue_app_watchdog_get_timer_activated_status=(1<<28),      // can query to get whether the timer has been activated\r
-       enum_blue_app_watchdog_get_timer_start_stop_status=(1<<27),     // can query whether the timer has been set.\r
-       enum_blue_app_watchdog_enable_gpo_on_active=(1<<26), // using this enumerator you can tell the system that when \r
-                                                                                                               // application watchdog timer has expired whether a GPO output should be triggered or not.\r
-                                                                                                               // you can use also use this  enumerator  to select\r
-                                                                                                               // which GPO output should be triggered with this. to use GPO port A pass a value of \r
-                                                                                                               // GPIO_TX_PORT_A when this enumerator is used.\r
-       enum_blue_hardware_watchdog_enable_gpo=(1<<25) // can be used to enable/disable GPO trigger when hardware watchdog timer has been \r
-                                                                                                       // triggered\r
-};\r
-\r
-#define EPOCH_WATCHDOG_TIMER_SET_MACRO(prop,value) (prop|(value &0xFFFF))\r
-#define EPOCH_WATCHDOG_TIMER_QUERY_MACRO(prop) (prop)\r
-#define EPOCH_WATCHDOG_TIMER_GET_VALUE_MACRO(value) (value&0xFFFF)\r
-\r
-enum enum_blue_rs422_port_flags\r
-{\r
-       enum_blue_rs422_port_set_as_slave =(1<<0) // If this flag is set the RS422 port would be set to slave mode.\r
-                                                                                         // by default port is setup to work in master mode , where it would be acting \r
-                                                                                         // as master in the transactions.                                                                                       \r
-};\r
-#define EPOCH_RS422_PORT_FLAG_SET_MACRO(portid,value)  ((portid&0x3)|(value<<3))\r
-#define EPOCH_RS422_PORT_FLAG_GET_FLAG_MACRO(value)            ((value>>3)&0xFFFF)\r
-#define EPOCH_RS422_PORT_FLAG_GET_PORTID_MACRO(value)  (value&0x3)\r
-\r
-\r
-enum enum_blue_dvb_asi_packing_format\r
-{\r
-       enum_blue_dvb_asi_packed_format=1,/**< In this packing method the asi packets are stored as 188 or 204 bytes*/\r
-       enum_blue_dvb_asi_packed_format_with_timestamp=2,/**< In this packing method the asi packets are stored as (8+188) or (8+204) bytes\r
-                                                                                                                       The timestamp is stored at the begininig of the packet , using 8 bytes*/\r
-       enum_blue_dvb_asi_256byte_container_format=3,\r
-       enum_blue_dvb_asi_256byte_container_format_with_timestamp=4\r
-};\r
-\r
-\r
-#define RS422_SERIALPORT_FLAG(timeout,port,RxFlushBuffer) (((unsigned long)(timeout)<<16)|(port & 0x3) | (RxFlushBuffer<<15))\r
-// use this macro with Wait_For_SerialPort_InputData,\r
-// if you you want the  function to return \r
-// immediatelty when it gets byte in the serial RX port.\r
-#define RS422_SERIALPORT_FLAG2(timeout,port,RxFlushBuffer,RXIntWaitReturnOnAvailData) (((unsigned long)(timeout)<<16)|(port & 0x3) | (RxFlushBuffer<<15)|(RXIntWaitReturnOnAvailData<<14))\r
-\r
-typedef enum _blue_blackgenerator_status\r
-{\r
-       ENUM_BLACKGENERATOR_OFF =       0,      //producing normal video output\r
-       ENUM_BLACKGENERATOR_ON =        1,      //producing black video output\r
-       ENUM_BLACKGENERATOR_SDI_SYNC_OFF =      2       //no valid SDI signal is coming out of our SDI output connector; only available in Epoch ASI firmware\r
-}blue_blackgenerator_status;\r
diff --git a/dependencies64/bluefish/include/BlueHANC.h b/dependencies64/bluefish/include/BlueHANC.h
deleted file mode 100644 (file)
index fbb3b3f..0000000
+++ /dev/null
@@ -1,372 +0,0 @@
-#pragma once \r
-#include "BlueDriver_p.h"\r
-\r
-#ifdef _WINDOWS\r
-#pragma pack(push,1)\r
-#endif\r
-\r
-#define BLUE_HANC_INVALID_DID  (0x0)\r
-\r
-#define BLUE_HANC_AUDIOGROUP1  (0x2FF)\r
-#define BLUE_HANC_AUDIOGROUP2  (0x1FD)\r
-#define BLUE_HANC_AUDIOGROUP3  (0x1FB)\r
-#define BLUE_HANC_AUDIOGROUP4  (0x2F9)\r
-#define BLUE_HANC_RP188                        (0x260)\r
-#define BLUE_HANC_AUDIOGROUP1_CONTROL  (0x1EF)\r
-#define BLUE_HANC_AUDIOGROUP2_CONTROL  (0x2EE)\r
-#define BLUE_HANC_AUDIOGROUP3_CONTROL  (0x2ED)\r
-#define BLUE_HANC_AUDIOGROUP4_CONTROL  (0x1EC)\r
-#define BLUE_HANC_AUDIOGROUP1_EXTENDED (0x1FE)\r
-#define BLUE_HANC_AUDIOGROUP2_EXTENDED (0x2FC)\r
-#define BLUE_HANC_AUDIOGROUP3_EXTENDED (0x2FA)\r
-#define BLUE_HANC_AUDIOGROUP4_EXTENDED (0x1F8)\r
-\r
-\r
-#define HANC_PACKET_HEADER_CONST       (0xBFFFFC00)\r
-\r
-#define BLUE_HANC_START_NEWLINE(line_number) ((0xC0000000)| (line_number << 16))\r
-\r
-#define BLUE_HANC_CONTROL_WORD                          (0xC0000000)\r
-#define BLUE_HANC_3DATA_PACKET_WORD                     (0x80000000)\r
-#define BLUE_HANC_2DATA_PACKET_WORD                     (0x40000000)\r
-#define BLUE_HANC_1DATA_PACKET_WORD                     (0x00000000)\r
-#define BLUE_HANC_ENDOF_FRAME()                                 ((0xC0000000)| (1 << 15))\r
-\r
-\r
-#define AESAUDIO_DATA_BLOCKSIZE                                                (192)\r
-#define MAX_HANC_BUFFER_SIZE                                           (65536) //256*256\r
-#define MAX_HANC_BUFFER_SIZE_WITHOUT_HEADER                    (65536 - 0x20/4)        //32 bytes = 8 * 4 (8 * UINT32)\r
-#define MAX_HANC_BUFFER_SIZE_BYTES                                     (256*1024)\r
-#define MAX_HANC_BUFFER_SIZE_WITHOUT_HEADER_BYTES      (256*1024 - 0x20)\r
-/* \r
-HANC Packet header structure\r
-Contains 2 type of structure , \r
-which makes it easier to parse the data\r
-*/\r
-\r
-struct GenericV210_structure\r
-{\r
-#if defined(__LITTLE_ENDIAN__) || defined(_WINDOWS) || defined(BLUE_LINUX_CODE)\r
-       BLUE_UINT32 first_word:10,second_word:10,third_word:10,unused:2;\r
-#else\r
-       BLUE_UINT32 unused:2,third_word:10,second_word:10,first_word:10;\r
-#endif\r
-#ifndef _WINDOWS\r
-}__attribute__((packed));\r
-#else\r
-};\r
-#endif\r
-\r
-union GenericV210_union\r
-{\r
-       struct GenericV210_structure v210_struct;\r
-       BLUE_UINT32 v210_word;\r
-};\r
-\r
-/* HANC packet header*/\r
-struct HancPacketHeaderStruct\r
-{\r
-#if defined(__LITTLE_ENDIAN__) || defined(_WINDOWS) || defined(BLUE_LINUX_CODE)\r
-       union GenericV210_union ancillary_data_flag; // 0x0,0x3FF,0x3FF, This is a constant defined by smpte\r
-       union GenericV210_union packet_info;    //  first 10 bit word --> Data ID\r
-                                               //      Commonly used  Data ID packet values are \r
-                                               //              1) 0x2FF --> Group1 Embedded Audio packet\r
-                                               //              2) 0x1FD --> Group2 Embedded Audio Packet\r
-                                               //              3) 0x1FB --> Group3 Embedded Audio Packet\r
-                                               //              4) 0x2F9 --> Group4 Embedded Audio packet\r
-                                               //  second 10 bit word --> Data Block Number\r
-                                               //      This is used for type 1 packets.\r
-                                               //  third 10 bit word --> Data Count \r
-                                               //      This 10 bit word specifies the amount of user data \r
-                                               //      that this hanc will contain.\r
-#else\r
-       union GenericV210_union packet_info;\r
-       union GenericV210_union ancillary_data_flag;\r
-#endif\r
-#ifndef _WINDOWS\r
-}__attribute__((packed));\r
-#else\r
-};\r
-#endif\r
-\r
-\r
-/* Audio SubFrame Packet */\r
-struct BlueAudioSubFrameStruct\r
-{      \r
-#if defined(__LITTLE_ENDIAN__) || defined(_WINDOWS) || defined(BLUE_LINUX_CODE)\r
-       BLUE_UINT32     ZBit:1,                                 //bit 0         set to declare start of channel status word\r
-                       Channel:2,                                      //bit 1-2\r
-                       AudioData_0_5:6,                        //bit 3-8\r
-                       NotBit8:1,                                      //bit 9\r
-                       AudioData_6_14:9,                       //bit 10-18\r
-                       NotBit18:1,                                     //bit 19        use same value as NotBit8 (bit 9)\r
-                       AudioData_15_19:5,                      //bit 20-24\r
-                       AESSampleValidityBit:1,         //bit 25\r
-                       AESUserBit:1,                           //bit 26\r
-                       AESAudioChannelStatusBit:1,     //bit 27        one bit of the channel status word\r
-                       ParityBit:1,                            //bit 28        xor of all bits except (NotBit8 (bit 9) and NotBit18 (bit 19))\r
-                       NotBit31:1,                                     //bit 29        not of ParityBit (bit 28)\r
-                       akiraControlBits:2;                     //bit 30-31\r
-#else\r
-       BLUE_UINT32     akiraControlBits:2,\r
-                       NotBit31:1,\r
-                       ParityBit:1,\r
-                       AESAudioChannelStatusBit:1,\r
-                       AESUserBit:1,\r
-                       AESSampleValidityBit:1,\r
-                       AudioData_15_19:5,\r
-                       NotBit18:1,\r
-                       AudioData_6_14:9,\r
-                       NotBit8:1,\r
-                       AudioData_0_5:6,\r
-                       Channel:2,\r
-                       ZBit:1;\r
-#endif\r
-\r
-#ifndef _WINDOWS\r
-}__attribute__((packed));\r
-#else\r
-};\r
-#endif\r
-\r
-union BlueAudioSubFrameHeader\r
-{\r
-       struct BlueAudioSubFrameStruct audioSubFrame;\r
-       BLUE_UINT32  BlueAudioSubFrameWord;\r
-       struct GenericV210_structure audioSubFrame_v210;\r
-};\r
-\r
-#define  MAX_AUDIO_SUBFRAMES_IN_A_LINE (64) // 4 samples per audio group  and 4 channesl for each  audio group per sample\r
-\r
-\r
-/*\r
-Time code structure that the function expects is the same format as LTC time code\r
-bits 0 - 3 :units of frame \r
-bits 4 - 7: binary group1 \r
-bits 8 - 9: tens of frame \r
-bits 10 -11: flags \r
-bits 12 -15: binary group2 \r
-bits 16-19 : units of seconds \r
-bits 20-23 : binary group3 \r
-\r
-bits 24 - 26: tens of seconds\r
-bit 27 : flag \r
-bits 28 - 31: group binary4  \r
-bits 32 -35: units of minutes \r
-\r
-bits 36 - 39 :binary5 \r
-bits 40 - 42: tens of minutes \r
-bit 43 : flag \r
-bits 44 - 47: binary group6 \r
-\r
-bits 48 - 51: units of hours \r
-bits 52 - 55: binary group7 \r
-bits 56 - 57: tens of hours \r
-bits 58 - 59: flag\r
-bits 60 - 63: binary8\r
-\r
-*/\r
-struct LTC_TimeCode\r
-{\r
-#if defined(__LITTLE_ENDIAN__) || defined(_WINDOWS) || defined(BLUE_LINUX_CODE)\r
-       BLUE_UINT64     unit_frame:4,binary1:4,ten_frame:2,drop_frame_flag:1,color_frame_flag:1,\r
-                                binary2:4,unit_second:4,binary3:4,ten_second:3,unsued_1:1,binary4:4,\r
-                                unit_minute:4,binary5:4,ten_minute:3,unsued_2:1,binary6:4,unit_hours:4,\r
-                                binary7:4,ten_hours:2,unsued_3:2,binary8:4;\r
-#else\r
-       BLUE_UINT64             binary8:4,unsued_3:2,ten_hours:2,binary7:4,\r
-                               unit_hours:4,binary6:4,unused_2:1,ten_minute:3,binary5:4,unit_minute:4,\r
-                               binary4:4,unused_1:1,ten_second:3,binary3:4,unit_second:4,binary2:4,\r
-                               color_frame_flag:1,drop_frame_flag:1,ten_frame:2,binary1:4,unit_frame:4;\r
-#endif\r
-\r
-#ifndef _WINDOWS\r
-}__attribute__((packed));\r
-#else\r
-};\r
-#endif\r
-\r
-struct LTC_TimeCode_union\r
-{\r
-       union \r
-       {\r
-               struct LTC_TimeCode struct_ltc;\r
-               BLUE_UINT64 lt_64_value;\r
-       };\r
-};\r
-\r
-/*\r
-       This is used to unpack the timecode word properly and quickly\r
-       in RP188 each 4 bits of the timecode is put into a 10 bit word.\r
-       So this structure helps in decoding \r
-*/\r
-struct nibble_struct\r
-{\r
-       BLUE_UINT8      first_half:4,second_half:4;\r
-\r
-#ifndef _WINDOWS\r
-}__attribute__((packed));\r
-#else\r
-};\r
-#endif\r
-\r
-struct TimeCode\r
-{\r
-       union \r
-       {\r
-       struct LTC_TimeCode struct_ltc;\r
-       BLUE_UINT64 ltc;\r
-       struct nibble_struct ltc_char[8]; \r
-       };\r
-       \r
-#ifndef _WINDOWS\r
-}__attribute__((packed));\r
-#else\r
-};\r
-#endif\r
-\r
-struct HANCTimeCodeStruct \r
-{      \r
-#if defined(__LITTLE_ENDIAN__) || defined(_WINDOWS) || defined(BLUE_LINUX_CODE)\r
-       BLUE_UINT32     zero_0:3,\r
-                               DBB_0:1,\r
-                               ANC_0:4,\r
-                               partiy_0:1,\r
-                               NotBit8_0:1,\r
-                               zero_1:3,\r
-                               DBB_1:1,\r
-                               ANC_1:4,\r
-                               partiy_1:1,\r
-                               NotBit8_1:1,\r
-                               zero_2:3,\r
-                               DBB_2:1,\r
-                               ANC_2:4,\r
-                               partiy_2:1,\r
-                               NotBit8_2:1,\r
-                               akiraControlBits:2;\r
-#else\r
-       BLUE_UINT32 akiraControlBits:2,\r
-                               Notbit8_2:1,\r
-                               partiy_2:1,\r
-                               ANC_2:4,\r
-                               DBB_2:1,\r
-                               zero_2:3,\r
-                               NotBit81_1:1,\r
-                               partiy_1:1,\r
-                               ANC_1:4,\r
-                               DBB_1:1,\r
-                               zero_1:3,\r
-                               NotBit8_0:1,\r
-                               partiy_0:1,\r
-                               ANC_0:4,\r
-                               DBB_0:1,\r
-                               zero_0:3;\r
-#endif\r
-\r
-#ifndef _WINDOWS\r
-}__attribute__((packed));\r
-#else\r
-};\r
-#endif\r
-\r
-union HANCTimeCode\r
-{\r
-       struct HANCTimeCodeStruct hanc_struct;\r
-       BLUE_UINT32 hanc_word;\r
-};\r
-\r
-struct BAG2VancTimeCodeStruct \r
-{      \r
-#if defined(__LITTLE_ENDIAN__) || defined(_WINDOWS) || defined(BLUE_LINUX_CODE)\r
-       BLUE_UINT16     zero_0:3,\r
-                               DBB_0:1,\r
-                               ANC_0:4,\r
-                               partiy_0:1,\r
-                               NotBit8_0:1;\r
-#else\r
-       BLUE_UINT16     NotBit8_0:1,\r
-                               partiy_0:1,\r
-                               ANC_0:4,\r
-                               DBB_0:1,\r
-                               zero_0:3;\r
-#endif\r
-\r
-#ifndef _WINDOWS\r
-}__attribute__((packed));\r
-#else\r
-};\r
-#endif\r
-\r
-union BAG2VancTimeCode\r
-{\r
-       struct BAG2VancTimeCodeStruct vanc_struct;\r
-       BLUE_UINT16 vanc_word;\r
-};\r
-\r
-\r
-inline BLUE_UINT64 convert_countto_timecode(BLUE_UINT32 frame_count,BLUE_UINT32 framePerSec)\r
-{\r
-       unsigned int frames ,second,minutes ,hour   ;\r
-       struct TimeCode rp188_timcode;\r
-       hour = frame_count/(60*60*framePerSec);\r
-       minutes = frame_count%(60*60*framePerSec);\r
-       second = minutes%(60*framePerSec);\r
-       frames = second %framePerSec;\r
-       second = second/(framePerSec);\r
-       minutes=minutes/(60*framePerSec);\r
-       rp188_timcode.ltc = 0;\r
-       rp188_timcode.struct_ltc.unit_frame = (frames%10);\r
-       rp188_timcode.struct_ltc.ten_frame = (frames/10);\r
-       rp188_timcode.struct_ltc.unit_second = (second%10);\r
-       rp188_timcode.struct_ltc.ten_second = (second/10);\r
-       rp188_timcode.struct_ltc.unit_minute = (minutes%10);\r
-       rp188_timcode.struct_ltc.ten_minute = (minutes/10);\r
-       rp188_timcode.struct_ltc.unit_hours = (hour%10);\r
-       rp188_timcode.struct_ltc.ten_hours = (hour/10);\r
-       \r
-       return rp188_timcode.ltc;\r
-}\r
-\r
-\r
-inline BLUE_UINT64 convert_timecode_to_count(BLUE_UINT64 timecode,\r
-                                                                                        BLUE_UINT32 framePerSec,\r
-                                                                                        unsigned int & frames ,\r
-                                                                                        unsigned int & second,\r
-                                                                                        unsigned int & minutes ,\r
-                                                                                        unsigned int & hours)\r
-{\r
-       \r
-       struct TimeCode rp188_timecode;\r
-       rp188_timecode.ltc = timecode;\r
-       hours  = (BLUE_UINT32)((unsigned int)rp188_timecode.struct_ltc.ten_hours*10)+(unsigned int)rp188_timecode.struct_ltc.unit_hours;\r
-       minutes = (BLUE_UINT32)((unsigned int)rp188_timecode.struct_ltc.ten_minute*10)+(unsigned int)rp188_timecode.struct_ltc.unit_minute;\r
-       second =  (BLUE_UINT32)((unsigned int)rp188_timecode.struct_ltc.ten_second*10)+(unsigned int)rp188_timecode.struct_ltc.unit_second;\r
-       frames =         (BLUE_UINT32)((unsigned int)rp188_timecode.struct_ltc.ten_frame*10)+(unsigned int)rp188_timecode.struct_ltc.unit_frame;                \r
-       return rp188_timecode.ltc;\r
-}\r
-\r
-// Determine endianess at run-time\r
-inline BLUE_UINT32 Int32SwapBigLittle(const BLUE_UINT32 i)\r
-{\r
-    unsigned char c1, c2, c3, c4;\r
-       const int endian = 1;\r
-       #define is_bigendian() ( (*(char*) & endian) == 0 )\r
-\r
-    if (is_bigendian())\r
-       {\r
-        c1 = i & 255;\r
-        c2 = (i >> 8) & 255;\r
-        c3 = (i >> 16) & 255;\r
-        c4 = (i >> 24) & 255;\r
-               \r
-               return ((int)c1 << 24) + ((int)c2 << 16) + ((int)c3 << 8) + c4;\r
-    }\r
-       else\r
-       {\r
-        return i;\r
-       }\r
-}\r
-\r
-#ifdef _WINDOWS\r
-#pragma pack(pop)\r
-#endif
\ No newline at end of file
diff --git a/dependencies64/bluefish/include/BlueHancUtils.h b/dependencies64/bluefish/include/BlueHancUtils.h
deleted file mode 100644 (file)
index 8af320d..0000000
+++ /dev/null
@@ -1,242 +0,0 @@
-#pragma once\r
-#ifndef BLUE_LINUX_CODE\r
-#ifndef HANCUTILS_USE_STATIC_LIB\r
-       #ifdef HANCUTILS_EXPORTS\r
-               #define HANCUTILS_API __declspec(dllexport)\r
-       #elif defined(__APPLE__)\r
-               #define HANCUTILS_API\r
-               #define ATLTRACE        printf\r
-       #else\r
-               #define HANCUTILS_API __declspec(dllimport)\r
-       #endif\r
-#else\r
-       #define HANCUTILS_API\r
-#endif\r
-#else\r
-       #define HANCUTILS_API\r
-typedef bool BOOL;     \r
-#endif \r
-#include "BlueDriver_p.h"\r
-\r
-\r
-\r
-\r
-extern "C"\r
-{\r
-/**\r
-@defgroup hanc_manipilation_function Embedded audio\r
-@{\r
-*/\r
-\r
-#pragma pack(push, hanc_struct, 1)\r
-\r
-/**\r
-@brief The structure is used to extract/insert  Embedded audio to and from the HANC stream of Greed and Leon based cards.*/\r
-\r
-struct hanc_stream_info_struct\r
-{\r
-       BLUE_INT32 AudioDBNArray[4];                    /**< Contains the DBN values that should be used for each of the embedded audio groups*/\r
-       BLUE_INT32 AudioChannelStatusBlock[4];  /**< channel status block information for each of the embedded audio group*/\r
-       BLUE_UINT32 flag_valid_time_code;               /**< flag which identifies the validity of the time code member in the #hanc_stream_info_struct*/\r
-       BLUE_UINT64     time_code;                                      /**< RP188 time code that was extracted from the HANC buffer or RP188 timecode which should be inserted \r
-                                                                                                into the HANC buffer*/\r
-       BLUE_UINT32* hanc_data_ptr;                             /**< Hanc Buffer which should be used as the source or destination for either extraction or insertion */\r
-       BLUE_UINT32 video_mode;                                 /**< video mode which this hanc buffer which be used with. We need this information for do the required audio distribution \r
-                                                                                                especially NTSC */\r
-       BLUE_UINT64 ltc_time_code;\r
-       BLUE_UINT64 sd_vitc_time_code;\r
-       BLUE_UINT64 rp188_ltc_time_code;\r
-       BLUE_UINT32 pad[126];\r
-};\r
-\r
-#define AUDIO_INPUT_SOURCE_EMB 0\r
-#define AUDIO_INPUT_SOURCE_AES 1\r
-struct hanc_decode_struct\r
-{\r
-       void* audio_pcm_data_ptr;                       // Buffer which would be used to store the extracted PCM\r
-                                                                               // audio data. Must be filled in by app before calling function.\r
-       BLUE_UINT32 audio_ch_required_mask;     // which all audio channels should be extracted from the \r
-                                                                               // audio frame .Must be filled in by app before calling function.\r
-       BLUE_UINT32 type_of_sample_required;// type of destination  audio channel\r
-                                                                               //ie 16 bit ,24 bit or 32 bit PCM data .\r
-                                                                               //Must be filled in by app before calling function.\r
-       BLUE_UINT32 no_audio_samples;           // this would contain how many audio samples has been decoded from\r
-                                                                               // the hanc buffer.\r
-       BLUE_UINT64 timecodes[7];                       // Would extract the timecode information from the audio frame.\r
-       void * raw_custom_anc_pkt_data_ptr;                     // This buffer  would contain the raw ANC packets that was found in the orac hanc buffer.\r
-                                                                                               // this would contain any ANC packets that is not of type embedded audio and RP188 TC.\r
-                                                                                               //Must be filled in by app before calling function. can be NULL\r
-       BLUE_UINT32 sizeof_custom_anc_pkt_data_ptr; // size of the ANC buffer array\r
-                                                                                               //Must be filled in by app before calling function. can be NULL\r
-       BLUE_UINT32 avail_custom_anc_pkt_data_bytes;// how many custom ANC packets has been decoded into raw_hanc_pkt_data_ptr\r
-                                                                                               //Must be filled in by app before calling function. can be NULL\r
-       BLUE_UINT32 audio_input_source;         // Used to select the audio input source. \r
-                                                                               // whether it is AES or Embedded.\r
-                                                                               //Must be filled in by app before calling function.\r
-       BLUE_UINT32 audio_temp_buffer[16];      // this is used to store split audio sample \r
-                                                                               // which did not contain all its audio channels\r
-                                                                               // in one audio frame\r
-                                                                               //Must be initialised to zero by app before first instantiating the  function. \r
-       BLUE_UINT32 audio_split_buffer_mask; // The mask would be used to make a note of \r
-                                                                               // split audio sample information for a frame.\r
-                                                                               //Must be initialised to zero by app before first instantiating the  function. \r
-       BLUE_UINT32 max_expected_audio_sample_count; // specify the maximum number of audio samples \r
-                                                                                                // that the audio pcm buffer can contain.\r
-                                                                                               //Must be filled in by app before calling function.\r
-       BLUE_UINT32 pad[124];\r
-};\r
-\r
-#pragma pack(pop, hanc_struct)\r
-\r
-HANCUTILS_API BLUE_UINT32 encode_hanc_frame(struct hanc_stream_info_struct* hanc_stream_ptr,\r
-                                                                                       void* audio_pcm_ptr,\r
-                                                                                       BLUE_UINT32 no_audio_ch,\r
-                                                                                       BLUE_UINT32 no_audio_samples,\r
-                                                                                       BLUE_UINT32 nTypeOfSample,\r
-                                                                                       BLUE_UINT32 emb_audio_flag);\r
-\r
-HANCUTILS_API BLUE_UINT32 encode_hanc_frame_ex( BLUE_UINT32 card_type,\r
-                                                                                               struct hanc_stream_info_struct* hanc_stream_ptr,\r
-                                                                                               void* audio_pcm_ptr,\r
-                                                                                               BLUE_UINT32 no_audio_ch,\r
-                                                                                               BLUE_UINT32 no_audio_samples,\r
-                                                                                               BLUE_UINT32 nTypeOfSample,\r
-                                                                                               BLUE_UINT32 emb_audio_flag);\r
-\r
-\r
-HANCUTILS_API BLUE_UINT32 encode_hanc_frame_with_ucz(  BLUE_UINT32 card_type,\r
-                                                                                                               struct hanc_stream_info_struct* hanc_stream_ptr,\r
-                                                                                                               void* audio_pcm_ptr,\r
-                                                                                                               BLUE_UINT32 no_audio_ch,\r
-                                                                                                               BLUE_UINT32 no_audio_samples,\r
-                                                                                                               BLUE_UINT32 nTypeOfSample,\r
-                                                                                                               BLUE_UINT32 emb_audio_flag,\r
-                                                                                                               BLUE_UINT8* pUCZBuffer);\r
-\r
-HANCUTILS_API BLUE_UINT32 create_embed_audiosample(    void* raw_data_ptr,\r
-                                                                                                       BLUE_UINT32* emb_data_ptr,\r
-                                                                                                       BLUE_UINT32 channels_per_audio_sample,\r
-                                                                                                       BLUE_UINT32 bytes_per_ch,\r
-                                                                                                       BLUE_UINT32 no_samples,\r
-                                                                                                       BLUE_UINT32 emb_audio_flags,\r
-                                                                                                       BLUE_UINT8* Audio_Groups_DBN_Array,\r
-                                                                                                       BLUE_UINT8* Audio_Groups_statusblock_Array);\r
-\r
-HANCUTILS_API BLUE_UINT32* get_embed_audio_distribution_array(BLUE_UINT32 video_mode, BLUE_UINT32 sequence_no);\r
-//HANCUTILS_API BLUE_UINT32 * GetAudioFrameSequence(BLUE_UINT32 video_output_standard);\r
-\r
-HANCUTILS_API bool hanc_stream_analyzer(BLUE_UINT32 *src_hanc_buffer,struct hanc_stream_info_struct * hanc_stream_ptr);\r
-HANCUTILS_API bool orac_hanc_stream_analyzer(BLUE_UINT32 card_type,BLUE_UINT32 *src_hanc_buffer,struct hanc_decode_struct * decode_ptr,char * analyzer_output_file);\r
-HANCUTILS_API bool hanc_decoder_ex(    BLUE_UINT32 card_type,\r
-                                                                       BLUE_UINT32* src_hanc_buffer,\r
-                                                                       struct hanc_decode_struct* hanc_decode_struct_ptr);\r
-\r
-/**\r
-@}\r
-*/\r
-\r
-/**\r
-@defgroup vanc_manipilation_function vanc packet I/O \r
-@{\r
-*/\r
-\r
-\r
-/**\r
-@brief enumerator used by VANC manipulation function on HD cards to notify whether \r
-               VANC pakcet shoule be inserted/extracted from VANC Y buffers or VANC CbCr buffer.\r
-               This enumerator will only be used on  HD video modes as it is the only with \r
-               2 type of ANC bufers ir Y and CbCr. On SD Modes the ANC data is inserted across \r
-               both Y anc CbCr values.\r
-               \r
-*/\r
-enum blue_vanc_pkt_type_enum\r
-{\r
-       blue_vanc_pkt_y_comp=0, /**< ANC pkt should be inserted/extracted from the  Y component buffer*/\r
-       blue_vanc_pkt_cbcr_comp=1 /**< ANC pkt should be inserted/extracted from the  CbCr component buffer*/\r
-};\r
-\r
-/*!\r
-@brief Use this function to initialise VANC buffer before inserting any packets into the buffer\r
-@param CardType type of bluefish  card to which this vanc buffer was transferred to.\r
-@param nVideoMode video mode under which this vanc buffer will be used.\r
-@param pixels_per_line width in pixels of the vanc buffer that has to be initialised.\r
-@param lines_per_frame height of the vanc buffer that has to be initialised.\r
-@param pVancBuffer vanc buffer which has to be initialised.\r
-@remarks.\r
-\r
-*/\r
-HANCUTILS_API BLUE_UINT32 blue_init_vanc_buffer(BLUE_UINT32 CardType,BLUE_UINT32 nVideoMode,BLUE_UINT32 pixels_per_line,BLUE_UINT32 lines_per_frame,BLUE_UINT32 * pVancBuffer);\r
-/*!\r
-@brief this function can be used to extract ANC packet from HD cards. Currently we can only extract packets in the VANC space.\r
-@param CardType type of the card from which the vanc buffer was captured.\r
-@param vanc_pkt_type This parameter denotes whether to search for the VANC packet in Y Space or Cb/Cr Space.\r
-                                        The values this parameter accepts are defined in the enumerator #blue_vanc_pkt_type_enum\r
-@param src_vanc_buffer Vanc buffer which was captured from bluefish card\r
-@param src_vanc_buffer_size size of the vanc buffer which should be parsed for the specified vanc packet\r
-@param pixels_per_line specifies how many pixels are there in each line of VANC buffer\r
-@param vanc_pkt_did specifies the DID of the Vanc packet which should be extracted from the buffer\r
-@param vanc_pkt_sdid Returns the SDID of the extracted VANC packet\r
-@param vanc_pkt_data_length returns the size of the extracted VANC packet. The size is specifed as number of UDW words\r
-                                                       that was  contained in the packet\r
-@param vanc_pkt_data_ptr pointer to UDW of the VANC packets . The 10 bit UDW words are packed in a 16 bit integer. The bottom 10 bit of the \r
-                                               16 bit word contains the UDW data.\r
-@param vanc_pkt_line_no line number  where the packet was found .\r
-\r
-@remarks.\r
-\r
-*/\r
-HANCUTILS_API BLUE_INT32  vanc_pkt_extract( \r
-                                                                                       BLUE_UINT32 CardType,\r
-                                                                                       BLUE_UINT32 vanc_pkt_type,\r
-                                                                                       BLUE_UINT32 * src_vanc_buffer,\r
-                                                                                       BLUE_UINT32 src_vanc_buffer_size,\r
-                                                                                       BLUE_UINT32 pixels_per_line,\r
-                                                                                       BLUE_UINT32             vanc_pkt_did,\r
-                                                                                       BLUE_UINT16 * vanc_pkt_sdid,\r
-                                                                                       BLUE_UINT16 * vanc_pkt_data_length,\r
-                                                                                       BLUE_UINT16 * vanc_pkt_data_ptr,\r
-                                                                                       BLUE_UINT16 * vanc_pkt_line_no);\r
-\r
-/**\r
-@brief use this function to insert ANC packets into the VANC space of the HD cards.\r
-@param CardType type of the card from which the vanc buffer was captured.\r
-@param vanc_pkt_type This parameter denotes whether to search for the VANC packet in Y Space or Cb/Cr Space.\r
-                                        The values this parameter accepts are defined in the enumerator #blue_vanc_pkt_type_enum\r
-@param vanc_pkt_line_no line in th VANC buffer where the ANC packet should inserted.\r
-@param vanc_pkt_buffer vanc ANC packet which should be inserted into the VANC buffer.\r
-@param vanc_pkt_buffer_size size of the ANC packet including the checksum ,ADF , SDID, DID and Data Count\r
-@param dest_vanc_buffer VANC buffer into which the ANC packet will be inserted into.\r
-@param pixels_per_line specifies how many pixels are there in each line of VANC buffer\r
-*/\r
-HANCUTILS_API BLUE_INT32  vanc_pkt_insert(\r
-                                                                                       BLUE_UINT32 CardType,\r
-                                                                                       BLUE_UINT32 vanc_pkt_type,\r
-                                                                                       BLUE_UINT32 vanc_pkt_line_no,\r
-                                                                                       BLUE_UINT32 * vanc_pkt_buffer,\r
-                                                                                       BLUE_UINT32 vanc_pkt_buffer_size,\r
-                                                                                       BLUE_UINT32 * dest_vanc_buffer,\r
-                                                                                       BLUE_UINT32 pixels_per_line);\r
-\r
-/** @} */\r
-\r
-/**\r
-@defgroup vanc_decode_encoder_helper ANC encoder/decoder \r
-       @{\r
-*/\r
-HANCUTILS_API BLUE_UINT32 decode_eia_708b_pkt(BLUE_UINT32 CardType,BLUE_UINT16 * vanc_pkt_data_ptr,BLUE_UINT16 pkt_udw_count,BLUE_UINT16 eia_pkt_subtype,BLUE_UINT8 * decoded_ch_str);\r
-//#ifndef BLUE_LINUX_CODE\r
-//HANCUTILS_API BLUE_UINT64 decode_rp188_packet(BLUE_UINT32 CardType,BLUE_UINT32 * src_vanc_buffer,BLUE_UINT32 UDW_Count,BLUE_UINT64 *rp188_dbb);\r
-//HANCUTILS_API bool blue_vitc_decoder_8bit_fmt(BLUE_UINT8 * raw_vbi_ptr,BLUE_UINT32 pixels_per_line,BLUE_UINT32 mem_fmt,BLUE_UINT32 vitc_line_no,BLUE_UINT64 * vitc_time_code);\r
-//HANCUTILS_API bool blue_vitc_decoder_10bit_v210(BLUE_UINT8 * raw_vbi_ptr, BLUE_UINT32 vitc_line_no, BLUE_UINT64 * vitc_time_code);\r
-//HANCUTILS_API unsigned int create_rp188_pkt(\r
-//                                                       BLUE_UINT32 cardType,\r
-//                                                       BLUE_UINT32 * emb_data_ptr,\r
-//                                                       BLUE_UINT32 line_no,\r
-//                                                       BLUE_UINT32 start_new_line,\r
-//                                                       BLUE_UINT64 timecode,\r
-//                                                       BLUE_UINT64 rp188_dbb);\r
-//#endif\r
-\r
-\r
-/** @} */\r
-}\r
diff --git a/dependencies64/bluefish/include/BlueTypes.h b/dependencies64/bluefish/include/BlueTypes.h
deleted file mode 100644 (file)
index 800b69c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-#pragma once \r
-\r
-#define BERR           int\r
-#define BLUE_UINT32 unsigned int\r
-#define BLUE_INT32     int\r
-#define BLUE_UINT64    unsigned __int64\r
-#define BLUE_UINT8     unsigned char\r
-#define BLUE_INT8      char\r
-#define BLUE_UINT16    unsigned short\r
diff --git a/dependencies64/bluefish/include/BlueVelvet.h b/dependencies64/bluefish/include/BlueVelvet.h
deleted file mode 100644 (file)
index edb8fbd..0000000
+++ /dev/null
@@ -1,1340 +0,0 @@
-/*\r
-// ==========================================================================\r
-//     Bluefish444 BlueVelvet SDK library\r
-//\r
-//  BlueVelvet.h\r
-//  Public Header\r
-//\r
-//  developed by  : Cameron Duffy   (C) 2002 Bluefish444 P/L\r
-//\r
-//  derived from work begun by Vizrt Austria (C) 2001.\r
-//\r
-// ==========================================================================\r
-\r
-  $Id: BlueVelvet.h,v 1.32.8.1 2011/08/04 03:34:36 tim Exp $\r
-*/\r
-#ifndef        _BLUEVELVET_H\r
-#define        _BLUEVELVET_H\r
-\r
-#ifdef BLUEFISH_EXPORTS\r
-#define BLUEFISH_API __declspec(dllexport)\r
-#else\r
-#define BLUEFISH_API __declspec(dllimport)\r
-#endif\r
-\r
-//#include "BlueVelvet_c.h"\r
-\r
-#define BLUE_UINT32    unsigned int \r
-#define BLUE_INT32     int \r
-#define BLUE_UINT8     unsigned char\r
-#define BLUE_INT8      char\r
-#define BLUE_UINT16    unsigned short\r
-#define BLUE_INT16     short\r
-#define BLUE_UINT64    unsigned __int64\r
-\r
-\r
-#ifndef BLUEVELVET_2_DLL\r
-#define BLUEVELVET_SDK_VERSION3\r
-#endif\r
-\r
-#include "BlueDriver_p.h"\r
-\r
-\r
-//----------------------------------------------------------------------------\r
-// Some simple macros and definitions\r
-#define        BLUEVELVET_MAX_DEVICES  (5)                     // Maximum number of Blue Cards recognised by driver\r
-\r
-typedef int BErr;\r
-\r
-#define        BLUE_OK(a)                              (!a)            // Test for succcess of a method returning BErr\r
-#define        BLUE_FAIL(a)                    (a)                     // Test for failure of a method returning BErr\r
-#define        BLUE_PASS(a)                    (a>=0)          // Use this where +ve return values still indicate success\r
-\r
-\r
-//----------------------------------------------------------------------------\r
-// The class definition\r
-class BLUEFISH_API CBlueVelvet\r
-{\r
-public:\r
-       //      4.1             Startup Functions\r
-       //---------------------------------\r
-       //      4.1.1   device_enumerate\r
-       //                      Counts accessible blue cards in target system. \r
-       virtual\r
-       BErr    device_enumerate(\r
-                                       int& Devices\r
-                                       ) = 0;\r
-\r
-       //      4.1.2   device_attach\r
-       //                      Attach the class instance to the indexed device. \r
-       virtual\r
-       BErr    device_attach(\r
-                                       int                     DeviceId,\r
-                                       int                     do_audio        // DEPRECATED; SET TO 0\r
-                                       ) = 0;\r
-\r
-       //      4.1.3   device_detach\r
-       //                      Detach the current device from the class instance.\r
-       virtual\r
-       BErr    device_detach(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.1.4   device_attach_audio\r
-       //                      Attach the class instance to the audio I/O component of the current device.\r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    device_attach_audio(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.1.5   device_detach_audio\r
-       //                      Remove audio I/O components of the current device from the class instance.\r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    device_detach_audio(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.1.6   device_attach_audio_in\r
-       //                      Attach the class instance to the audio IINPUT component of the current device.\r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    device_attach_audio_in(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.1.7   device_detach_audio_in\r
-       //                      Remove audio INPUT component of the current device from the class instance.\r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    device_detach_audio_in(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.1.8   device_attach_audio_out\r
-       //                      Attach the class instance to the audio OUTPUT component of the current device.\r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    device_attach_audio_out(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.1.9   device_detach_audio_out\r
-       //                      Remove audio OUTPUT component of the current device from the class instance. \r
-       // DEPRECATED; DO NOT USE!\r
-    virtual\r
-       BErr    device_detach_audio_out(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.1.10  device_get_bar\r
-       //                      Get device Bar assets from driver\r
-    virtual\r
-       BErr    device_get_bar(\r
-                                       unsigned long   BarN,\r
-                                       void**                  ppAddress,\r
-                                       unsigned long&  Length\r
-                                       ) = 0;\r
-\r
-\r
-\r
-       //      4.2             Feature Assessment Functions\r
-       //---------------------------------\r
-       //      4.2.1   has_timing_adjust\r
-       virtual\r
-       int             has_timing_adjust(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.2   has_vertical_flip\r
-       virtual\r
-       int             has_vertical_flip(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.3   has_half_res\r
-       virtual\r
-       int             has_half_res(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.4   has_dissolve\r
-       virtual\r
-       int             has_dissolve(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.5   has_aperture\r
-       virtual\r
-       int             has_aperture(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.6   has_input_sdi\r
-       virtual\r
-       int             has_input_sdi(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.7   has_output_sdi\r
-       virtual\r
-       int             has_output_sdi(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.8   has_input_composite\r
-       virtual\r
-       int             has_input_composite(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.9   has_output_composite\r
-       virtual\r
-       int             has_output_composite(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.10  has_input_yuv\r
-       virtual\r
-       int             has_input_yuv(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.11  has_output_yuv\r
-       virtual\r
-       int             has_output_yuv(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.12  has_output_rgb\r
-       virtual\r
-       int             has_output_rgb(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.13  has_input_svideo\r
-       virtual\r
-       int             has_input_svideo(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.14  has_output_svideo\r
-       virtual\r
-       int             has_output_svideo(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.15  has_output_key\r
-       virtual\r
-       int             has_output_key(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.16  has_output_key_v4444\r
-       virtual\r
-       int             has_output_key_v4444(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.17  has_letterbox\r
-       virtual\r
-       int             has_letterbox(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.18  has_video_memory\r
-       virtual\r
-       int             has_video_memory(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.18  has_video_memory_base\r
-       virtual\r
-       int             has_video_memory_base(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.19  has_video_cardtype\r
-       virtual\r
-       int             has_video_cardtype(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.20  count_video_mode\r
-       virtual\r
-       int             count_video_mode(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.21  enum_video_mode\r
-       virtual\r
-       EVideoMode enum_video_mode(\r
-                                       int Index,\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.22  count_memory_format\r
-       virtual\r
-       int             count_memory_format(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.23  enum_memory_format\r
-       virtual\r
-       EMemoryFormat enum_memory_format(\r
-                                       int     Index,\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.24  count_update_method\r
-       virtual\r
-       int             count_update_method (\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.25  enum_update_method\r
-       virtual\r
-       EUpdateMethod enum_update_method(\r
-                                       int     Index,\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.26  has_audio_input\r
-       virtual\r
-       int             has_audio_input(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.27  has_audio_output\r
-       virtual\r
-       int             has_audio_output(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.28  count_audio_input_rate\r
-       virtual\r
-       int             count_audio_input_rate(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.29  count_audio_output_rate\r
-       virtual\r
-       int             count_audio_output_rate(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.30  enum_audio_input_rate\r
-       //                      Returns the enumeration for the Ith supported audio input rate.\r
-       virtual\r
-       EAudioRate enum_audio_input_rate(\r
-                                       int     Index,\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.31  enum_audio_output_rate\r
-       //                      Returns the enumeration for the Ith supported audio output rate.\r
-       virtual\r
-       EAudioRate enum_audio_output_rate(\r
-                                       int     Index,\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-\r
-       //      4.2.32  has_audio_playthru\r
-       virtual\r
-       int             has_audio_playthru(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.33  has_dma_control\r
-       virtual\r
-       int             has_dma_control(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.2.34  has_scaled_rgb\r
-       virtual\r
-       int             has_scaled_rgb(\r
-                                       int     DeviceId=0\r
-                                       ) = 0;\r
-\r
-       //      4.3     Control Functions\r
-       //---------------------------------\r
-       //      4.3.1   set_timing_adjust\r
-       //                      Determines the video format of a signal applied to the Link A input. \r
-       virtual\r
-       BErr    set_timing_adjust(\r
-                                       unsigned int    HPhase,\r
-                                       unsigned int    VPhase\r
-                                       ) = 0;\r
-\r
-       //      4.3.2   set_vertical_flip\r
-       virtual\r
-       BErr    set_vertical_flip(\r
-                                       int&    On\r
-                                       ) = 0;\r
-\r
-       //      4.3.3   set_output_key\r
-       virtual\r
-       BErr    set_output_key(\r
-                                       int&    On,\r
-                                       int&    v4444,\r
-                                       int&    Invert,\r
-                                       int&    White\r
-                                       ) = 0;\r
-\r
-       //      4.3.4   set_output_key_on\r
-       virtual\r
-       BErr    set_output_key_on(\r
-                                       int&    On\r
-                                       ) = 0;\r
-\r
-       //      4.3.5   set_output_key_v4444\r
-       virtual\r
-       BErr    set_output_key_v4444(\r
-                                       int&    v4444\r
-                                       ) = 0;\r
-\r
-       //      4.3.6   set_output_key_invert\r
-       virtual\r
-       BErr    set_output_key_invert(\r
-                                       int&    Invert\r
-                                       ) = 0;\r
-\r
-       //      4.3.7   set_output_key_white\r
-       virtual\r
-       BErr    set_output_key_white(\r
-                                       int&    White\r
-                                       ) = 0;\r
-\r
-       //      4.3.8   set_letterbox\r
-       virtual\r
-       BErr    set_letterbox(\r
-                                       unsigned int&   Lines,\r
-                                       int&                    Black\r
-                                       ) = 0;\r
-\r
-       //      4.3.9   set_letterbox_lines\r
-       virtual\r
-       BErr    set_letterbox_lines(\r
-                                       unsigned int&   Lines\r
-                                       ) = 0;\r
-\r
-       //      4.3.10  set_letterbox_black\r
-       virtual\r
-       BErr    set_letterbox_black(\r
-                                       int&                    Black\r
-                                       ) = 0;\r
-\r
-       //      4.3.11  set_safearea\r
-       virtual\r
-       BErr    set_safearea(\r
-                                       int&                    Title,\r
-                                       int&                    Picture\r
-                                       ) = 0;\r
-\r
-       //      4.3.12  set_safearea_title\r
-       virtual\r
-       BErr    set_safearea_title(\r
-                                       int&                    Title\r
-                                       ) = 0;\r
-\r
-       //      4.3.13  set_safearea_picture\r
-       virtual\r
-       BErr    set_safearea_picture(\r
-                                       int&                    Picture\r
-                                       ) = 0;\r
-\r
-       //      4.3.14  set_output_video\r
-       virtual\r
-       BErr    set_output_video(\r
-                                       int&                    Enable\r
-                                       ) = 0;\r
-\r
-       //      4.3.15  set_audio_rate\r
-       virtual\r
-       BErr    set_audio_rate(\r
-                                       unsigned long&  Rate\r
-                                       ) = 0;\r
-\r
-       //      4.3.16  set_audio_playthrough\r
-       virtual\r
-       BErr    set_audio_playthrough(\r
-                                       int&                    Playthru\r
-                                       ) = 0;\r
-\r
-       //      4.3.17  wait_output_video_synch\r
-       virtual\r
-       BErr    wait_output_video_synch(\r
-                                       unsigned long   UpdFmt,\r
-                                       unsigned long&  FieldCount\r
-                                       ) = 0;\r
-\r
-       //      4.3.18  get_output_video_synch_count\r
-       virtual\r
-       BErr    get_output_video_synch_count(\r
-                                       unsigned long&  FieldCount\r
-                                       ) = 0;\r
-\r
-       //      4.3.19  set_scaled_rgb\r
-       virtual\r
-       BErr    set_scaled_rgb(\r
-                                       unsigned long&  On\r
-                                       ) = 0;\r
-\r
-       //      4.3.20  wait_pci_interrupt\r
-       virtual\r
-       BErr    wait_pci_interrupt(\r
-                                       unsigned long   Wait\r
-                                       ) = 0;\r
-\r
-       //      4.3.21  get_audio_rate\r
-       virtual\r
-       BErr    get_audio_rate(\r
-                                       unsigned long&  Rate\r
-                                       ) = 0;\r
-\r
-       //      4.3.22  wait_input_video_synch\r
-       virtual\r
-       BErr    wait_input_video_synch(\r
-                                       unsigned long   UpdFmt,\r
-                                       unsigned long&  FieldCount\r
-                                       ) = 0;\r
-\r
-       //      4.3.23  get_input_video_synch_count\r
-       virtual\r
-       BErr    get_input_video_synch_count(\r
-                                       unsigned long&  FieldCount\r
-                                       ) = 0;\r
-\r
-\r
-       //      4.4             Video STYLE Functions\r
-       //---------------------------------\r
-       //      4.4.1   get_video_input_format\r
-       //                      Determines the video format of a signal applied to the Link A input. \r
-       virtual\r
-       BErr    get_video_input_format(\r
-                                       unsigned long&  VidFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.2   get_video_genlock_format\r
-       //                      Determines the video format of a signal applied to the GENLOCK input. \r
-       virtual\r
-       BErr    get_video_genlock_format(\r
-                                       unsigned long&  VidFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.3   get_video_output_format\r
-       //                      Determines the video format of the output signal. \r
-       virtual\r
-       BErr    get_video_output_format(\r
-                                       unsigned long&  VidFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.4   set_video_output_format\r
-       //                      Changes the output signal video format of Link A output. \r
-       virtual\r
-       BErr    set_video_output_format(\r
-                                       unsigned long&  VidFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.5   get_video_memory_format\r
-       //                      Determines the pixel format for blue card video buffers. \r
-       virtual\r
-       BErr    get_video_memory_format(\r
-                                       unsigned long&  MemFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.6   set_video_memory_format\r
-       //                      Changes the pixel format for blue card video buffers. \r
-       virtual\r
-       BErr    set_video_memory_format(\r
-                                       unsigned long&  MemFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.7   get_video_update_format\r
-       //                      Determines the update synchronisation style of the video buffers. \r
-       virtual\r
-       BErr    get_video_update_format(\r
-                                       unsigned long&  UpdFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.8   set_video_update_format\r
-       //                      Changes the video synchronisation method. \r
-       virtual\r
-       BErr    set_video_update_format(\r
-                                       unsigned long&  UpdFmt\r
-                                       ) = 0;\r
-       //      4.4.9   get_video_zoom_format\r
-       //                      Determines the video resolution style of the video buffers. \r
-       virtual\r
-       BErr    get_video_zoom_format(\r
-                                       unsigned long&  ResFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.10  set_video_zoom_format\r
-       //                      Changes the video resolution style of the video buffers. \r
-       virtual\r
-       BErr    set_video_zoom_format(\r
-                                       unsigned long&  ResFmt\r
-                                       ) = 0;\r
-       //      4.4.11  get_video_framestore_style\r
-       //                      Determines the video mode, memory format and update synchronisation\r
-       //                      styles of the blue card video buffers. \r
-       virtual\r
-       BErr    get_video_framestore_style(\r
-                                       unsigned long&  VidFmt,\r
-                                       unsigned long&  MemFmt,\r
-                                       unsigned long&  UpdFmt,\r
-                                       unsigned long&  ResFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.12  set_video_framestore_style\r
-       //                      Changes the video mode, memory format and update synchronisation styles. \r
-       virtual\r
-       BErr    set_video_framestore_style(\r
-                                       unsigned long&  VidFmt,\r
-                                       unsigned long&  MemFmt,\r
-                                       unsigned long&  UpdFmt,\r
-                                       unsigned long&  ResFmt\r
-                                       ) = 0;\r
-\r
-       //      4.4.13  get_video_engine\r
-       //                              Instruct the device driver to change the operational mode of the\r
-       //                              video engine. \r
-       virtual\r
-       BErr    get_video_engine(\r
-                                       unsigned long&  Mode\r
-                                       ) = 0;\r
-\r
-       //      4.4.14  set_video_engine\r
-       //                              Instruct the device driver to change the operational mode of the\r
-       //                              video engine. \r
-       virtual\r
-       BErr    set_video_engine(\r
-                                       unsigned long&  Mode\r
-                                       ) = 0;\r
-\r
-       \r
-       //      4.5             DMA Memory Functions\r
-       //---------------------------------\r
-       //      4.5.1   system_buffer_map\r
-       //                      Obtains the virtual address of one of the driver managed system buffers. \r
-       virtual\r
-       BErr    system_buffer_map(\r
-                                       void**  ppAddress,\r
-                                       int             BufferId\r
-                                       ) = 0;\r
-\r
-       //      4.5.2   system_buffer_unmap\r
-       //                      Unmaps the virtual address of one of the driver managed system buffers\r
-       //                      from the process address space. \r
-       virtual\r
-       BErr    system_buffer_unmap(\r
-                                       void*           pAddress\r
-                                       ) = 0;\r
-\r
-       //      4.5.3   system_buffer_assign\r
-       //                      Assign an arbitrary usermode buffer to a particular DMA function. \r
-       virtual\r
-       BErr    system_buffer_assign(\r
-                                       void*                   pAddress,\r
-                                       unsigned long   Id,\r
-                                       unsigned long   Length,\r
-                                       unsigned long   Target\r
-                                       ) = 0;\r
-\r
-       //      4.5.4   system_buffer_write\r
-       //                      Instructs the DMA engine to begin a DMA write operation to the\r
-       //                      active blue card host buffer. \r
-       // DEPRECATED; DO NOT USE! USE system_buffer_write_async() instead\r
-       virtual\r
-       int             system_buffer_write(\r
-                                       unsigned char*          pPixels,\r
-                                       unsigned long           Size,\r
-                                       unsigned long           Offset=0\r
-                                       ) = 0;\r
-\r
-       //      4.5.5   system_buffer_read\r
-       //                      Instructs the DMA engine to begin a DMA read operation from the\r
-       //                      active blue card host buffer. \r
-       // DEPRECATED; DO NOT USE! USE system_buffer_read_async() instead\r
-       virtual\r
-       int             system_buffer_read(\r
-                                       unsigned char*          pPixels,\r
-                                       unsigned long           Size,\r
-                                       unsigned long           Offset=0\r
-                                       ) = 0;\r
-\r
-       virtual\r
-       int             system_buffer_write_async(\r
-                                       unsigned char*          pPixels,\r
-                                       unsigned long           Size,\r
-                                       OVERLAPPED                      * pAsync,\r
-                                       unsigned long           BufferID,\r
-                                       unsigned long           Offset=0\r
-                                       ) = 0;\r
-\r
-       //      4.5.5   system_buffer_read\r
-       //                      Instructs the DMA engine to begin a DMA read operation from the\r
-       //                      active blue card host buffer. \r
-       virtual\r
-       int             system_buffer_read_async(\r
-                                       unsigned char*          pPixels,\r
-                                       unsigned long           Size,\r
-                                       OVERLAPPED                      * pAsync,\r
-                                       unsigned long           BufferID,\r
-                                       unsigned long           Offset=0\r
-                                       ) = 0;\r
-\r
-\r
-       //      4.6             Framestore Functions\r
-       //---------------------------------\r
-       //      4.6.1   render_buffer_count\r
-       //                      Determines the number of buffers the blue card memory has been partitioned into. \r
-       virtual\r
-       BErr    render_buffer_count(\r
-                                       unsigned long&          Count\r
-                                       ) = 0;\r
-\r
-       //      4.6.2   render_buffer_update\r
-       //                      Instructs the video digitiser to select a blue card buffer to rasterise. \r
-       virtual\r
-       BErr    render_buffer_update(\r
-                                       unsigned long           BufferId\r
-                                       ) = 0;\r
-\r
-       //      4.6.3   render_buffer_update_b\r
-       //                      Instructs the video digitiser to select a blue card buffer as the video\r
-       //                      channel B source for real-time dissolves. \r
-       virtual\r
-       BErr    render_buffer_update_b(\r
-                                       unsigned long           BufferId\r
-                                       ) = 0;\r
-\r
-       //      4.6.4   render_buffer_dissolve\r
-       //                      Set the percentage of Channel A over Channel B for real-time dissolve. \r
-       virtual\r
-       BErr    render_buffer_dissolve(\r
-                                       unsigned long           Dissolve\r
-                                       ) = 0;\r
-\r
-       //      4.6.5   render_buffer_dissolve_a_b\r
-       //                      Set the video source for Channel A and Channel B and the dissolve\r
-       //                      percentage between them. \r
-       virtual\r
-       BErr    render_buffer_dissolve_a_b(\r
-                                       unsigned long           BufferId_A,\r
-                                       unsigned long           BufferId_B,\r
-                                       unsigned long           Dissolve\r
-                                       ) = 0;\r
-\r
-       //      4.6.6   render_buffer_map\r
-       //                      Get the virtual address of the indexed blue card buffer. \r
-       virtual\r
-       BErr    render_buffer_map(\r
-                                       void**                  pAddress,\r
-                                       unsigned long   BufferId\r
-                                       ) = 0;\r
-\r
-       //      4.6.7   render_buffer_map_aperture\r
-       //                      Get the virtual address of the 8-bit aperture for the indexed blue card buffer. \r
-       virtual\r
-       BErr    render_buffer_map_aperture(\r
-                                       void**                  pAddress,\r
-                                       unsigned long   BufferId\r
-                                       ) = 0;\r
-\r
-       //      4.6.8   render_buffer_map_all\r
-       //                      Generates a table of the virtual addresses for all blue card buffers. \r
-       virtual\r
-       BErr    render_buffer_map_all(\r
-                                       void**                  pTable,\r
-                                       unsigned long&  Count\r
-                                       ) = 0;\r
-\r
-\r
-       //      4.6.9   render_buffer_map_aperture_all\r
-       //                      Generates a table of the virtual addresses for the 8-bit aperture\r
-       //                      of all blue card buffers. \r
-       virtual\r
-       BErr    render_buffer_map_aperture_all(\r
-                                       void**                  pTable,\r
-                                       unsigned long&  Count\r
-                                       ) = 0;\r
-\r
-       //      4.6.10  render_buffer_select\r
-       //                      Specify which blue card buffer will become the target of future DMA transactions. \r
-       virtual\r
-       BErr    render_buffer_select(\r
-                                       unsigned long   BufferId\r
-                                       ) = 0;\r
-\r
-       //      4.6.11  render_buffer_capture\r
-       //                      Specify which blue card buffer will be used for capture. \r
-       virtual\r
-       BErr    render_buffer_capture(\r
-                                       unsigned long   BufferId,\r
-                                       int                             On\r
-                                       ) = 0;\r
-\r
-       //      4.6.12  render_buffer_sizeof\r
-       //                      Determine the maximum byte size of each blue card memory partition. \r
-       virtual\r
-       BErr    render_buffer_sizeof(\r
-                                       unsigned long&  Count,\r
-                                       unsigned long&  Length,\r
-                                       unsigned long&  Actual,\r
-                                       unsigned long&  Golden\r
-                                       ) = 0;\r
-\r
-       //      4.6.13  render_buffer_quantise\r
-       //                      Control whether blue card memory is repartitioned on style changes. \r
-       virtual\r
-       BErr    render_buffer_quantise(\r
-                                       int             On\r
-                                       ) = 0;\r
-\r
-       //      4.7     Audio Functions\r
-       //---------------------------------\r
-       //      4.7.1   audio_playback_start\r
-       //                      Start audio playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_start(\r
-                                       unsigned long   Synch\r
-                                       ) = 0;\r
-\r
-       //      4.7.2   audio_playback_stop\r
-       //                      Stop audio playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_stop(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.7.3   audio_playback_stream\r
-       //                      Register a native interleaved audio file for playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_stream(\r
-                                       char*           pName,\r
-                                       int                     Offset,\r
-                                       int                     Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.4   audio_playback_stream_mono\r
-       //                      Register a native monophonic audio file for playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_stream_mono(\r
-                                       unsigned long   Chan,\r
-                                       char*                   pName,\r
-                                       int                             Offset,\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.5   audio_playback_stream_stereo\r
-       //                      Register a native stereophonic audio file for playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_stream_stereo(\r
-                                       unsigned long   Pair,\r
-                                       char*                   pName,\r
-                                       int                             Offset,\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.6   audio_playback_buffer\r
-       //                      Register a native 6-channel interleaved audio buffer for playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_buffer(\r
-                                       void*                   pGlobal,\r
-                                       unsigned long*  pBuffer,\r
-                                       unsigned long   Length,\r
-                                       unsigned long   Chunk,\r
-                                       int     (*pFunc)(void* pGlobal, unsigned long* pBuffer, int Offset, int Length),\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.7   audio_playback_buffer_mono\r
-       //                      Register a native monophonic audio buffer for playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_buffer_mono(\r
-                                       unsigned long   Chan,\r
-                                       void*                   pGlobal,\r
-                                       unsigned long*  pBuffer,\r
-                                       unsigned long   Length,\r
-                                       unsigned long   Chunk,\r
-                                       int     (*pFunc)(void* pGlobal, unsigned long* pBuffer, int Offset, int Length),\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.8   audio_playback_buffer_stereo\r
-       //                      Register a native stereophonic audio buffer for playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_buffer_stereo(\r
-                                       unsigned long   Pair,\r
-                                       void*                   pGlobal,\r
-                                       unsigned long*  pBuffer,\r
-                                       unsigned long   Length,\r
-                                       unsigned long   Chunk,\r
-                                       int     (*pFunc)(void* pGlobal, unsigned long* pBuffer, int Offset, int Length),\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.9   audio_playback_deregister\r
-       //                      De-registers a native 6-channel interleaved audio source from playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_deregister(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.7.10  audio_playback_deregister_mono\r
-       //                      De-registers a native monophonic audio source from playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_deregister_mono(\r
-                                       unsigned long   Chan\r
-                                       ) = 0;\r
-\r
-       //      4.7.11  audio_playback_deregister_stereo\r
-       //                      De-registers a native stereophonic audio source from playback. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_deregister_stereo(\r
-                                       unsigned long   Pair\r
-                                       ) = 0;\r
-\r
-       //      4.7.12  AudioHandlerPlay\r
-       //                      Moves source audio data streams into the playback buffer. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    AudioHandlerPlay(\r
-                                       unsigned long&  Snooze\r
-                                       ) = 0;\r
-\r
-       //      4.7.13  audio_capture_start\r
-       //                      Begin capturing audio. \r
-       virtual\r
-       BErr    audio_capture_start(\r
-                                       unsigned long   Synch,\r
-                                       unsigned long   PlayThru\r
-                                       ) = 0;\r
-\r
-       //      4.7.14  audio_capture_stop\r
-       //                      Stop capturing audio. \r
-       virtual\r
-       BErr    audio_capture_stop(\r
-                                       void\r
-                                       ) = 0;\r
-       //      4.7.15  audio_capture_stream\r
-       //                      Register a file for capture of native interleaved audio. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_capture_stream (\r
-                                       char*                   pName,\r
-                                       int                             Offset,\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.16  audio_capture_stream_mono\r
-       //                      Register a file for capture of native monophonic audio. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_capture_stream_mono(\r
-                                       unsigned long   Chan,\r
-                                       char*                   pName,\r
-                                       int                             Offset,\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.17  audio_capture_stream_stereo\r
-       //                      Register a file for capture of native stereophonic audio. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_capture_stream_stereo(\r
-                                       unsigned long   Pair,\r
-                                       char*                   pName,\r
-                                       int                             Offset,\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.18  audio_capture_buffer\r
-       //                      Register a buffer for capture of native interleaved audio. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_capture_buffer(\r
-                                       void*                   pGlobal,\r
-                                       unsigned long*  pBuffer,\r
-                                       unsigned long   Length,\r
-                                       unsigned long   Chunk,\r
-                                       int     (*pFunc)(void* pGlobal, unsigned long* pBuffer, int Offset, int Length),\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.19  audio_capture_buffer_mono\r
-       //                      Register a buffer for capture of native monophonic audio. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_capture_buffer_mono(\r
-                                       unsigned long   Chan,\r
-                                       void*                   pGlobal,\r
-                                       unsigned long*  pBuffer,\r
-                                       unsigned long   Length,\r
-                                       unsigned long   Chunk,\r
-                                       int     (*pFunc)(void* pGlobal, unsigned long* pBuffer, int Offset, int Length),\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.20  audio_capture_buffer_stereo\r
-       //                      Register a buffer for capture of native stereophonic audio. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_capture_buffer_stereo(\r
-                                       unsigned long   Pair,\r
-                                       void*                   pGlobal,\r
-                                       unsigned long*  pBuffer,\r
-                                       unsigned long   Length,\r
-                                       unsigned long   Chunk,\r
-                                       int     (*pFunc)(void* pGlobal, unsigned long* pBuffer, int Offset, int Length),\r
-                                       int                             Flags\r
-                                       ) = 0;\r
-\r
-       //      4.7.21  audio_capture_deregister\r
-       //                      De-registers a buffer from capture monitor thread. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_capture_deregister(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.7.22  audio_capture_deregister_mono\r
-       //                      De-registers a single monophonic audio buffer from capture monitor thread. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_capture_deregister_mono(\r
-                                       unsigned long   Chan\r
-                                       ) = 0;\r
-\r
-       //      4.7.23  audio_capture_deregister_stereo\r
-       //                      De-registers a stereophonic audio buffer from capture monitor thread. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_capture_deregister_stereo(\r
-                                       unsigned long   Pair\r
-                                       ) = 0;\r
-\r
-\r
-       //      4.7.24  audio_playback_threshold\r
-       //                      Adjust the Chunk and Snooze times for the Audio Playback Monitor Thread\r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_threshold(\r
-                                       unsigned long   Chunk,\r
-                                       unsigned long   Snooze\r
-                                       ) = 0;\r
-\r
-       //      4.7.25  audio_capture_sample_count\r
-       //                      Number of samples captured. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       ULONG   audio_capture_sample_count() = 0;\r
-\r
-       //      4.7.26  audio_capture_sample_count_mono\r
-       //                      Number of samples captured. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       ULONG   audio_capture_sample_count_mono(unsigned long Chan) = 0;\r
-\r
-       //      4.7.27  audio_capture_sample_count_stereo\r
-       //                      Number of samples captured. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       ULONG   audio_capture_sample_count_stereo(unsigned long Pair) = 0;\r
-\r
-       //      4.7.28  audio_playback_blip\r
-       //                      Channel is to be blipped\r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    audio_playback_blip(\r
-                                               int Channel\r
-                                               ) = 0;\r
-\r
-       //      4.8     Video Engine Functions\r
-       //---------------------------------\r
-       //      4.8.1   video_playback_start\r
-       //                      Start video playback. \r
-       virtual\r
-       BErr    video_playback_start(\r
-                                       int             Step,\r
-                                       int             Loop\r
-                                       ) = 0;\r
-\r
-       //      4.8.2   video_playback_stop\r
-       //                      Halts the video playback engine. \r
-       virtual\r
-       BErr    video_playback_stop(\r
-                                       int             Wait,\r
-                                       int             Flush\r
-                                       ) = 0;\r
-\r
-       //      4.8.3   video_playback_flush\r
-       //                      Flush all pending display requests from all Channels. \r
-       virtual\r
-       BErr    video_playback_flush(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.8.4   video_playback_flush_A\r
-       //                      Flush all pending display requests from Channel A. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    video_playback_flush_A(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.8.5   video_playback_flush_B\r
-       //                      Flush all pending display requests from Channel-B. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    video_playback_flush_B(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.8.6   video_playback_allocate\r
-       //                      Obtain the address of the next available video memory buffer. \r
-       virtual\r
-       BErr    video_playback_allocate(\r
-                                       void**                  pAddress,\r
-                                       unsigned long&  BufferId,\r
-                                       unsigned long&  Underrun\r
-                                       ) = 0;\r
-\r
-       //      4.8.7   video_playback_release\r
-       //                      Release physical blue card video buffer. \r
-       virtual\r
-       BErr    video_playback_release(\r
-                                       unsigned long   BufferId\r
-                                       ) = 0;\r
-\r
-       //      4.8.8   video_playback_flush_display\r
-       //                      Remove a unique display request from the display lists. \r
-       virtual\r
-       BErr    video_playback_flush_display(\r
-                                       unsigned long   UniqueId\r
-                                       ) = 0;\r
-\r
-       //      4.8.9   video_playback_release_flush\r
-       //                      Purges all pending display requests and returns the frame to the free list.\r
-       virtual\r
-       BErr    video_playback_release_flush(\r
-                                       unsigned long   BufferId\r
-                                       ) = 0;\r
-\r
-       //      4.8.10  video_playback_present\r
-       //                      Present a buffer to the video playback engine Channel-A. \r
-       virtual\r
-       BErr    video_playback_present(\r
-                                       unsigned long&  UniqueId,\r
-                                       unsigned long   BufferId,\r
-                                       unsigned long   Count,\r
-                                       int                             Keep,\r
-                                       int                             Odd=0\r
-                                       ) = 0;\r
-\r
-       //      4.8.11  video_playback_present_dissolve\r
-       //                      Present a frame with a dissolve value to the video playback engine. \r
-       virtual\r
-       BErr    video_playback_present_dissolve(\r
-                                       unsigned long&  UniqueId,\r
-                                       unsigned long   BufferId,\r
-                                       unsigned long   Count,\r
-                                       unsigned long   Dissolve,\r
-                                       int                             Keep,\r
-                                       int                             Odd=0\r
-                                       ) = 0;\r
-\r
-       //      4.8.12  video_playback_present_A\r
-       //                      Present a frame to the video playback engine that will be inserted into Channel-A. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    video_playback_present_A(\r
-                                       unsigned long&  UniqueId,\r
-                                       unsigned long   BufferId,\r
-                                       unsigned long   Count,\r
-                                       unsigned long   Dissolve,\r
-                                       int                             Synch_B,\r
-                                       int                             Keep,\r
-                                       int                             Odd=0\r
-                                       ) = 0;\r
-\r
-       //      4.8.13  video_playabck_present_B\r
-       //                      Present a frame to the video playback engine that will be inserted into Channel-B. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    video_playback_present_B(\r
-                                       unsigned long&  UniqueId,\r
-                                       unsigned long   BufferId,\r
-                                       unsigned long   Count,\r
-                                       unsigned long   Dissolve,\r
-                                       int                             Synch_A,\r
-                                       int                             Keep,\r
-                                       int                             Odd=0\r
-                                       ) = 0;\r
-\r
-       //      4.8.14  video_playback_present_detail\r
-       //                      The general purpose presentation function. \r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr    video_playback_present_detail(\r
-                                       unsigned long&  UniqueId,\r
-                                       unsigned long   BufferId,\r
-                                       unsigned long   Count,\r
-                                       unsigned long   Dissolve,\r
-                                       unsigned long   Flags\r
-                                       ) = 0;\r
-\r
-       //      4.8.15  video_capture_start\r
-       //                      Instruct the device driver to begin capturing images into the video framestore. \r
-       virtual\r
-       BErr    video_capture_start(\r
-                                       int             Step=0\r
-                                       ) = 0;\r
-\r
-       //      4.8.16  video_capture_stop\r
-       //                      Instruct the device driver to stop the video capture. \r
-       virtual\r
-       BErr    video_capture_stop(\r
-                                       void\r
-                                       ) = 0;\r
-\r
-       //      4.8.17  video_capture_harvest\r
-       //                      Get the details about the next frame in a capture sequence. \r
-       virtual\r
-       BErr    video_capture_harvest(\r
-                                       void**                  ppAddress,\r
-                                       unsigned long&  BufferId,\r
-                                       unsigned long&  Count,\r
-                                       unsigned long&  Frames,\r
-                                       int                             CompostLater=0\r
-                                       ) = 0;\r
-\r
-       // not used for anything important...\r
-       // DEPRECATED; DO NOT USE!\r
-       virtual\r
-       BErr nudge_frame(LONG nudge) = 0;\r
-\r
-       //      4.8.18  video_playback_pause\r
-       //                      Suspend or Resume playback \r
-       virtual\r
-       BErr    video_playback_pause(\r
-                                       int             Suspend\r
-                                       ) = 0;\r
-\r
-       //      4.8.19  video_capture_compost\r
-       //                      Return a harvested frame for recycling\r
-       virtual\r
-       BErr    video_capture_compost(\r
-                                       unsigned long   BufferId\r
-                                       ) = 0;\r
-\r
-#ifdef BLUEVELVET_SDK_VERSION3\r
-       virtual BErr set_onboard_keyer(int & On)=0;\r
-       virtual BErr get_onboard_keyer_status(int &On)=0;\r
-       virtual BErr get_timing_adjust(unsigned int     & HPhase,unsigned int & VPhase,unsigned int & MaxHPhase,unsigned int & MaxVPhase) = 0;\r
-       virtual BErr get_letterbox_values(unsigned int& Lines,int & bBlackEnableFlag)=0;\r
-       virtual BErr get_safearea_info(int&     Title,int& Picture)=0;\r
-       virtual int has_downconverter_bnc(int deviceId)=0;\r
-       virtual int has_onboard_keyer(int deviceId)=0;\r
-       virtual int has_duallink_input(int deviceId)=0;\r
-       virtual int has_programmable_colorspace_matrix(int deviceId)=0;\r
-\r
-       virtual BErr SetMatrix_Col_Green_Y(double CoeffG_R,double CoeffG_G,double CoeffG_B,double constG)=0;\r
-       virtual BErr GetMatrix_Col_Green_Y(double & CoeffG_R,double & CoeffG_G,double & CoeffG_B,double & constG)=0;\r
-\r
-       virtual BErr SetMatrix_Col_Red_PR(double CoeffR_R,double CoeffR_G,double CoeffR_B,double constR)=0;\r
-       virtual BErr GetMatrix_Col_Red_PR(double & CoeffR_R,double & CoeffR_G,double & CoeffR_B,double & constR)=0;\r
-\r
-       virtual BErr SetMatrix_Col_Blue_PB(double CoeffB_R,double CoeffB_G,double CoeffB_B,double constB)=0;\r
-       virtual BErr GetMatrix_Col_Blue_PB(double & CoeffB_R,double & CoeffB_G,double & CoeffB_B,double & constB)=0;\r
-\r
-       virtual BErr SetDualLink_Output_Conn_SignalColorSpace(unsigned long & signalType,unsigned long  updateMatrixFlag)=0;\r
-       virtual BErr SetDualLink_Input(unsigned long  & EnableDualLink)=0;\r
-       virtual BErr SetDualLink_Input_SignalFormatType(unsigned long &v4444)=0;\r
-       virtual BErr GetDualLink_InputProperty(unsigned long & DualLink,unsigned long & connSignalColorSpace,unsigned long & v4444)=0;\r
-       virtual BErr GetDualLink_OutputProperty(unsigned long & DualLink,unsigned long & connSignalColorSpace,unsigned long & v4444)=0;\r
-\r
-       virtual BErr Set_DownConverterSignalType(unsigned long type)=0;\r
-       virtual BErr GetDownConverterSignalType(unsigned long & connSignalType)=0;\r
-\r
-       virtual BErr SetDualLink_Input_Conn_SignalColorSpace(unsigned long  & signalType)=0;\r
-       virtual int  GetHDCardType(int nDeviceId)=0;\r
-\r
-       // New Audio Interface \r
-       virtual BErr MaxAudioOutBufferSize(long & nSampleCount)=0;\r
-       virtual BErr GetAudioOutBufferFreeSpace(long  & nSampleCount)=0;\r
-       virtual BErr wait_audio_output_interrupt(unsigned long & noQueuedSample,unsigned long & noFreeSample) = 0;\r
-       virtual BErr InitAudioPlaybackMode()=0;\r
-       virtual BErr StartAudioPlayback(int syncCount)=0;\r
-       virtual BErr StopAudioPlayback()=0;\r
-       virtual BErr WriteAudioSample(int nSampleType,void * pBuffer,long  nNoSample,int bFlag,long nNoSamplesWritten)=0;\r
-       virtual BErr EndAudioPlaybackMode()=0; \r
-       virtual int GetPCIRevId()=0;\r
-#endif\r
-\r
-       //      Need this so that derived destructor gets called\r
-       virtual ~CBlueVelvet(){}\r
-       HANDLE          m_hDevice;                                      // Handle to the blue card device driver\r
-};\r
-\r
-\r
-//------------------------------------------------------------------------------------------------------------\r
-extern "C" {\r
-//------------------------------------------------------------------------------------------------------------\r
-//     4.0.0   The Blue Velvet factory\r
-BLUEFISH_API CBlueVelvet*      BlueVelvetFactory();\r
-\r
-\r
-//     4.0.1   Who am I\r
-BLUEFISH_API const char*       BlueVelvetVersion();\r
-\r
-//     4.0.2   Golden Value calculation\r
-BLUEFISH_API unsigned long BlueVelvetGolden(\r
-                                                                               unsigned long   VidFmt,\r
-                                                                               unsigned long   MemFmt,\r
-                                                                               unsigned long   UpdFmt\r
-                                                                               );\r
-//     4.0.3   Bytes Per Line calculation\r
-BLUEFISH_API unsigned long BlueVelvetLineBytes(\r
-                                                                               unsigned long   VidFmt,\r
-                                                                               unsigned long   MemFmt\r
-                                                                               );\r
-//     4.0.4   Bytes Per Frame calculation\r
-BLUEFISH_API unsigned long BlueVelvetFrameBytes(\r
-                                                                               unsigned long   VidFmt,\r
-                                                                               unsigned long   MemFmt,\r
-                                                                               unsigned long   UpdFmt\r
-                                                                               );\r
-\r
-//     4.0.5   Lines Per Frame calculation\r
-BLUEFISH_API unsigned long BlueVelvetFrameLines(\r
-                                                                               unsigned long   VidFmt,\r
-                                                                               unsigned long   UpdFmt\r
-                                                                               );\r
-\r
-//     4.0.6   Pixels per Line calculation\r
-BLUEFISH_API unsigned long BlueVelvetLinePixels(\r
-                                                                               unsigned long   VidFmt\r
-                                                                               );\r
-\r
-BLUEFISH_API unsigned long BlueVelvetVBILines(unsigned long VidFmt,unsigned long FrameType);\r
-\r
-}\r
-\r
-#endif //_BLUEVELVET_H\r
diff --git a/dependencies64/bluefish/include/BlueVelvet4.h b/dependencies64/bluefish/include/BlueVelvet4.h
deleted file mode 100644 (file)
index 7f2588d..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-#ifndef        _BLUEVELVET4_H\r
-#define        _BLUEVELVET4_H\r
-\r
-#include "BlueVelvet.h"\r
-#include "BlueC_Api.h"\r
-typedef struct \r
-{\r
-       VARIANT maxRange;\r
-       VARIANT minRange;\r
-       VARIANT currentValue;\r
-       unsigned long uniqueSteps;\r
-}AnalogPropertyValue;\r
-\r
-\r
-class BLUEFISH_API CBlueVelvet4:  virtual  public CBlueVelvet \r
-{\r
-public:\r
-       // Functions for new Analog Card Property \r
-       virtual BErr SetAnalogCardProperty(int propType,VARIANT & propValue)=0;\r
-       virtual BErr GetAnalogCardProperty(int propType,AnalogPropertyValue & propValue)=0;\r
-       virtual BErr GetAnalogCardProperty(int propType,VARIANT & propValue)=0;\r
-\r
-       virtual BErr has_analog_connector(int   DeviceId) = 0;\r
-       virtual int has_svideo_input(int        DeviceId) = 0;\r
-       virtual int has_component_input(int     DeviceId)=0;\r
-       virtual int     has_composite_input(int DeviceId)=0;\r
-       virtual int     has_svideo_output(int   DeviceId)=0;\r
-       virtual int     has_component_output(int        DeviceId)=0;\r
-       virtual int     has_analog_rgb_output(int       DeviceId)=0;\r
-       virtual int     has_composite_output(int        DeviceId)=0;\r
-\r
-       // Functions for new Audio Input architecture\r
-       // Functions for Future use not implemented \r
-       virtual BErr wait_audio_input_interrupt(unsigned long & noQueuedSample,unsigned long & noFreeSample) = 0;\r
-       virtual BErr InitAudioCaptureMode()=0;\r
-       virtual BErr StartAudioCapture(int syncCount)=0;\r
-       virtual BErr StopAudioCapture()=0;\r
-       virtual BErr ReadAudioSample(int nSampleType,void * pBuffer,long  nNoSample,int bFlag,long nNoSamplesWritten)=0;\r
-       virtual BErr EndAudioCaptureMode()=0; \r
-\r
-        \r
-       virtual BErr SetCardProperty(int propType,VARIANT & Value)=0;\r
-       virtual BErr QueryCardProperty(int propType,VARIANT & Value)=0;\r
-\r
-       // RS422 Serial Port Functions\r
-       // Functions for Future use not implemented \r
-       virtual BErr    Wait_For_SerialPort_InputData(unsigned long   bFlag,unsigned long & NoDataAvailable)=0;\r
-       virtual int     IsSerialPort_OutputBuffer_Full(unsigned long bFlag)=0;\r
-       virtual int             Read_From_SerialPort(unsigned long bFlag,unsigned char * pBuffer,unsigned long ReadLength)=0;\r
-       virtual int     Write_To_SerialPort(unsigned long bFlag,unsigned char * pBuffer,unsigned long WriteLength)=0;\r
-};\r
-\r
-\r
-\r
-\r
-extern "C" {\r
-BLUEFISH_API CBlueVelvet4*     BlueVelvetFactory4();\r
-BLUEFISH_API void BlueVelvetDestroy(CBlueVelvet4* pObj);\r
-// this would give you number of VANC/VBI line \r
-BLUEFISH_API unsigned int BlueVelvetVANCLineCount(unsigned int CardType,unsigned long VidFmt,unsigned long FrameType);\r
-\r
-// this would give you golden value for the VANC frame size\r
-BLUEFISH_API unsigned int BlueVelvetVANCGoldenValue(   unsigned int CardType,\r
-                                                                                                       unsigned long VidFmt,\r
-                                                                                                       unsigned long MemFmt,\r
-                                                                                                       unsigned long FrameType);\r
-\r
-// this would give you number of bytes contained in a VANC line \r
-BLUEFISH_API unsigned int BlueVelvetVANCLineBytes(     unsigned int CardType,\r
-                                                                                                       unsigned long   VidFmt,\r
-                                                                                                       unsigned long   MemFmt);\r
-\r
-BLUEFISH_API unsigned int BlueVelvetBytesForGroupPixels(unsigned long MemFmt,unsigned int nPixelCount);\r
-BLUEFISH_API BErr SetVideo_MetaDataInfo(CBlueVelvet4 * pSdk,LPOVERLAPPED pOverLap,ULONG FrameId,ULONG prop,VARIANT value);\r
-\r
-BLUEFISH_API BErr GetVideo_CaptureFrameInfo(CBlueVelvet4 * pSdk,LPOVERLAPPED pOverlap,struct blue_videoframe_info & video_capture_frame,int    CompostLater);\r
-BLUEFISH_API BErr GetVideo_CaptureFrameInfoEx(CBlueVelvet4 * pSdk,LPOVERLAPPED pOverlap,struct blue_videoframe_info_ex & video_capture_frame,int       CompostLater,unsigned int *capture_fifo_size);\r
-\r
-BLUEFISH_API int GetHancQueuesInfo(CBlueVelvet4 * pSdk, LPOVERLAPPED pOverlap, UINT32 video_channel, UINT32* pFreeBuffers, UINT32* pMaximumBuffers, UINT32* pStatus);\r
-BLUEFISH_API int GetHancBuffer(CBlueVelvet4 * pSdk,LPOVERLAPPED pOverlap,UINT32 video_channel);\r
-BLUEFISH_API BERR PutHancBuffer(CBlueVelvet4 * pSdk,LPOVERLAPPED pOverlap,int hanc_buffer_id,UINT32 video_channel);\r
-BLUEFISH_API BERR HancInputFifoControl(CBlueVelvet4 * pSdk,LPOVERLAPPED pOverlap,UINT32 video_channel, UINT32 control);\r
-BLUEFISH_API BERR HancOutputFifoControl(CBlueVelvet4 * pSdk,LPOVERLAPPED pOverlap,UINT32 video_channel, UINT32 control);\r
-BLUEFISH_API int GetHancInputBuffer(CBlueVelvet4* pSdk,LPOVERLAPPED pOverlap,UINT32 video_channel,UINT32* signal_type, UINT32* field_count);\r
-BLUEFISH_API BLUE_UINT32 emb_audio_decoder( BLUE_UINT32 * src_hanc_buffer,\r
-                                                                                   void  * dest_data_ptr,\r
-                                                                                   BLUE_UINT32 req_audio_sample_count,\r
-                                                                                   BLUE_UINT32 required_audio_channels,\r
-                                                                                       BLUE_UINT32 sample_type);\r
-BLUEFISH_API BERR blue_wait_video_sync_async(CBlueVelvet4 * pSdk,\r
-                                                                                       LPOVERLAPPED pOverlap,\r
-                                                                                       blue_video_sync_struct * sync_struct);\r
-BLUEFISH_API BERR blue_dma_read_async( CBlueVelvet4 * pSdk,\r
-                                                                               LPOVERLAPPED pOverlap,\r
-                                                                               struct blue_dma_request_struct  *pUserDmaRequest);\r
-\r
-\r
-BLUEFISH_API BERR blue_load_1D_lookup_table(CBlueVelvet4 * pSdk, struct blue_1d_lookup_table_struct * lut);\r
-\r
-BLUEFISH_API BERR blue_control_video_scaler(CBlueVelvet4 * pSdk, unsigned int nScalerId,\r
-                                                                                       bool bOnlyReadValue,\r
-                                                                                       float *pSrcVideoHeight,\r
-                                                                                       float *pSrcVideoWidth,\r
-                                                                                       float *pSrcVideoYPos,\r
-                                                                                       float *pSrcVideoXPos,\r
-                                                                                       float *pDestVideoHeight,\r
-                                                                                       float *pDestVideoWidth,\r
-                                                                                       float *pDestVideoYPos,\r
-                                                                                       float *pDestVideoXPos);\r
-\r
-BLUEFISH_API BERR blue_Epoch_GetTimecodes(CBlueVelvet4 * pSdk, UINT32 VideoChannel, UINT64* pArray, UINT32* FieldCount);\r
-\r
-BLUEFISH_API unsigned int count_scaler_video_mode(CBlueVelvet4 * pSdk,\r
-                                                                                                       int device_id,\r
-                                                                                                       unsigned int video_channel,\r
-                                                                                                       unsigned int video_mode);\r
-BLUEFISH_API EVideoMode enum_scaler_video_mode(CBlueVelvet4 * pSdk,\r
-                                                                                                int device_id,\r
-                                                                                                unsigned int video_channel,\r
-                                                                                                unsigned int video_mode,\r
-                                                                                                unsigned int index);\r
-BLUEFISH_API BERR blue_video_scaler_filter_coefficent( CBlueVelvet4 * pSdk,\r
-                                                                                       unsigned int nScalerId,\r
-                                                                                       bool bOnlyReadValue,\r
-                                                                                       unsigned int nFilterType,\r
-                                                                                       float *pCoefficentWeightArray,\r
-                                                                                       unsigned int nArrayElementCount\r
-                                                                                       );\r
-BLUEFISH_API BERR blue_audioplayback_pause(CBlueVelvet4 * pSdk);\r
-BLUEFISH_API BERR blue_audioplayback_resume(CBlueVelvet4 * pSdk, int syncCount);\r
-BLUEFISH_API BERR GetHancQueuesInfoEx(CBlueVelvet4 * pSdk, \r
-                                               LPOVERLAPPED pOverlap, \r
-                                               UINT32 video_channel, \r
-                                               UINT32* pFreeBuffers, \r
-                                               UINT32* pMaximumBuffers,\r
-                                               UINT32 * pStatus,\r
-                                               UINT32 * pSamplesUsed,\r
-                                               UINT64 *pStartHancFifoTimeStamp,\r
-                                               UINT64 *pVideoSyncTimeStamp);\r
-\r
-\r
-BLUEFISH_API BERR blue_color_matrix(CBlueVelvet4 * pSdk,bool bGetValue,blue_color_matrix_struct * color_matrix_ptr);\r
-}\r
-\r
-\r
-#endif //_BLUEVELVET4_H
\ No newline at end of file
diff --git a/dependencies64/bluefish/include/BlueVelvet_c.h b/dependencies64/bluefish/include/BlueVelvet_c.h
deleted file mode 100644 (file)
index def919b..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-/*\r
-// ==========================================================================\r
-//     Bluefish444 BlueVelvet SDK library\r
-//\r
-//  BlueSD_c.h\r
-//  Constants header\r
-//     LARGELY superseded by dynamic calculations\r
-\r
-\r
-  $Id: BlueVelvet_c.h,v 1.4 2002/10/02 00:29:53 cameron Exp $\r
-//\r
-//  developed by  : Cameron Duffy   (C) 2002 Bluefish444 P/L\r
-// ==========================================================================\r
-//\r
-*/\r
-\r
-//----------------------------------------------------------------------------\r
-#ifndef _BLUEVELVET_C_H\r
-#define _BLUEVELVET_C_H\r
-\r
-//----------------------------------------------------------------------------------------------------------------------\r
-// File SUB-types supported\r
-//\r
-typedef enum\r
-{\r
-       EBlue_10BIT_NTSC=0,             // 10 BIT NTSC\r
-       EBlue_10BIT_PAL,                // 10 BIT PAL\r
-       EBlue_08BIT_NTSC,               //  8 BIT NTSC\r
-       EBlue_08BIT_PAL,                //  8 BIT PAL\r
-       EBlue_32BIT_NTSC,               // 32 BIT NTSC (ARGB - uncompressed)\r
-       EBlue_32BIT_PAL         // 32 BIT PAL  (ARGB - uncompressed)\r
-} EBlueFileId;\r
-\r
-// File subtype ID;s\r
-#define        BLUE_FILE_10BIT_NTSC    0       // 10 BIT NTSC\r
-#define        BLUE_FILE_10BIT_PAL             1       // 10 BIT PAL\r
-#define        BLUE_FILE_08BIT_NTSC    2       //  8 BIT NTSC\r
-#define        BLUE_FILE_08BIT_PAL             3       //  8 BIT PAL\r
-#define        BLUE_FILE_32BIT_NTSC    4       // 32 BIT NTSC (ARGB - uncompressed)\r
-#define        BLUE_FILE_32BIT_PAL             5       // 32 BIT PAL  (ARGB - uncompressed)\r
-\r
-// File subtype FOURCC\r
-#define        BLUE_SUBTYPE_10BIT_NTSC 0x52594e5f      //'RYN_'        // 10 BIT NTSC\r
-#define        BLUE_SUBTYPE_10BIT_PAL  0x5259515f      //'RYP_'        // 10 BIT PAL\r
-#define        BLUE_SUBTYPE_08BIT_NTSC 0x52384e5f      //'R8N_'        //  8 BIT NTSC\r
-#define        BLUE_SUBTYPE_08BIT_PAL  0x5238515f      //'R8P_'        //  8 BIT PAL\r
-#define        BLUE_SUBTYPE_32BIT_NTSC 0x52524e5f      //'RRN_'        // 32 BIT NTSC (ARGB - uncompressed)\r
-#define        BLUE_SUBTYPE_32BIT_PAL  0x5252415f      //'RRP_'        // 32 BIT PAL  (ARGB - uncompressed)\r
-\r
-#define        BLUE_ROOTED_SUBTYPE             0x62626262      //'XXXX'\r
-#define        BLUE_FILE_NOVIDEO               0x62626262      //'XXXX'\r
-#define        BLUE_FILE_TYPE                  0x5244565f      //'RDV_'\r
-#define        BLUE_CLASS_ID                   0x52444456      //'RDDV'\r
-\r
-// align this structure on 512 byte boundary!\r
-typedef struct\r
-{\r
-       char                            name[20];               // "PREMIERE RDV_FILE";\r
-       ULONG                           hasAudio;               // See BLUE_SUBTYPE_???\r
-       ULONG                           VideoSubtype;   // See BLUE_SUBTYPE_???\r
-       ULONG                           width;                  // width of frame in pixels\r
-       ULONG                           height;                 // height of frame in pixels (can get video mode)\r
-       ULONG                           rowbytes;               // total bytes in row (can get mem format from this and width)\r
-       ULONG                           numFrames;              // number of frames in file\r
-       ULONG                           frameOffset;    // GOLDEN frame size\r
-       ULONG                           duration;               // TDB - value = total number of frames\r
-       long                            scale;                  // TDB - scale = scale / samplesize = timebase\r
-       long                            sampleSize;             // TDB - sampleSize = 1 or 100 if 29.97 fps\r
-\r
-       ULONG                           gFmtVid;\r
-       ULONG                           gFmtMem;\r
-       ULONG                           gFmtUpd;\r
-       ULONG                           gFmtRes;\r
-       // 76 bytes\r
-       char                            orgtime[20];    // These fields map directly to those in imTimeInfoRec.\r
-       char                            alttime[20];\r
-       char                            orgreel[40];\r
-       char                            altreel[40];\r
-       // 196 bytes\r
-       char                            logcomment[256];\r
-       // 452 bytes\r
-//     char                            pad[512-452-4];\r
-       char                            pad[56];\r
-       // For disk speed to work, this structure MUST be a multiple of sector size\r
-       ULONG                           len;                    // Length of TRAILER, *always* last!\r
-} RDV_File2_OLD;\r
-//#define      SIZE_RDV_FILE   512\r
-\r
-#define kGoldenPageSize        4096\r
-\r
-typedef struct\r
-{\r
-       char                            name[20];               // "PREMIERE RDV_FILE ";\r
-       ULONG                           hasAudio;               // See BLUE_SUBTYPE_???\r
-       ULONG                           VideoSubtype;   // See BLUE_SUBTYPE_???\r
-       ULONG                           width;                  // width of frame in pixels\r
-       ULONG                           height;                 // height of frame in pixels (can get video mode)\r
-       ULONG                           rowbytes;               // total bytes in row (can get mem format from this and width)\r
-       ULONG                           numFrames;              // number of frames in file\r
-       ULONG                           frameOffset;    // GOLDEN frame size\r
-       ULONG                           duration;               // TDB - value = total number of frames\r
-       long                            scale;                  // TDB - scale = scale / samplesize = timebase\r
-       long                            sampleSize;             // TDB - sampleSize = 1 or 100 if 29.97 fps\r
-\r
-       ULONG                           gFmtVid;\r
-       ULONG                           gFmtMem;\r
-       ULONG                           gFmtUpd;\r
-       ULONG                           gFmtRes;\r
-       // 76 bytes\r
-       char                            orgtime[20];    // These fields map directly to those in imTimeInfoRec.\r
-       char                            alttime[20];\r
-       char                            orgreel[40];\r
-       char                            altreel[40];\r
-       // 196 bytes\r
-       char                            logcomment[256];\r
-       // 452 bytes\r
-//     char                            pad[512-452-4];\r
-       ULONG                           audioSampleRate;                // 48000 or 96000\r
-       ULONG                           numChannels;                    // 2, 4, or 6\r
-       ULONG                           numAudioBlocks;                 // how many in the file?\r
-       // 464 bytes\r
-       char                            pad[36];\r
-\r
-       _int64                          audioBlockOffsets[kGoldenPageSize * 4];         // something like 4.5 hours max length (enough for now I guess)\r
-       ULONG                           audioBlockSizes[kGoldenPageSize * 4];\r
-\r
-       // For disk speed to work, this structure MUST be a multiple of sector size\r
-       ULONG                           len;                    // Length of TRAILER, *always* last!\r
-} RDV_File2;\r
-\r
-#endif //_BLUEVELVET_C_H\r
diff --git a/dependencies64/bluefish/lib/BlueFishFilters.lib b/dependencies64/bluefish/lib/BlueFishFilters.lib
deleted file mode 100644 (file)
index df9d7ae..0000000
Binary files a/dependencies64/bluefish/lib/BlueFishFilters.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueFishFilters.tlb b/dependencies64/bluefish/lib/BlueFishFilters.tlb
deleted file mode 100644 (file)
index 375f0d0..0000000
Binary files a/dependencies64/bluefish/lib/BlueFishFilters.tlb and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueFishFilters64.lib b/dependencies64/bluefish/lib/BlueFishFilters64.lib
deleted file mode 100644 (file)
index d025f74..0000000
Binary files a/dependencies64/bluefish/lib/BlueFishFilters64.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueFishFilters64.tlb b/dependencies64/bluefish/lib/BlueFishFilters64.tlb
deleted file mode 100644 (file)
index 03488f1..0000000
Binary files a/dependencies64/bluefish/lib/BlueFishFilters64.tlb and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueHancUtils.lib b/dependencies64/bluefish/lib/BlueHancUtils.lib
deleted file mode 100644 (file)
index 3a12d24..0000000
Binary files a/dependencies64/bluefish/lib/BlueHancUtils.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueHancUtils64.lib b/dependencies64/bluefish/lib/BlueHancUtils64.lib
deleted file mode 100644 (file)
index 802c71c..0000000
Binary files a/dependencies64/bluefish/lib/BlueHancUtils64.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueHancUtils64_d.lib b/dependencies64/bluefish/lib/BlueHancUtils64_d.lib
deleted file mode 100644 (file)
index 8e4e91b..0000000
Binary files a/dependencies64/bluefish/lib/BlueHancUtils64_d.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueHancUtils_d.lib b/dependencies64/bluefish/lib/BlueHancUtils_d.lib
deleted file mode 100644 (file)
index 81b7672..0000000
Binary files a/dependencies64/bluefish/lib/BlueHancUtils_d.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueVelvet3.lib b/dependencies64/bluefish/lib/BlueVelvet3.lib
deleted file mode 100644 (file)
index 7a901fa..0000000
Binary files a/dependencies64/bluefish/lib/BlueVelvet3.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueVelvet3_d.lib b/dependencies64/bluefish/lib/BlueVelvet3_d.lib
deleted file mode 100644 (file)
index 0c01b58..0000000
Binary files a/dependencies64/bluefish/lib/BlueVelvet3_d.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueVelvet64.lib b/dependencies64/bluefish/lib/BlueVelvet64.lib
deleted file mode 100644 (file)
index 2433a6e..0000000
Binary files a/dependencies64/bluefish/lib/BlueVelvet64.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueVelvet64_d.lib b/dependencies64/bluefish/lib/BlueVelvet64_d.lib
deleted file mode 100644 (file)
index daa16a5..0000000
Binary files a/dependencies64/bluefish/lib/BlueVelvet64_d.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueVelvetCom.lib b/dependencies64/bluefish/lib/BlueVelvetCom.lib
deleted file mode 100644 (file)
index 7b60e7a..0000000
Binary files a/dependencies64/bluefish/lib/BlueVelvetCom.lib and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueVelvetCom.tlb b/dependencies64/bluefish/lib/BlueVelvetCom.tlb
deleted file mode 100644 (file)
index 49d16e6..0000000
Binary files a/dependencies64/bluefish/lib/BlueVelvetCom.tlb and /dev/null differ
diff --git a/dependencies64/bluefish/lib/BlueVelvetConstant.tlb b/dependencies64/bluefish/lib/BlueVelvetConstant.tlb
deleted file mode 100644 (file)
index c965900..0000000
Binary files a/dependencies64/bluefish/lib/BlueVelvetConstant.tlb and /dev/null differ
diff --git a/dependencies64/dependencies64.exe b/dependencies64/dependencies64.exe
new file mode 100644 (file)
index 0000000..43abf0a
Binary files /dev/null and b/dependencies64/dependencies64.exe differ
diff --git a/dependencies64/ffmpeg/bin/avcodec-53.dll b/dependencies64/ffmpeg/bin/avcodec-53.dll
deleted file mode 100644 (file)
index 95d2bd6..0000000
Binary files a/dependencies64/ffmpeg/bin/avcodec-53.dll and /dev/null differ
diff --git a/dependencies64/ffmpeg/bin/avdevice-53.dll b/dependencies64/ffmpeg/bin/avdevice-53.dll
deleted file mode 100644 (file)
index 8818219..0000000
Binary files a/dependencies64/ffmpeg/bin/avdevice-53.dll and /dev/null differ
diff --git a/dependencies64/ffmpeg/bin/avfilter-2.dll b/dependencies64/ffmpeg/bin/avfilter-2.dll
deleted file mode 100644 (file)
index 91fffff..0000000
Binary files a/dependencies64/ffmpeg/bin/avfilter-2.dll and /dev/null differ
diff --git a/dependencies64/ffmpeg/bin/avformat-53.dll b/dependencies64/ffmpeg/bin/avformat-53.dll
deleted file mode 100644 (file)
index e8a88ba..0000000
Binary files a/dependencies64/ffmpeg/bin/avformat-53.dll and /dev/null differ
diff --git a/dependencies64/ffmpeg/bin/avutil-51.dll b/dependencies64/ffmpeg/bin/avutil-51.dll
deleted file mode 100644 (file)
index b46a075..0000000
Binary files a/dependencies64/ffmpeg/bin/avutil-51.dll and /dev/null differ
diff --git a/dependencies64/ffmpeg/bin/postproc-51.dll b/dependencies64/ffmpeg/bin/postproc-51.dll
deleted file mode 100644 (file)
index cb8353d..0000000
Binary files a/dependencies64/ffmpeg/bin/postproc-51.dll and /dev/null differ
diff --git a/dependencies64/ffmpeg/bin/swresample-0.dll b/dependencies64/ffmpeg/bin/swresample-0.dll
deleted file mode 100644 (file)
index 5729772..0000000
Binary files a/dependencies64/ffmpeg/bin/swresample-0.dll and /dev/null differ
diff --git a/dependencies64/ffmpeg/bin/swscale-2.dll b/dependencies64/ffmpeg/bin/swscale-2.dll
deleted file mode 100644 (file)
index b2f9821..0000000
Binary files a/dependencies64/ffmpeg/bin/swscale-2.dll and /dev/null differ
diff --git a/dependencies64/ffmpeg/include/libavcodec/avcodec.h b/dependencies64/ffmpeg/include/libavcodec/avcodec.h
deleted file mode 100644 (file)
index e937c94..0000000
+++ /dev/null
@@ -1,4711 +0,0 @@
-/*
- * copyright (c) 2001 Fabrice Bellard
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_AVCODEC_H
-#define AVCODEC_AVCODEC_H
-
-/**
- * @file
- * external API header
- */
-
-#include <errno.h>
-#include "libavutil/samplefmt.h"
-#include "libavutil/avutil.h"
-#include "libavutil/cpu.h"
-#include "libavutil/dict.h"
-#include "libavutil/log.h"
-#include "libavutil/pixfmt.h"
-#include "libavutil/rational.h"
-
-#include "libavcodec/version.h"
-/**
- * @defgroup libavc Encoding/Decoding Library
- * @{
- *
- * @defgroup lavc_decoding Decoding
- * @{
- * @}
- *
- * @defgroup lavc_encoding Encoding
- * @{
- * @}
- *
- * @defgroup lavc_codec Codecs
- * @{
- * @defgroup lavc_codec_native Native Codecs
- * @{
- * @}
- * @defgroup lavc_codec_wrappers External library wrappers
- * @{
- * @}
- * @defgroup lavc_codec_hwaccel Hardware Accelerators bridge
- * @{
- * @}
- * @}
- * @defgroup lavc_internal Internal
- * @{
- * @}
- * @}
- *
- */
-
-
-/**
- * Identify the syntax and semantics of the bitstream.
- * The principle is roughly:
- * Two decoders with the same ID can decode the same streams.
- * Two encoders with the same ID can encode compatible streams.
- * There may be slight deviations from the principle due to implementation
- * details.
- *
- * If you add a codec ID to this list, add it so that
- * 1. no value of a existing codec ID changes (that would break ABI),
- * 2. Give it a value which when taken as ASCII is recognized uniquely by a human as this specific codec.
- *    This ensures that 2 forks can independantly add CodecIDs without producing conflicts.
- */
-enum CodecID {
-    CODEC_ID_NONE,
-
-    /* video codecs */
-    CODEC_ID_MPEG1VIDEO,
-    CODEC_ID_MPEG2VIDEO, ///< preferred ID for MPEG-1/2 video decoding
-    CODEC_ID_MPEG2VIDEO_XVMC,
-    CODEC_ID_H261,
-    CODEC_ID_H263,
-    CODEC_ID_RV10,
-    CODEC_ID_RV20,
-    CODEC_ID_MJPEG,
-    CODEC_ID_MJPEGB,
-    CODEC_ID_LJPEG,
-    CODEC_ID_SP5X,
-    CODEC_ID_JPEGLS,
-    CODEC_ID_MPEG4,
-    CODEC_ID_RAWVIDEO,
-    CODEC_ID_MSMPEG4V1,
-    CODEC_ID_MSMPEG4V2,
-    CODEC_ID_MSMPEG4V3,
-    CODEC_ID_WMV1,
-    CODEC_ID_WMV2,
-    CODEC_ID_H263P,
-    CODEC_ID_H263I,
-    CODEC_ID_FLV1,
-    CODEC_ID_SVQ1,
-    CODEC_ID_SVQ3,
-    CODEC_ID_DVVIDEO,
-    CODEC_ID_HUFFYUV,
-    CODEC_ID_CYUV,
-    CODEC_ID_H264,
-    CODEC_ID_INDEO3,
-    CODEC_ID_VP3,
-    CODEC_ID_THEORA,
-    CODEC_ID_ASV1,
-    CODEC_ID_ASV2,
-    CODEC_ID_FFV1,
-    CODEC_ID_4XM,
-    CODEC_ID_VCR1,
-    CODEC_ID_CLJR,
-    CODEC_ID_MDEC,
-    CODEC_ID_ROQ,
-    CODEC_ID_INTERPLAY_VIDEO,
-    CODEC_ID_XAN_WC3,
-    CODEC_ID_XAN_WC4,
-    CODEC_ID_RPZA,
-    CODEC_ID_CINEPAK,
-    CODEC_ID_WS_VQA,
-    CODEC_ID_MSRLE,
-    CODEC_ID_MSVIDEO1,
-    CODEC_ID_IDCIN,
-    CODEC_ID_8BPS,
-    CODEC_ID_SMC,
-    CODEC_ID_FLIC,
-    CODEC_ID_TRUEMOTION1,
-    CODEC_ID_VMDVIDEO,
-    CODEC_ID_MSZH,
-    CODEC_ID_ZLIB,
-    CODEC_ID_QTRLE,
-    CODEC_ID_SNOW,
-    CODEC_ID_TSCC,
-    CODEC_ID_ULTI,
-    CODEC_ID_QDRAW,
-    CODEC_ID_VIXL,
-    CODEC_ID_QPEG,
-    CODEC_ID_PNG,
-    CODEC_ID_PPM,
-    CODEC_ID_PBM,
-    CODEC_ID_PGM,
-    CODEC_ID_PGMYUV,
-    CODEC_ID_PAM,
-    CODEC_ID_FFVHUFF,
-    CODEC_ID_RV30,
-    CODEC_ID_RV40,
-    CODEC_ID_VC1,
-    CODEC_ID_WMV3,
-    CODEC_ID_LOCO,
-    CODEC_ID_WNV1,
-    CODEC_ID_AASC,
-    CODEC_ID_INDEO2,
-    CODEC_ID_FRAPS,
-    CODEC_ID_TRUEMOTION2,
-    CODEC_ID_BMP,
-    CODEC_ID_CSCD,
-    CODEC_ID_MMVIDEO,
-    CODEC_ID_ZMBV,
-    CODEC_ID_AVS,
-    CODEC_ID_SMACKVIDEO,
-    CODEC_ID_NUV,
-    CODEC_ID_KMVC,
-    CODEC_ID_FLASHSV,
-    CODEC_ID_CAVS,
-    CODEC_ID_JPEG2000,
-    CODEC_ID_VMNC,
-    CODEC_ID_VP5,
-    CODEC_ID_VP6,
-    CODEC_ID_VP6F,
-    CODEC_ID_TARGA,
-    CODEC_ID_DSICINVIDEO,
-    CODEC_ID_TIERTEXSEQVIDEO,
-    CODEC_ID_TIFF,
-    CODEC_ID_GIF,
-#if LIBAVCODEC_VERSION_MAJOR == 53
-    CODEC_ID_FFH264,
-#endif
-    CODEC_ID_DXA,
-    CODEC_ID_DNXHD,
-    CODEC_ID_THP,
-    CODEC_ID_SGI,
-    CODEC_ID_C93,
-    CODEC_ID_BETHSOFTVID,
-    CODEC_ID_PTX,
-    CODEC_ID_TXD,
-    CODEC_ID_VP6A,
-    CODEC_ID_AMV,
-    CODEC_ID_VB,
-    CODEC_ID_PCX,
-    CODEC_ID_SUNRAST,
-    CODEC_ID_INDEO4,
-    CODEC_ID_INDEO5,
-    CODEC_ID_MIMIC,
-    CODEC_ID_RL2,
-#if LIBAVCODEC_VERSION_MAJOR == 53
-    CODEC_ID_8SVX_EXP,
-    CODEC_ID_8SVX_FIB,
-#endif
-    CODEC_ID_ESCAPE124,
-    CODEC_ID_DIRAC,
-    CODEC_ID_BFI,
-    CODEC_ID_CMV,
-    CODEC_ID_MOTIONPIXELS,
-    CODEC_ID_TGV,
-    CODEC_ID_TGQ,
-    CODEC_ID_TQI,
-    CODEC_ID_AURA,
-    CODEC_ID_AURA2,
-    CODEC_ID_V210X,
-    CODEC_ID_TMV,
-    CODEC_ID_V210,
-    CODEC_ID_DPX,
-    CODEC_ID_MAD,
-    CODEC_ID_FRWU,
-    CODEC_ID_FLASHSV2,
-    CODEC_ID_CDGRAPHICS,
-    CODEC_ID_R210,
-    CODEC_ID_ANM,
-    CODEC_ID_BINKVIDEO,
-    CODEC_ID_IFF_ILBM,
-    CODEC_ID_IFF_BYTERUN1,
-    CODEC_ID_KGV1,
-    CODEC_ID_YOP,
-    CODEC_ID_VP8,
-    CODEC_ID_PICTOR,
-    CODEC_ID_ANSI,
-    CODEC_ID_A64_MULTI,
-    CODEC_ID_A64_MULTI5,
-    CODEC_ID_R10K,
-    CODEC_ID_MXPEG,
-    CODEC_ID_LAGARITH,
-    CODEC_ID_PRORES,
-    CODEC_ID_JV,
-    CODEC_ID_DFA,
-    CODEC_ID_WMV3IMAGE,
-    CODEC_ID_VC1IMAGE,
-#if LIBAVCODEC_VERSION_MAJOR == 53
-    CODEC_ID_G723_1_DEPRECATED,
-    CODEC_ID_G729_DEPRECATED,
-#endif
-    CODEC_ID_UTVIDEO_DEPRECATED,
-    CODEC_ID_BMV_VIDEO,
-    CODEC_ID_VBLE,
-    CODEC_ID_UTVIDEO = 0x800,
-
-    CODEC_ID_G2M        = MKBETAG( 0 ,'G','2','M'),
-
-    /* various PCM "codecs" */
-    CODEC_ID_FIRST_AUDIO = 0x10000,     ///< A dummy id pointing at the start of audio codecs
-    CODEC_ID_PCM_S16LE = 0x10000,
-    CODEC_ID_PCM_S16BE,
-    CODEC_ID_PCM_U16LE,
-    CODEC_ID_PCM_U16BE,
-    CODEC_ID_PCM_S8,
-    CODEC_ID_PCM_U8,
-    CODEC_ID_PCM_MULAW,
-    CODEC_ID_PCM_ALAW,
-    CODEC_ID_PCM_S32LE,
-    CODEC_ID_PCM_S32BE,
-    CODEC_ID_PCM_U32LE,
-    CODEC_ID_PCM_U32BE,
-    CODEC_ID_PCM_S24LE,
-    CODEC_ID_PCM_S24BE,
-    CODEC_ID_PCM_U24LE,
-    CODEC_ID_PCM_U24BE,
-    CODEC_ID_PCM_S24DAUD,
-    CODEC_ID_PCM_ZORK,
-    CODEC_ID_PCM_S16LE_PLANAR,
-    CODEC_ID_PCM_DVD,
-    CODEC_ID_PCM_F32BE,
-    CODEC_ID_PCM_F32LE,
-    CODEC_ID_PCM_F64BE,
-    CODEC_ID_PCM_F64LE,
-    CODEC_ID_PCM_BLURAY,
-    CODEC_ID_PCM_LXF,
-    CODEC_ID_S302M,
-    CODEC_ID_PCM_S8_PLANAR,
-
-    /* various ADPCM codecs */
-    CODEC_ID_ADPCM_IMA_QT = 0x11000,
-    CODEC_ID_ADPCM_IMA_WAV,
-    CODEC_ID_ADPCM_IMA_DK3,
-    CODEC_ID_ADPCM_IMA_DK4,
-    CODEC_ID_ADPCM_IMA_WS,
-    CODEC_ID_ADPCM_IMA_SMJPEG,
-    CODEC_ID_ADPCM_MS,
-    CODEC_ID_ADPCM_4XM,
-    CODEC_ID_ADPCM_XA,
-    CODEC_ID_ADPCM_ADX,
-    CODEC_ID_ADPCM_EA,
-    CODEC_ID_ADPCM_G726,
-    CODEC_ID_ADPCM_CT,
-    CODEC_ID_ADPCM_SWF,
-    CODEC_ID_ADPCM_YAMAHA,
-    CODEC_ID_ADPCM_SBPRO_4,
-    CODEC_ID_ADPCM_SBPRO_3,
-    CODEC_ID_ADPCM_SBPRO_2,
-    CODEC_ID_ADPCM_THP,
-    CODEC_ID_ADPCM_IMA_AMV,
-    CODEC_ID_ADPCM_EA_R1,
-    CODEC_ID_ADPCM_EA_R3,
-    CODEC_ID_ADPCM_EA_R2,
-    CODEC_ID_ADPCM_IMA_EA_SEAD,
-    CODEC_ID_ADPCM_IMA_EA_EACS,
-    CODEC_ID_ADPCM_EA_XAS,
-    CODEC_ID_ADPCM_EA_MAXIS_XA,
-    CODEC_ID_ADPCM_IMA_ISS,
-    CODEC_ID_ADPCM_G722,
-
-    /* AMR */
-    CODEC_ID_AMR_NB = 0x12000,
-    CODEC_ID_AMR_WB,
-
-    /* RealAudio codecs*/
-    CODEC_ID_RA_144 = 0x13000,
-    CODEC_ID_RA_288,
-
-    /* various DPCM codecs */
-    CODEC_ID_ROQ_DPCM = 0x14000,
-    CODEC_ID_INTERPLAY_DPCM,
-    CODEC_ID_XAN_DPCM,
-    CODEC_ID_SOL_DPCM,
-
-    /* audio codecs */
-    CODEC_ID_MP2 = 0x15000,
-    CODEC_ID_MP3, ///< preferred ID for decoding MPEG audio layer 1, 2 or 3
-    CODEC_ID_AAC,
-    CODEC_ID_AC3,
-    CODEC_ID_DTS,
-    CODEC_ID_VORBIS,
-    CODEC_ID_DVAUDIO,
-    CODEC_ID_WMAV1,
-    CODEC_ID_WMAV2,
-    CODEC_ID_MACE3,
-    CODEC_ID_MACE6,
-    CODEC_ID_VMDAUDIO,
-#if LIBAVCODEC_VERSION_MAJOR == 53
-    CODEC_ID_SONIC,
-    CODEC_ID_SONIC_LS,
-#endif
-    CODEC_ID_FLAC,
-    CODEC_ID_MP3ADU,
-    CODEC_ID_MP3ON4,
-    CODEC_ID_SHORTEN,
-    CODEC_ID_ALAC,
-    CODEC_ID_WESTWOOD_SND1,
-    CODEC_ID_GSM, ///< as in Berlin toast format
-    CODEC_ID_QDM2,
-    CODEC_ID_COOK,
-    CODEC_ID_TRUESPEECH,
-    CODEC_ID_TTA,
-    CODEC_ID_SMACKAUDIO,
-    CODEC_ID_QCELP,
-    CODEC_ID_WAVPACK,
-    CODEC_ID_DSICINAUDIO,
-    CODEC_ID_IMC,
-    CODEC_ID_MUSEPACK7,
-    CODEC_ID_MLP,
-    CODEC_ID_GSM_MS, /* as found in WAV */
-    CODEC_ID_ATRAC3,
-    CODEC_ID_VOXWARE,
-    CODEC_ID_APE,
-    CODEC_ID_NELLYMOSER,
-    CODEC_ID_MUSEPACK8,
-    CODEC_ID_SPEEX,
-    CODEC_ID_WMAVOICE,
-    CODEC_ID_WMAPRO,
-    CODEC_ID_WMALOSSLESS,
-    CODEC_ID_ATRAC3P,
-    CODEC_ID_EAC3,
-    CODEC_ID_SIPR,
-    CODEC_ID_MP1,
-    CODEC_ID_TWINVQ,
-    CODEC_ID_TRUEHD,
-    CODEC_ID_MP4ALS,
-    CODEC_ID_ATRAC1,
-    CODEC_ID_BINKAUDIO_RDFT,
-    CODEC_ID_BINKAUDIO_DCT,
-    CODEC_ID_AAC_LATM,
-    CODEC_ID_QDMC,
-    CODEC_ID_CELT,
-#if LIBAVCODEC_VERSION_MAJOR > 53
-    CODEC_ID_G723_1_DEPRECATED,
-    CODEC_ID_G729_DEPRECATED,
-    CODEC_ID_8SVX_EXP,
-    CODEC_ID_8SVX_FIB,
-#endif
-    CODEC_ID_BMV_AUDIO,
-    CODEC_ID_G729 = 0x15800,
-    CODEC_ID_G723_1= 0x15801,
-    CODEC_ID_8SVX_RAW   = MKBETAG('8','S','V','X'),
-
-    /* subtitle codecs */
-    CODEC_ID_FIRST_SUBTITLE = 0x17000,          ///< A dummy ID pointing at the start of subtitle codecs.
-    CODEC_ID_DVD_SUBTITLE = 0x17000,
-    CODEC_ID_DVB_SUBTITLE,
-    CODEC_ID_TEXT,  ///< raw UTF-8 text
-    CODEC_ID_XSUB,
-    CODEC_ID_SSA,
-    CODEC_ID_MOV_TEXT,
-    CODEC_ID_HDMV_PGS_SUBTITLE,
-    CODEC_ID_DVB_TELETEXT,
-    CODEC_ID_SRT,
-    CODEC_ID_MICRODVD   = MKBETAG('m','D','V','D'),
-
-    /* other specific kind of codecs (generally used for attachments) */
-    CODEC_ID_FIRST_UNKNOWN = 0x18000,           ///< A dummy ID pointing at the start of various fake codecs.
-    CODEC_ID_TTF = 0x18000,
-    CODEC_ID_BINTEXT    = MKBETAG('B','T','X','T'),
-    CODEC_ID_XBIN       = MKBETAG('X','B','I','N'),
-    CODEC_ID_IDF        = MKBETAG( 0 ,'I','D','F'),
-
-    CODEC_ID_PROBE = 0x19000, ///< codec_id is not known (like CODEC_ID_NONE) but lavf should attempt to identify it
-
-    CODEC_ID_MPEG2TS = 0x20000, /**< _FAKE_ codec to indicate a raw MPEG-2 TS
-                                * stream (only used by libavformat) */
-    CODEC_ID_MPEG4SYSTEMS = 0x20001, /**< _FAKE_ codec to indicate a MPEG-4 Systems
-                                * stream (only used by libavformat) */
-    CODEC_ID_FFMETADATA = 0x21000,   ///< Dummy codec for streams containing only metadata information.
-};
-
-#if FF_API_OLD_SAMPLE_FMT
-#define SampleFormat AVSampleFormat
-
-#define SAMPLE_FMT_NONE AV_SAMPLE_FMT_NONE
-#define SAMPLE_FMT_U8   AV_SAMPLE_FMT_U8
-#define SAMPLE_FMT_S16  AV_SAMPLE_FMT_S16
-#define SAMPLE_FMT_S32  AV_SAMPLE_FMT_S32
-#define SAMPLE_FMT_FLT  AV_SAMPLE_FMT_FLT
-#define SAMPLE_FMT_DBL  AV_SAMPLE_FMT_DBL
-#define SAMPLE_FMT_NB   AV_SAMPLE_FMT_NB
-#endif
-
-#if FF_API_OLD_AUDIOCONVERT
-#include "libavutil/audioconvert.h"
-
-/* Audio channel masks */
-#define CH_FRONT_LEFT            AV_CH_FRONT_LEFT
-#define CH_FRONT_RIGHT           AV_CH_FRONT_RIGHT
-#define CH_FRONT_CENTER          AV_CH_FRONT_CENTER
-#define CH_LOW_FREQUENCY         AV_CH_LOW_FREQUENCY
-#define CH_BACK_LEFT             AV_CH_BACK_LEFT
-#define CH_BACK_RIGHT            AV_CH_BACK_RIGHT
-#define CH_FRONT_LEFT_OF_CENTER  AV_CH_FRONT_LEFT_OF_CENTER
-#define CH_FRONT_RIGHT_OF_CENTER AV_CH_FRONT_RIGHT_OF_CENTER
-#define CH_BACK_CENTER           AV_CH_BACK_CENTER
-#define CH_SIDE_LEFT             AV_CH_SIDE_LEFT
-#define CH_SIDE_RIGHT            AV_CH_SIDE_RIGHT
-#define CH_TOP_CENTER            AV_CH_TOP_CENTER
-#define CH_TOP_FRONT_LEFT        AV_CH_TOP_FRONT_LEFT
-#define CH_TOP_FRONT_CENTER      AV_CH_TOP_FRONT_CENTER
-#define CH_TOP_FRONT_RIGHT       AV_CH_TOP_FRONT_RIGHT
-#define CH_TOP_BACK_LEFT         AV_CH_TOP_BACK_LEFT
-#define CH_TOP_BACK_CENTER       AV_CH_TOP_BACK_CENTER
-#define CH_TOP_BACK_RIGHT        AV_CH_TOP_BACK_RIGHT
-#define CH_STEREO_LEFT           AV_CH_STEREO_LEFT
-#define CH_STEREO_RIGHT          AV_CH_STEREO_RIGHT
-
-/** Channel mask value used for AVCodecContext.request_channel_layout
-    to indicate that the user requests the channel order of the decoder output
-    to be the native codec channel order. */
-#define CH_LAYOUT_NATIVE         AV_CH_LAYOUT_NATIVE
-
-/* Audio channel convenience macros */
-#define CH_LAYOUT_MONO           AV_CH_LAYOUT_MONO
-#define CH_LAYOUT_STEREO         AV_CH_LAYOUT_STEREO
-#define CH_LAYOUT_2_1            AV_CH_LAYOUT_2_1
-#define CH_LAYOUT_SURROUND       AV_CH_LAYOUT_SURROUND
-#define CH_LAYOUT_4POINT0        AV_CH_LAYOUT_4POINT0
-#define CH_LAYOUT_2_2            AV_CH_LAYOUT_2_2
-#define CH_LAYOUT_QUAD           AV_CH_LAYOUT_QUAD
-#define CH_LAYOUT_5POINT0        AV_CH_LAYOUT_5POINT0
-#define CH_LAYOUT_5POINT1        AV_CH_LAYOUT_5POINT1
-#define CH_LAYOUT_5POINT0_BACK   AV_CH_LAYOUT_5POINT0_BACK
-#define CH_LAYOUT_5POINT1_BACK   AV_CH_LAYOUT_5POINT1_BACK
-#define CH_LAYOUT_7POINT0        AV_CH_LAYOUT_7POINT0
-#define CH_LAYOUT_7POINT1        AV_CH_LAYOUT_7POINT1
-#define CH_LAYOUT_7POINT1_WIDE   AV_CH_LAYOUT_7POINT1_WIDE
-#define CH_LAYOUT_STEREO_DOWNMIX AV_CH_LAYOUT_STEREO_DOWNMIX
-#endif
-
-#if FF_API_OLD_DECODE_AUDIO
-/* in bytes */
-#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio
-#endif
-
-/**
- * Required number of additionally allocated bytes at the end of the input bitstream for decoding.
- * This is mainly needed because some optimized bitstream readers read
- * 32 or 64 bit at once and could read over the end.<br>
- * Note: If the first 23 bits of the additional bytes are not 0, then damaged
- * MPEG bitstreams could cause overread and segfault.
- */
-#define FF_INPUT_BUFFER_PADDING_SIZE 16
-
-/**
- * minimum encoding buffer size
- * Used to avoid some checks during header writing.
- */
-#define FF_MIN_BUFFER_SIZE 16384
-
-
-/**
- * motion estimation type.
- */
-enum Motion_Est_ID {
-    ME_ZERO = 1,    ///< no search, that is use 0,0 vector whenever one is needed
-    ME_FULL,
-    ME_LOG,
-    ME_PHODS,
-    ME_EPZS,        ///< enhanced predictive zonal search
-    ME_X1,          ///< reserved for experiments
-    ME_HEX,         ///< hexagon based search
-    ME_UMH,         ///< uneven multi-hexagon search
-    ME_ITER,        ///< iterative search
-    ME_TESA,        ///< transformed exhaustive search algorithm
-};
-
-enum AVDiscard{
-    /* We leave some space between them for extensions (drop some
-     * keyframes for intra-only or drop just some bidir frames). */
-    AVDISCARD_NONE   =-16, ///< discard nothing
-    AVDISCARD_DEFAULT=  0, ///< discard useless packets like 0 size packets in avi
-    AVDISCARD_NONREF =  8, ///< discard all non reference
-    AVDISCARD_BIDIR  = 16, ///< discard all bidirectional frames
-    AVDISCARD_NONKEY = 32, ///< discard all frames except keyframes
-    AVDISCARD_ALL    = 48, ///< discard all
-};
-
-enum AVColorPrimaries{
-    AVCOL_PRI_BT709      =1, ///< also ITU-R BT1361 / IEC 61966-2-4 / SMPTE RP177 Annex B
-    AVCOL_PRI_UNSPECIFIED=2,
-    AVCOL_PRI_BT470M     =4,
-    AVCOL_PRI_BT470BG    =5, ///< also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM
-    AVCOL_PRI_SMPTE170M  =6, ///< also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC
-    AVCOL_PRI_SMPTE240M  =7, ///< functionally identical to above
-    AVCOL_PRI_FILM       =8,
-    AVCOL_PRI_NB           , ///< Not part of ABI
-};
-
-enum AVColorTransferCharacteristic{
-    AVCOL_TRC_BT709      =1, ///< also ITU-R BT1361
-    AVCOL_TRC_UNSPECIFIED=2,
-    AVCOL_TRC_GAMMA22    =4, ///< also ITU-R BT470M / ITU-R BT1700 625 PAL & SECAM
-    AVCOL_TRC_GAMMA28    =5, ///< also ITU-R BT470BG
-    AVCOL_TRC_SMPTE240M  =7,
-    AVCOL_TRC_NB           , ///< Not part of ABI
-};
-
-enum AVColorSpace{
-    AVCOL_SPC_RGB        =0,
-    AVCOL_SPC_BT709      =1, ///< also ITU-R BT1361 / IEC 61966-2-4 xvYCC709 / SMPTE RP177 Annex B
-    AVCOL_SPC_UNSPECIFIED=2,
-    AVCOL_SPC_FCC        =4,
-    AVCOL_SPC_BT470BG    =5, ///< also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM / IEC 61966-2-4 xvYCC601
-    AVCOL_SPC_SMPTE170M  =6, ///< also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC / functionally identical to above
-    AVCOL_SPC_SMPTE240M  =7,
-    AVCOL_SPC_YCGCO      =8,
-    AVCOL_SPC_NB           , ///< Not part of ABI
-};
-
-enum AVColorRange{
-    AVCOL_RANGE_UNSPECIFIED=0,
-    AVCOL_RANGE_MPEG       =1, ///< the normal 219*2^(n-8) "MPEG" YUV ranges
-    AVCOL_RANGE_JPEG       =2, ///< the normal     2^n-1   "JPEG" YUV ranges
-    AVCOL_RANGE_NB           , ///< Not part of ABI
-};
-
-/**
- *  X   X      3 4 X      X are luma samples,
- *             1 2        1-6 are possible chroma positions
- *  X   X      5 6 X      0 is undefined/unknown position
- */
-enum AVChromaLocation{
-    AVCHROMA_LOC_UNSPECIFIED=0,
-    AVCHROMA_LOC_LEFT       =1, ///< mpeg2/4, h264 default
-    AVCHROMA_LOC_CENTER     =2, ///< mpeg1, jpeg, h263
-    AVCHROMA_LOC_TOPLEFT    =3, ///< DV
-    AVCHROMA_LOC_TOP        =4,
-    AVCHROMA_LOC_BOTTOMLEFT =5,
-    AVCHROMA_LOC_BOTTOM     =6,
-    AVCHROMA_LOC_NB           , ///< Not part of ABI
-};
-
-#if FF_API_FLAC_GLOBAL_OPTS
-/**
- * LPC analysis type
- */
-enum AVLPCType {
-    AV_LPC_TYPE_DEFAULT     = -1, ///< use the codec default LPC type
-    AV_LPC_TYPE_NONE        =  0, ///< do not use LPC prediction or use all zero coefficients
-    AV_LPC_TYPE_FIXED       =  1, ///< fixed LPC coefficients
-    AV_LPC_TYPE_LEVINSON    =  2, ///< Levinson-Durbin recursion
-    AV_LPC_TYPE_CHOLESKY    =  3, ///< Cholesky factorization
-    AV_LPC_TYPE_NB              , ///< Not part of ABI
-};
-#endif
-
-enum AVAudioServiceType {
-    AV_AUDIO_SERVICE_TYPE_MAIN              = 0,
-    AV_AUDIO_SERVICE_TYPE_EFFECTS           = 1,
-    AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED = 2,
-    AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED  = 3,
-    AV_AUDIO_SERVICE_TYPE_DIALOGUE          = 4,
-    AV_AUDIO_SERVICE_TYPE_COMMENTARY        = 5,
-    AV_AUDIO_SERVICE_TYPE_EMERGENCY         = 6,
-    AV_AUDIO_SERVICE_TYPE_VOICE_OVER        = 7,
-    AV_AUDIO_SERVICE_TYPE_KARAOKE           = 8,
-    AV_AUDIO_SERVICE_TYPE_NB                   , ///< Not part of ABI
-};
-
-typedef struct RcOverride{
-    int start_frame;
-    int end_frame;
-    int qscale; // If this is 0 then quality_factor will be used instead.
-    float quality_factor;
-} RcOverride;
-
-#define FF_MAX_B_FRAMES 16
-
-/* encoding support
-   These flags can be passed in AVCodecContext.flags before initialization.
-   Note: Not everything is supported yet.
-*/
-
-#define CODEC_FLAG_QSCALE 0x0002  ///< Use fixed qscale.
-#define CODEC_FLAG_4MV    0x0004  ///< 4 MV per MB allowed / advanced prediction for H.263.
-#define CODEC_FLAG_QPEL   0x0010  ///< Use qpel MC.
-#define CODEC_FLAG_GMC    0x0020  ///< Use GMC.
-#define CODEC_FLAG_MV0    0x0040  ///< Always try a MB with MV=<0,0>.
-/**
- * The parent program guarantees that the input for B-frames containing
- * streams is not written to for at least s->max_b_frames+1 frames, if
- * this is not set the input will be copied.
- */
-#define CODEC_FLAG_INPUT_PRESERVED 0x0100
-#define CODEC_FLAG_PASS1           0x0200   ///< Use internal 2pass ratecontrol in first pass mode.
-#define CODEC_FLAG_PASS2           0x0400   ///< Use internal 2pass ratecontrol in second pass mode.
-#define CODEC_FLAG_GRAY            0x2000   ///< Only decode/encode grayscale.
-#define CODEC_FLAG_EMU_EDGE        0x4000   ///< Don't draw edges.
-#define CODEC_FLAG_PSNR            0x8000   ///< error[?] variables will be set during encoding.
-#define CODEC_FLAG_TRUNCATED       0x00010000 /** Input bitstream might be truncated at a random
-                                                  location instead of only at frame boundaries. */
-#define CODEC_FLAG_NORMALIZE_AQP  0x00020000 ///< Normalize adaptive quantization.
-#define CODEC_FLAG_INTERLACED_DCT 0x00040000 ///< Use interlaced DCT.
-#define CODEC_FLAG_LOW_DELAY      0x00080000 ///< Force low delay.
-#define CODEC_FLAG_GLOBAL_HEADER  0x00400000 ///< Place global headers in extradata instead of every keyframe.
-#define CODEC_FLAG_BITEXACT       0x00800000 ///< Use only bitexact stuff (except (I)DCT).
-/* Fx : Flag for h263+ extra options */
-#define CODEC_FLAG_AC_PRED        0x01000000 ///< H.263 advanced intra coding / MPEG-4 AC prediction
-#define CODEC_FLAG_CBP_RD         0x04000000 ///< Use rate distortion optimization for cbp.
-#define CODEC_FLAG_QP_RD          0x08000000 ///< Use rate distortion optimization for qp selectioon.
-#define CODEC_FLAG_LOOP_FILTER    0x00000800 ///< loop filter
-#define CODEC_FLAG_INTERLACED_ME  0x20000000 ///< interlaced motion estimation
-#define CODEC_FLAG_CLOSED_GOP     0x80000000
-#define CODEC_FLAG2_FAST          0x00000001 ///< Allow non spec compliant speedup tricks.
-#define CODEC_FLAG2_STRICT_GOP    0x00000002 ///< Strictly enforce GOP size.
-#define CODEC_FLAG2_NO_OUTPUT     0x00000004 ///< Skip bitstream encoding.
-#define CODEC_FLAG2_LOCAL_HEADER  0x00000008 ///< Place global headers at every keyframe instead of in extradata.
-#define CODEC_FLAG2_SKIP_RD       0x00004000 ///< RD optimal MB level residual skipping
-#define CODEC_FLAG2_CHUNKS        0x00008000 ///< Input bitstream might be truncated at a packet boundaries instead of only at frame boundaries.
-#define CODEC_FLAG2_SHOW_ALL      0x00400000 ///< Show all frames before the first keyframe
-/**
- * @defgroup deprecated_flags Deprecated codec flags
- * Use corresponding private codec options instead.
- * @{
- */
-#if FF_API_MPEGVIDEO_GLOBAL_OPTS
-#define CODEC_FLAG_OBMC           0x00000001 ///< OBMC
-#define CODEC_FLAG_H263P_AIV      0x00000008 ///< H.263 alternative inter VLC
-#define CODEC_FLAG_PART   0x0080  ///< Use data partitioning.
-#define CODEC_FLAG_ALT_SCAN       0x00100000 ///< Use alternate scan.
-#define CODEC_FLAG_H263P_UMV      0x02000000 ///< unlimited motion vector
-#define CODEC_FLAG_H263P_SLICE_STRUCT 0x10000000
-#define CODEC_FLAG_SVCD_SCAN_OFFSET 0x40000000 ///< Will reserve space for SVCD scan offset user data.
-#define CODEC_FLAG2_INTRA_VLC     0x00000800 ///< Use MPEG-2 intra VLC table.
-#define CODEC_FLAG2_DROP_FRAME_TIMECODE 0x00002000 ///< timecode is in drop frame format.
-#define CODEC_FLAG2_NON_LINEAR_QUANT 0x00010000 ///< Use MPEG-2 nonlinear quantizer.
-#endif
-#if FF_API_MJPEG_GLOBAL_OPTS
-#define CODEC_FLAG_EXTERN_HUFF     0x1000   ///< Use external Huffman table (for MJPEG).
-#endif
-#if FF_API_X264_GLOBAL_OPTS
-#define CODEC_FLAG2_BPYRAMID      0x00000010 ///< H.264 allow B-frames to be used as references.
-#define CODEC_FLAG2_WPRED         0x00000020 ///< H.264 weighted biprediction for B-frames
-#define CODEC_FLAG2_MIXED_REFS    0x00000040 ///< H.264 one reference per partition, as opposed to one reference per macroblock
-#define CODEC_FLAG2_8X8DCT        0x00000080 ///< H.264 high profile 8x8 transform
-#define CODEC_FLAG2_FASTPSKIP     0x00000100 ///< H.264 fast pskip
-#define CODEC_FLAG2_AUD           0x00000200 ///< H.264 access unit delimiters
-#define CODEC_FLAG2_BRDO          0x00000400 ///< B-frame rate-distortion optimization
-#define CODEC_FLAG2_MBTREE        0x00040000 ///< Use macroblock tree ratecontrol (x264 only)
-#define CODEC_FLAG2_PSY           0x00080000 ///< Use psycho visual optimizations.
-#define CODEC_FLAG2_SSIM          0x00100000 ///< Compute SSIM during encoding, error[] values are undefined.
-#define CODEC_FLAG2_INTRA_REFRESH 0x00200000 ///< Use periodic insertion of intra blocks instead of keyframes.
-#endif
-#if FF_API_SNOW_GLOBAL_OPTS
-#define CODEC_FLAG2_MEMC_ONLY     0x00001000 ///< Only do ME/MC (I frames -> ref, P frame -> ME+MC).
-#endif
-#if FF_API_LAME_GLOBAL_OPTS
-#define CODEC_FLAG2_BIT_RESERVOIR 0x00020000 ///< Use a bit reservoir when encoding if possible
-#endif
-/**
- * @}
- */
-
-/* Unsupported options :
- *              Syntax Arithmetic coding (SAC)
- *              Reference Picture Selection
- *              Independent Segment Decoding */
-/* /Fx */
-/* codec capabilities */
-
-#define CODEC_CAP_DRAW_HORIZ_BAND 0x0001 ///< Decoder can use draw_horiz_band callback.
-/**
- * Codec uses get_buffer() for allocating buffers and supports custom allocators.
- * If not set, it might not use get_buffer() at all or use operations that
- * assume the buffer was allocated by avcodec_default_get_buffer.
- */
-#define CODEC_CAP_DR1             0x0002
-#if FF_API_PARSE_FRAME
-/* If 'parse_only' field is true, then avcodec_parse_frame() can be used. */
-#define CODEC_CAP_PARSE_ONLY      0x0004
-#endif
-#define CODEC_CAP_TRUNCATED       0x0008
-/* Codec can export data for HW decoding (XvMC). */
-#define CODEC_CAP_HWACCEL         0x0010
-/**
- * Codec has a nonzero delay and needs to be fed with avpkt->data=NULL,
- * avpkt->size=0 at the end to get the delayed data until the decoder no longer
- * returns frames. If this is not set, the codec is guaranteed to never be fed
- * with NULL data.
- */
-#define CODEC_CAP_DELAY           0x0020
-/**
- * Codec can be fed a final frame with a smaller size.
- * This can be used to prevent truncation of the last audio samples.
- */
-#define CODEC_CAP_SMALL_LAST_FRAME 0x0040
-/**
- * Codec can export data for HW decoding (VDPAU).
- */
-#define CODEC_CAP_HWACCEL_VDPAU    0x0080
-/**
- * Codec can output multiple frames per AVPacket
- * Normally demuxers return one frame at a time, demuxers which do not do
- * are connected to a parser to split what they return into proper frames.
- * This flag is reserved to the very rare category of codecs which have a
- * bitstream that cannot be split into frames without timeconsuming
- * operations like full decoding. Demuxers carring such bitstreams thus
- * may return multiple frames in a packet. This has many disadvantages like
- * prohibiting stream copy in many cases thus it should only be considered
- * as a last resort.
- */
-#define CODEC_CAP_SUBFRAMES        0x0100
-/**
- * Codec is experimental and is thus avoided in favor of non experimental
- * encoders
- */
-#define CODEC_CAP_EXPERIMENTAL     0x0200
-/**
- * Codec should fill in channel configuration and samplerate instead of container
- */
-#define CODEC_CAP_CHANNEL_CONF     0x0400
-
-/**
- * Codec is able to deal with negative linesizes
- */
-#define CODEC_CAP_NEG_LINESIZES    0x0800
-
-/**
- * Codec supports frame-level multithreading.
- */
-#define CODEC_CAP_FRAME_THREADS    0x1000
-/**
- * Codec supports slice-based (or partition-based) multithreading.
- */
-#define CODEC_CAP_SLICE_THREADS    0x2000
-/**
- * Codec is lossless.
- */
-#define CODEC_CAP_LOSSLESS         0x80000000
-
-//The following defines may change, don't expect compatibility if you use them.
-#define MB_TYPE_INTRA4x4   0x0001
-#define MB_TYPE_INTRA16x16 0x0002 //FIXME H.264-specific
-#define MB_TYPE_INTRA_PCM  0x0004 //FIXME H.264-specific
-#define MB_TYPE_16x16      0x0008
-#define MB_TYPE_16x8       0x0010
-#define MB_TYPE_8x16       0x0020
-#define MB_TYPE_8x8        0x0040
-#define MB_TYPE_INTERLACED 0x0080
-#define MB_TYPE_DIRECT2    0x0100 //FIXME
-#define MB_TYPE_ACPRED     0x0200
-#define MB_TYPE_GMC        0x0400
-#define MB_TYPE_SKIP       0x0800
-#define MB_TYPE_P0L0       0x1000
-#define MB_TYPE_P1L0       0x2000
-#define MB_TYPE_P0L1       0x4000
-#define MB_TYPE_P1L1       0x8000
-#define MB_TYPE_L0         (MB_TYPE_P0L0 | MB_TYPE_P1L0)
-#define MB_TYPE_L1         (MB_TYPE_P0L1 | MB_TYPE_P1L1)
-#define MB_TYPE_L0L1       (MB_TYPE_L0   | MB_TYPE_L1)
-#define MB_TYPE_QUANT      0x00010000
-#define MB_TYPE_CBP        0x00020000
-//Note bits 24-31 are reserved for codec specific use (h264 ref0, mpeg1 0mv, ...)
-
-/**
- * Pan Scan area.
- * This specifies the area which should be displayed.
- * Note there may be multiple such areas for one frame.
- */
-typedef struct AVPanScan{
-    /**
-     * id
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    int id;
-
-    /**
-     * width and height in 1/16 pel
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    int width;
-    int height;
-
-    /**
-     * position of the top left corner in 1/16 pel for up to 3 fields/frames
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    int16_t position[3][2];
-}AVPanScan;
-
-#define FF_QSCALE_TYPE_MPEG1 0
-#define FF_QSCALE_TYPE_MPEG2 1
-#define FF_QSCALE_TYPE_H264  2
-#define FF_QSCALE_TYPE_VP56  3
-
-#define FF_BUFFER_TYPE_INTERNAL 1
-#define FF_BUFFER_TYPE_USER     2 ///< direct rendering buffers (image is (de)allocated by user)
-#define FF_BUFFER_TYPE_SHARED   4 ///< Buffer from somewhere else; don't deallocate image (data/base), all other tables are not shared.
-#define FF_BUFFER_TYPE_COPY     8 ///< Just a (modified) copy of some other buffer, don't deallocate anything.
-
-#if FF_API_OLD_FF_PICT_TYPES
-/* DEPRECATED, directly use the AV_PICTURE_TYPE_* enum values */
-#define FF_I_TYPE  AV_PICTURE_TYPE_I  ///< Intra
-#define FF_P_TYPE  AV_PICTURE_TYPE_P  ///< Predicted
-#define FF_B_TYPE  AV_PICTURE_TYPE_B  ///< Bi-dir predicted
-#define FF_S_TYPE  AV_PICTURE_TYPE_S  ///< S(GMC)-VOP MPEG4
-#define FF_SI_TYPE AV_PICTURE_TYPE_SI ///< Switching Intra
-#define FF_SP_TYPE AV_PICTURE_TYPE_SP ///< Switching Predicted
-#define FF_BI_TYPE AV_PICTURE_TYPE_BI
-#endif
-
-#define FF_BUFFER_HINTS_VALID    0x01 // Buffer hints value is meaningful (if 0 ignore).
-#define FF_BUFFER_HINTS_READABLE 0x02 // Codec will read from buffer.
-#define FF_BUFFER_HINTS_PRESERVE 0x04 // User must not alter buffer content.
-#define FF_BUFFER_HINTS_REUSABLE 0x08 // Codec will reuse the buffer (update).
-
-enum AVPacketSideDataType {
-    AV_PKT_DATA_PALETTE,
-};
-
-typedef struct AVPacket {
-    /**
-     * Presentation timestamp in AVStream->time_base units; the time at which
-     * the decompressed packet will be presented to the user.
-     * Can be AV_NOPTS_VALUE if it is not stored in the file.
-     * pts MUST be larger or equal to dts as presentation cannot happen before
-     * decompression, unless one wants to view hex dumps. Some formats misuse
-     * the terms dts and pts/cts to mean something different. Such timestamps
-     * must be converted to true pts/dts before they are stored in AVPacket.
-     */
-    int64_t pts;
-    /**
-     * Decompression timestamp in AVStream->time_base units; the time at which
-     * the packet is decompressed.
-     * Can be AV_NOPTS_VALUE if it is not stored in the file.
-     */
-    int64_t dts;
-    uint8_t *data;
-    int   size;
-    int   stream_index;
-    /**
-     * A combination of AV_PKT_FLAG values
-     */
-    int   flags;
-    /**
-     * Additional packet data that can be provided by the container.
-     * Packet can contain several types of side information.
-     */
-    struct {
-        uint8_t *data;
-        int      size;
-        enum AVPacketSideDataType type;
-    } *side_data;
-    int side_data_elems;
-
-    /**
-     * Duration of this packet in AVStream->time_base units, 0 if unknown.
-     * Equals next_pts - this_pts in presentation order.
-     */
-    int   duration;
-    void  (*destruct)(struct AVPacket *);
-    void  *priv;
-    int64_t pos;                            ///< byte position in stream, -1 if unknown
-
-    /**
-     * Time difference in AVStream->time_base units from the pts of this
-     * packet to the point at which the output from the decoder has converged
-     * independent from the availability of previous frames. That is, the
-     * frames are virtually identical no matter if decoding started from
-     * the very first frame or from this keyframe.
-     * Is AV_NOPTS_VALUE if unknown.
-     * This field is not the display duration of the current packet.
-     * This field has no meaning if the packet does not have AV_PKT_FLAG_KEY
-     * set.
-     *
-     * The purpose of this field is to allow seeking in streams that have no
-     * keyframes in the conventional sense. It corresponds to the
-     * recovery point SEI in H.264 and match_time_delta in NUT. It is also
-     * essential for some types of subtitle streams to ensure that all
-     * subtitles are correctly displayed after seeking.
-     */
-    int64_t convergence_duration;
-} AVPacket;
-#define AV_PKT_FLAG_KEY     0x0001 ///< The packet contains a keyframe
-#define AV_PKT_FLAG_CORRUPT 0x0002 ///< The packet content is corrupted
-
-/**
- * Audio Video Frame.
- * New fields can be added to the end of AVFRAME with minor version
- * bumps. Similarly fields that are marked as to be only accessed by
- * av_opt_ptr() can be reordered. This allows 2 forks to add fields
- * without breaking compatibility with each other.
- * Removal, reordering and changes in the remaining cases require
- * a major version bump.
- * sizeof(AVFrame) must not be used outside libavcodec.
- */
-typedef struct AVFrame {
-#if FF_API_DATA_POINTERS
-#define AV_NUM_DATA_POINTERS 4
-#else
-#define AV_NUM_DATA_POINTERS 8
-#endif
-    /**
-     * pointer to the picture/channel planes.
-     * This might be different from the first allocated byte
-     * - encoding: Set by user
-     * - decoding: set by AVCodecContext.get_buffer()
-     */
-    uint8_t *data[AV_NUM_DATA_POINTERS];
-
-    /**
-     * Size, in bytes, of the data for each picture/channel plane.
-     *
-     * For audio, only linesize[0] may be set. For planar audio, each channel
-     * plane must be the same size.
-     *
-     * - encoding: Set by user (video only)
-     * - decoding: set by AVCodecContext.get_buffer()
-     */
-    int linesize[AV_NUM_DATA_POINTERS];
-
-    /**
-     * pointer to the first allocated byte of the picture. Can be used in get_buffer/release_buffer.
-     * This isn't used by libavcodec unless the default get/release_buffer() is used.
-     * - encoding:
-     * - decoding:
-     */
-    uint8_t *base[AV_NUM_DATA_POINTERS];
-    /**
-     * 1 -> keyframe, 0-> not
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by libavcodec.
-     */
-    int key_frame;
-
-    /**
-     * Picture type of the frame, see ?_TYPE below.
-     * - encoding: Set by libavcodec. for coded_picture (and set by user for input).
-     * - decoding: Set by libavcodec.
-     */
-    enum AVPictureType pict_type;
-
-    /**
-     * presentation timestamp in time_base units (time when frame should be shown to user)
-     * If AV_NOPTS_VALUE then frame_rate = 1/time_base will be assumed.
-     * - encoding: MUST be set by user.
-     * - decoding: Set by libavcodec.
-     */
-    int64_t pts;
-
-    /**
-     * picture number in bitstream order
-     * - encoding: set by
-     * - decoding: Set by libavcodec.
-     */
-    int coded_picture_number;
-    /**
-     * picture number in display order
-     * - encoding: set by
-     * - decoding: Set by libavcodec.
-     */
-    int display_picture_number;
-
-    /**
-     * quality (between 1 (good) and FF_LAMBDA_MAX (bad))
-     * - encoding: Set by libavcodec. for coded_picture (and set by user for input).
-     * - decoding: Set by libavcodec.
-     */
-    int quality;
-
-    /**
-     * buffer age (1->was last buffer and dint change, 2->..., ...).
-     * Set to INT_MAX if the buffer has not been used yet.
-     * - encoding: unused
-     * - decoding: MUST be set by get_buffer() for video.
-     */
-    int age;
-
-    /**
-     * is this picture used as reference
-     * The values for this are the same as the MpegEncContext.picture_structure
-     * variable, that is 1->top field, 2->bottom field, 3->frame/both fields.
-     * Set to 4 for delayed, non-reference frames.
-     * - encoding: unused
-     * - decoding: Set by libavcodec. (before get_buffer() call)).
-     */
-    int reference;
-
-    /**
-     * QP table
-     * - encoding: unused
-     * - decoding: Set by libavcodec.
-     */
-    int8_t *qscale_table;
-    /**
-     * QP store stride
-     * - encoding: unused
-     * - decoding: Set by libavcodec.
-     */
-    int qstride;
-
-    /**
-     * mbskip_table[mb]>=1 if MB didn't change
-     * stride= mb_width = (width+15)>>4
-     * - encoding: unused
-     * - decoding: Set by libavcodec.
-     */
-    uint8_t *mbskip_table;
-
-    /**
-     * motion vector table
-     * @code
-     * example:
-     * int mv_sample_log2= 4 - motion_subsample_log2;
-     * int mb_width= (width+15)>>4;
-     * int mv_stride= (mb_width << mv_sample_log2) + 1;
-     * motion_val[direction][x + y*mv_stride][0->mv_x, 1->mv_y];
-     * @endcode
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    int16_t (*motion_val[2])[2];
-
-    /**
-     * macroblock type table
-     * mb_type_base + mb_width + 2
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    uint32_t *mb_type;
-
-    /**
-     * log2 of the size of the block which a single vector in motion_val represents:
-     * (4->16x16, 3->8x8, 2-> 4x4, 1-> 2x2)
-     * - encoding: unused
-     * - decoding: Set by libavcodec.
-     */
-    uint8_t motion_subsample_log2;
-
-    /**
-     * for some private data of the user
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    void *opaque;
-
-    /**
-     * error
-     * - encoding: Set by libavcodec. if flags&CODEC_FLAG_PSNR.
-     * - decoding: unused
-     */
-    uint64_t error[AV_NUM_DATA_POINTERS];
-
-    /**
-     * type of the buffer (to keep track of who has to deallocate data[*])
-     * - encoding: Set by the one who allocates it.
-     * - decoding: Set by the one who allocates it.
-     * Note: User allocated (direct rendering) & internal buffers cannot coexist currently.
-     */
-    int type;
-
-    /**
-     * When decoding, this signals how much the picture must be delayed.
-     * extra_delay = repeat_pict / (2*fps)
-     * - encoding: unused
-     * - decoding: Set by libavcodec.
-     */
-    int repeat_pict;
-
-    /**
-     *
-     */
-    int qscale_type;
-
-    /**
-     * The content of the picture is interlaced.
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec. (default 0)
-     */
-    int interlaced_frame;
-
-    /**
-     * If the content is interlaced, is top field displayed first.
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    int top_field_first;
-
-    /**
-     * Pan scan.
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    AVPanScan *pan_scan;
-
-    /**
-     * Tell user application that palette has changed from previous frame.
-     * - encoding: ??? (no palette-enabled encoder yet)
-     * - decoding: Set by libavcodec. (default 0).
-     */
-    int palette_has_changed;
-
-    /**
-     * codec suggestion on buffer type if != 0
-     * - encoding: unused
-     * - decoding: Set by libavcodec. (before get_buffer() call)).
-     */
-    int buffer_hints;
-
-    /**
-     * DCT coefficients
-     * - encoding: unused
-     * - decoding: Set by libavcodec.
-     */
-    short *dct_coeff;
-
-    /**
-     * motion reference frame index
-     * the order in which these are stored can depend on the codec.
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    int8_t *ref_index[2];
-
-    /**
-     * reordered opaque 64bit (generally an integer or a double precision float
-     * PTS but can be anything).
-     * The user sets AVCodecContext.reordered_opaque to represent the input at
-     * that time,
-     * the decoder reorders values as needed and sets AVFrame.reordered_opaque
-     * to exactly one of the values provided by the user through AVCodecContext.reordered_opaque
-     * @deprecated in favor of pkt_pts
-     * - encoding: unused
-     * - decoding: Read by user.
-     */
-    int64_t reordered_opaque;
-
-    /**
-     * hardware accelerator private data (FFmpeg-allocated)
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    void *hwaccel_picture_private;
-
-    /**
-     * reordered pts from the last AVPacket that has been input into the decoder
-     * - encoding: unused
-     * - decoding: Read by user.
-     */
-    int64_t pkt_pts;
-
-    /**
-     * dts from the last AVPacket that has been input into the decoder
-     * - encoding: unused
-     * - decoding: Read by user.
-     */
-    int64_t pkt_dts;
-
-    /**
-     * the AVCodecContext which ff_thread_get_buffer() was last called on
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by libavcodec.
-     */
-    struct AVCodecContext *owner;
-
-    /**
-     * used by multithreading to store frame-specific info
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by libavcodec.
-     */
-    void *thread_opaque;
-
-    /**
-     * number of audio samples (per channel) described by this frame
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    int nb_samples;
-
-    /**
-     * pointers to the data planes/channels.
-     *
-     * For video, this should simply point to data[].
-     *
-     * For planar audio, each channel has a separate data pointer, and
-     * linesize[0] contains the size of each channel buffer.
-     * For packed audio, there is just one data pointer, and linesize[0]
-     * contains the total size of the buffer for all channels.
-     *
-     * Note: Both data and extended_data will always be set by get_buffer(),
-     * but for planar audio with more channels that can fit in data,
-     * extended_data must be used by the decoder in order to access all
-     * channels.
-     *
-     * encoding: unused
-     * decoding: set by AVCodecContext.get_buffer()
-     */
-    uint8_t **extended_data;
-
-    /**
-     * frame timestamp estimated using various heuristics, in stream time base
-     * Code outside libavcodec should access this field using:
-     *  av_opt_ptr(avcodec_get_frame_class(), frame, "best_effort_timestamp");
-     * - encoding: unused
-     * - decoding: set by libavcodec, read by user.
-     */
-    int64_t best_effort_timestamp;
-
-    /**
-     * reordered pos from the last AVPacket that has been input into the decoder
-     * Code outside libavcodec should access this field using:
-     *  av_opt_ptr(avcodec_get_frame_class(), frame, "pkt_pos");
-     * - encoding: unused
-     * - decoding: Read by user.
-     */
-    int64_t pkt_pos;
-
-    /**
-     * reordered sample aspect ratio for the video frame, 0/1 if unknown\unspecified
-     * Code outside libavcodec should access this field using:
-     *  av_opt_ptr(avcodec_get_frame_class(), frame, "sample_aspect_ratio");
-     * - encoding: unused
-     * - decoding: Read by user.
-     */
-    AVRational sample_aspect_ratio;
-
-    /**
-     * width and height of the video frame
-     * Code outside libavcodec should access this field using:
-     *  av_opt_ptr(avcodec_get_frame_class(), frame, "width");
-     * - encoding: unused
-     * - decoding: Read by user.
-     */
-    int width, height;
-
-    /**
-     * format of the frame, -1 if unknown or unset
-     * It should be cast to the corresponding enum (enum PixelFormat
-     * for video, enum AVSampleFormat for audio)
-     * Code outside libavcodec should access this field using:
-     *  av_opt_ptr(avcodec_get_frame_class(), frame, "format");
-     * - encoding: unused
-     * - decoding: Read by user.
-     */
-    int format;
-
-} AVFrame;
-
-struct AVCodecInternal;
-
-/**
- * main external API structure.
- * New fields can be added to the end with minor version bumps.
- * Removal, reordering and changes to existing fields require a major
- * version bump.
- * Please use AVOptions (av_opt* / av_set/get*()) to access these fields from user
- * applications.
- * sizeof(AVCodecContext) must not be used outside libav*.
- */
-typedef struct AVCodecContext {
-    /**
-     * information on struct for av_log
-     * - set by avcodec_alloc_context3
-     */
-    const AVClass *av_class;
-    /**
-     * the average bitrate
-     * - encoding: Set by user; unused for constant quantizer encoding.
-     * - decoding: Set by libavcodec. 0 or some bitrate if this info is available in the stream.
-     */
-    int bit_rate;
-
-    /**
-     * number of bits the bitstream is allowed to diverge from the reference.
-     *           the reference can be CBR (for CBR pass1) or VBR (for pass2)
-     * - encoding: Set by user; unused for constant quantizer encoding.
-     * - decoding: unused
-     */
-    int bit_rate_tolerance;
-
-    /**
-     * CODEC_FLAG_*.
-     * - encoding: Set by user.
-     * - decoding: Set by user.
-     */
-    int flags;
-
-    /**
-     * Some codecs need additional format info. It is stored here.
-     * If any muxer uses this then ALL demuxers/parsers AND encoders for the
-     * specific codec MUST set it correctly otherwise stream copy breaks.
-     * In general use of this field by muxers is not recommanded.
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by libavcodec. (FIXME: Is this OK?)
-     */
-    int sub_id;
-
-    /**
-     * Motion estimation algorithm used for video coding.
-     * 1 (zero), 2 (full), 3 (log), 4 (phods), 5 (epzs), 6 (x1), 7 (hex),
-     * 8 (umh), 9 (iter), 10 (tesa) [7, 8, 10 are x264 specific, 9 is snow specific]
-     * - encoding: MUST be set by user.
-     * - decoding: unused
-     */
-    int me_method;
-
-    /**
-     * some codecs need / can use extradata like Huffman tables.
-     * mjpeg: Huffman tables
-     * rv10: additional flags
-     * mpeg4: global headers (they can be in the bitstream or here)
-     * The allocated memory should be FF_INPUT_BUFFER_PADDING_SIZE bytes larger
-     * than extradata_size to avoid prolems if it is read with the bitstream reader.
-     * The bytewise contents of extradata must not depend on the architecture or CPU endianness.
-     * - encoding: Set/allocated/freed by libavcodec.
-     * - decoding: Set/allocated/freed by user.
-     */
-    uint8_t *extradata;
-    int extradata_size;
-
-    /**
-     * This is the fundamental unit of time (in seconds) in terms
-     * of which frame timestamps are represented. For fixed-fps content,
-     * timebase should be 1/framerate and timestamp increments should be
-     * identically 1.
-     * - encoding: MUST be set by user.
-     * - decoding: Set by libavcodec.
-     */
-    AVRational time_base;
-
-    /* video only */
-    /**
-     * picture width / height.
-     * - encoding: MUST be set by user.
-     * - decoding: Set by libavcodec.
-     * Note: For compatibility it is possible to set this instead of
-     * coded_width/height before decoding.
-     */
-    int width, height;
-
-#define FF_ASPECT_EXTENDED 15
-
-    /**
-     * the number of pictures in a group of pictures, or 0 for intra_only
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int gop_size;
-
-    /**
-     * Pixel format, see PIX_FMT_xxx.
-     * May be set by the demuxer if known from headers.
-     * May be overriden by the decoder if it knows better.
-     * - encoding: Set by user.
-     * - decoding: Set by user if known, overridden by libavcodec if known
-     */
-    enum PixelFormat pix_fmt;
-
-    /**
-     * If non NULL, 'draw_horiz_band' is called by the libavcodec
-     * decoder to draw a horizontal band. It improves cache usage. Not
-     * all codecs can do that. You must check the codec capabilities
-     * beforehand.
-     * When multithreading is used, it may be called from multiple threads
-     * at the same time; threads might draw different parts of the same AVFrame,
-     * or multiple AVFrames, and there is no guarantee that slices will be drawn
-     * in order.
-     * The function is also used by hardware acceleration APIs.
-     * It is called at least once during frame decoding to pass
-     * the data needed for hardware render.
-     * In that mode instead of pixel data, AVFrame points to
-     * a structure specific to the acceleration API. The application
-     * reads the structure and can change some fields to indicate progress
-     * or mark state.
-     * - encoding: unused
-     * - decoding: Set by user.
-     * @param height the height of the slice
-     * @param y the y position of the slice
-     * @param type 1->top field, 2->bottom field, 3->frame
-     * @param offset offset into the AVFrame.data from which the slice should be read
-     */
-    void (*draw_horiz_band)(struct AVCodecContext *s,
-                            const AVFrame *src, int offset[AV_NUM_DATA_POINTERS],
-                            int y, int type, int height);
-
-    /* audio only */
-    int sample_rate; ///< samples per second
-    int channels;    ///< number of audio channels
-
-    /**
-     * audio sample format
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    enum AVSampleFormat sample_fmt;  ///< sample format
-
-    /* The following data should not be initialized. */
-    /**
-     * Samples per packet, initialized when calling 'init'.
-     */
-    int frame_size;
-    int frame_number;   ///< audio or video frame number
-
-    /**
-     * Encoding: Number of frames delay there will be from the encoder input to
-     *           the decoder output. (we assume the decoder matches the spec)
-     * Decoding: Number of frames delay in addition to what a standard decoder
-     *           as specified in the spec would produce.
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by libavcodec.
-     */
-    int delay;
-
-    /* - encoding parameters */
-    float qcompress;  ///< amount of qscale change between easy & hard scenes (0.0-1.0)
-    float qblur;      ///< amount of qscale smoothing over time (0.0-1.0)
-
-    /**
-     * minimum quantizer
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int qmin;
-
-    /**
-     * maximum quantizer
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int qmax;
-
-    /**
-     * maximum quantizer difference between frames
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int max_qdiff;
-
-    /**
-     * maximum number of B-frames between non-B-frames
-     * Note: The output will be delayed by max_b_frames+1 relative to the input.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int max_b_frames;
-
-    /**
-     * qscale factor between IP and B-frames
-     * If > 0 then the last P-frame quantizer will be used (q= lastp_q*factor+offset).
-     * If < 0 then normal ratecontrol will be done (q= -normal_q*factor+offset).
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float b_quant_factor;
-
-    /** obsolete FIXME remove */
-    int rc_strategy;
-#define FF_RC_STRATEGY_XVID 1
-
-    int b_frame_strategy;
-
-    struct AVCodec *codec;
-
-    void *priv_data;
-
-    int rtp_payload_size;   /* The size of the RTP payload: the coder will  */
-                            /* do its best to deliver a chunk with size     */
-                            /* below rtp_payload_size, the chunk will start */
-                            /* with a start code on some codecs like H.263. */
-                            /* This doesn't take account of any particular  */
-                            /* headers inside the transmitted RTP payload.  */
-
-
-    /* The RTP callback: This function is called    */
-    /* every time the encoder has a packet to send. */
-    /* It depends on the encoder if the data starts */
-    /* with a Start Code (it should). H.263 does.   */
-    /* mb_nb contains the number of macroblocks     */
-    /* encoded in the RTP payload.                  */
-    void (*rtp_callback)(struct AVCodecContext *avctx, void *data, int size, int mb_nb);
-
-    /* statistics, used for 2-pass encoding */
-    int mv_bits;
-    int header_bits;
-    int i_tex_bits;
-    int p_tex_bits;
-    int i_count;
-    int p_count;
-    int skip_count;
-    int misc_bits;
-
-    /**
-     * number of bits used for the previously encoded frame
-     * - encoding: Set by libavcodec.
-     * - decoding: unused
-     */
-    int frame_bits;
-
-    /**
-     * Private data of the user, can be used to carry app specific stuff.
-     * - encoding: Set by user.
-     * - decoding: Set by user.
-     */
-    void *opaque;
-
-    char codec_name[32];
-    enum AVMediaType codec_type; /* see AVMEDIA_TYPE_xxx */
-    enum CodecID codec_id; /* see CODEC_ID_xxx */
-
-    /**
-     * fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
-     * This is used to work around some encoder bugs.
-     * A demuxer should set this to what is stored in the field used to identify the codec.
-     * If there are multiple such fields in a container then the demuxer should choose the one
-     * which maximizes the information about the used codec.
-     * If the codec tag field in a container is larger than 32 bits then the demuxer should
-     * remap the longer ID to 32 bits with a table or other structure. Alternatively a new
-     * extra_codec_tag + size could be added but for this a clear advantage must be demonstrated
-     * first.
-     * - encoding: Set by user, if not then the default based on codec_id will be used.
-     * - decoding: Set by user, will be converted to uppercase by libavcodec during init.
-     */
-    unsigned int codec_tag;
-
-    /**
-     * Work around bugs in encoders which sometimes cannot be detected automatically.
-     * - encoding: Set by user
-     * - decoding: Set by user
-     */
-    int workaround_bugs;
-#define FF_BUG_AUTODETECT       1  ///< autodetection
-#define FF_BUG_OLD_MSMPEG4      2
-#define FF_BUG_XVID_ILACE       4
-#define FF_BUG_UMP4             8
-#define FF_BUG_NO_PADDING       16
-#define FF_BUG_AMV              32
-#define FF_BUG_AC_VLC           0  ///< Will be removed, libavcodec can now handle these non-compliant files by default.
-#define FF_BUG_QPEL_CHROMA      64
-#define FF_BUG_STD_QPEL         128
-#define FF_BUG_QPEL_CHROMA2     256
-#define FF_BUG_DIRECT_BLOCKSIZE 512
-#define FF_BUG_EDGE             1024
-#define FF_BUG_HPEL_CHROMA      2048
-#define FF_BUG_DC_CLIP          4096
-#define FF_BUG_MS               8192 ///< Work around various bugs in Microsoft's broken decoders.
-#define FF_BUG_TRUNCATED       16384
-//#define FF_BUG_FAKE_SCALABILITY 16 //Autodetection should work 100%.
-
-    /**
-     * luma single coefficient elimination threshold
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int luma_elim_threshold;
-
-    /**
-     * chroma single coeff elimination threshold
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int chroma_elim_threshold;
-
-    /**
-     * strictly follow the standard (MPEG4, ...).
-     * - encoding: Set by user.
-     * - decoding: Set by user.
-     * Setting this to STRICT or higher means the encoder and decoder will
-     * generally do stupid things, whereas setting it to unofficial or lower
-     * will mean the encoder might produce output that is not supported by all
-     * spec-compliant decoders. Decoders don't differentiate between normal,
-     * unofficial and experimental (that is, they always try to decode things
-     * when they can) unless they are explicitly asked to behave stupidly
-     * (=strictly conform to the specs)
-     */
-    int strict_std_compliance;
-#define FF_COMPLIANCE_VERY_STRICT   2 ///< Strictly conform to an older more strict version of the spec or reference software.
-#define FF_COMPLIANCE_STRICT        1 ///< Strictly conform to all the things in the spec no matter what consequences.
-#define FF_COMPLIANCE_NORMAL        0
-#define FF_COMPLIANCE_UNOFFICIAL   -1 ///< Allow unofficial extensions
-#define FF_COMPLIANCE_EXPERIMENTAL -2 ///< Allow nonstandardized experimental things.
-
-    /**
-     * qscale offset between IP and B-frames
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float b_quant_offset;
-
-#if FF_API_ER
-    /**
-     * Error recognition; higher values will detect more errors but may
-     * misdetect some more or less valid parts as errors.
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    attribute_deprecated int error_recognition;
-#define FF_ER_CAREFUL         1
-#define FF_ER_COMPLIANT       2
-#define FF_ER_AGGRESSIVE      3
-#define FF_ER_VERY_AGGRESSIVE 4
-#define FF_ER_EXPLODE         5
-#endif /* FF_API_ER */
-
-    /**
-     * Called at the beginning of each frame to get a buffer for it.
-     *
-     * The function will set AVFrame.data[], AVFrame.linesize[].
-     * AVFrame.extended_data[] must also be set, but it should be the same as
-     * AVFrame.data[] except for planar audio with more channels than can fit
-     * in AVFrame.data[]. In that case, AVFrame.data[] shall still contain as
-     * many data pointers as it can hold.
-     *
-     * if CODEC_CAP_DR1 is not set then get_buffer() must call
-     * avcodec_default_get_buffer() instead of providing buffers allocated by
-     * some other means.
-     *
-     * AVFrame.data[] should be 32- or 16-byte-aligned unless the CPU doesn't
-     * need it. avcodec_default_get_buffer() aligns the output buffer properly,
-     * but if get_buffer() is overridden then alignment considerations should
-     * be taken into account.
-     *
-     * @see avcodec_default_get_buffer()
-     *
-     * Video:
-     *
-     * If pic.reference is set then the frame will be read later by libavcodec.
-     * avcodec_align_dimensions2() should be used to find the required width and
-     * height, as they normally need to be rounded up to the next multiple of 16.
-     *
-     * If frame multithreading is used and thread_safe_callbacks is set,
-     * it may be called from a different thread, but not from more than one at
-     * once. Does not need to be reentrant.
-     *
-     * @see release_buffer(), reget_buffer()
-     * @see avcodec_align_dimensions2()
-     *
-     * Audio:
-     *
-     * Decoders request a buffer of a particular size by setting
-     * AVFrame.nb_samples prior to calling get_buffer(). The decoder may,
-     * however, utilize only part of the buffer by setting AVFrame.nb_samples
-     * to a smaller value in the output frame.
-     *
-     * Decoders cannot use the buffer after returning from
-     * avcodec_decode_audio4(), so they will not call release_buffer(), as it
-     * is assumed to be released immediately upon return.
-     *
-     * As a convenience, av_samples_get_buffer_size() and
-     * av_samples_fill_arrays() in libavutil may be used by custom get_buffer()
-     * functions to find the required data size and to fill data pointers and
-     * linesize. In AVFrame.linesize, only linesize[0] may be set for audio
-     * since all planes must be the same size.
-     *
-     * @see av_samples_get_buffer_size(), av_samples_fill_arrays()
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec, user can override.
-     */
-    int (*get_buffer)(struct AVCodecContext *c, AVFrame *pic);
-
-    /**
-     * Called to release buffers which were allocated with get_buffer.
-     * A released buffer can be reused in get_buffer().
-     * pic.data[*] must be set to NULL.
-     * May be called from a different thread if frame multithreading is used,
-     * but not by more than one thread at once, so does not need to be reentrant.
-     * - encoding: unused
-     * - decoding: Set by libavcodec, user can override.
-     */
-    void (*release_buffer)(struct AVCodecContext *c, AVFrame *pic);
-
-    /**
-     * Size of the frame reordering buffer in the decoder.
-     * For MPEG-2 it is 1 IPB or 0 low delay IP.
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by libavcodec.
-     */
-    int has_b_frames;
-
-    /**
-     * number of bytes per packet if constant and known or 0
-     * Used by some WAV based audio codecs.
-     */
-    int block_align;
-
-#if FF_API_PARSE_FRAME
-    /**
-     * If true, only parsing is done. The frame data is returned.
-     * Only MPEG audio decoders support this now.
-     * - encoding: unused
-     * - decoding: Set by user
-     */
-    attribute_deprecated int parse_only;
-#endif
-
-    /**
-     * 0-> h263 quant 1-> mpeg quant
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int mpeg_quant;
-
-    /**
-     * pass1 encoding statistics output buffer
-     * - encoding: Set by libavcodec.
-     * - decoding: unused
-     */
-    char *stats_out;
-
-    /**
-     * pass2 encoding statistics input buffer
-     * Concatenated stuff from stats_out of pass1 should be placed here.
-     * - encoding: Allocated/set/freed by user.
-     * - decoding: unused
-     */
-    char *stats_in;
-
-    /**
-     * ratecontrol qmin qmax limiting method
-     * 0-> clipping, 1-> use a nice continous function to limit qscale wthin qmin/qmax.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float rc_qsquish;
-
-    float rc_qmod_amp;
-    int rc_qmod_freq;
-
-    /**
-     * ratecontrol override, see RcOverride
-     * - encoding: Allocated/set/freed by user.
-     * - decoding: unused
-     */
-    RcOverride *rc_override;
-    int rc_override_count;
-
-    /**
-     * rate control equation
-     * - encoding: Set by user
-     * - decoding: unused
-     */
-    const char *rc_eq;
-
-    /**
-     * maximum bitrate
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int rc_max_rate;
-
-    /**
-     * minimum bitrate
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int rc_min_rate;
-
-    /**
-     * decoder bitstream buffer size
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int rc_buffer_size;
-    float rc_buffer_aggressivity;
-
-    /**
-     * qscale factor between P and I-frames
-     * If > 0 then the last p frame quantizer will be used (q= lastp_q*factor+offset).
-     * If < 0 then normal ratecontrol will be done (q= -normal_q*factor+offset).
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float i_quant_factor;
-
-    /**
-     * qscale offset between P and I-frames
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float i_quant_offset;
-
-    /**
-     * initial complexity for pass1 ratecontrol
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float rc_initial_cplx;
-
-    /**
-     * DCT algorithm, see FF_DCT_* below
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int dct_algo;
-#define FF_DCT_AUTO    0
-#define FF_DCT_FASTINT 1
-#define FF_DCT_INT     2
-#define FF_DCT_MMX     3
-#define FF_DCT_MLIB    4
-#define FF_DCT_ALTIVEC 5
-#define FF_DCT_FAAN    6
-
-    /**
-     * luminance masking (0-> disabled)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float lumi_masking;
-
-    /**
-     * temporary complexity masking (0-> disabled)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float temporal_cplx_masking;
-
-    /**
-     * spatial complexity masking (0-> disabled)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float spatial_cplx_masking;
-
-    /**
-     * p block masking (0-> disabled)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float p_masking;
-
-    /**
-     * darkness masking (0-> disabled)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float dark_masking;
-
-    /**
-     * IDCT algorithm, see FF_IDCT_* below.
-     * - encoding: Set by user.
-     * - decoding: Set by user.
-     */
-    int idct_algo;
-#define FF_IDCT_AUTO          0
-#define FF_IDCT_INT           1
-#define FF_IDCT_SIMPLE        2
-#define FF_IDCT_SIMPLEMMX     3
-#define FF_IDCT_LIBMPEG2MMX   4
-#define FF_IDCT_PS2           5
-#define FF_IDCT_MLIB          6
-#define FF_IDCT_ARM           7
-#define FF_IDCT_ALTIVEC       8
-#define FF_IDCT_SH4           9
-#define FF_IDCT_SIMPLEARM     10
-#define FF_IDCT_H264          11
-#define FF_IDCT_VP3           12
-#define FF_IDCT_IPP           13
-#define FF_IDCT_XVIDMMX       14
-#define FF_IDCT_CAVS          15
-#define FF_IDCT_SIMPLEARMV5TE 16
-#define FF_IDCT_SIMPLEARMV6   17
-#define FF_IDCT_SIMPLEVIS     18
-#define FF_IDCT_WMV2          19
-#define FF_IDCT_FAAN          20
-#define FF_IDCT_EA            21
-#define FF_IDCT_SIMPLENEON    22
-#define FF_IDCT_SIMPLEALPHA   23
-#define FF_IDCT_BINK          24
-
-    /**
-     * slice count
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by user (or 0).
-     */
-    int slice_count;
-    /**
-     * slice offsets in the frame in bytes
-     * - encoding: Set/allocated by libavcodec.
-     * - decoding: Set/allocated by user (or NULL).
-     */
-    int *slice_offset;
-
-    /**
-     * error concealment flags
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    int error_concealment;
-#define FF_EC_GUESS_MVS   1
-#define FF_EC_DEBLOCK     2
-
-    /**
-     * dsp_mask could be add used to disable unwanted CPU features
-     * CPU features (i.e. MMX, SSE. ...)
-     *
-     * With the FORCE flag you may instead enable given CPU features.
-     * (Dangerous: Usable in case of misdetection, improper usage however will
-     * result into program crash.)
-     */
-    unsigned dsp_mask;
-
-    /**
-     * bits per sample/pixel from the demuxer (needed for huffyuv).
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by user.
-     */
-     int bits_per_coded_sample;
-
-    /**
-     * prediction method (needed for huffyuv)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-     int prediction_method;
-#define FF_PRED_LEFT   0
-#define FF_PRED_PLANE  1
-#define FF_PRED_MEDIAN 2
-
-    /**
-     * sample aspect ratio (0 if unknown)
-     * That is the width of a pixel divided by the height of the pixel.
-     * Numerator and denominator must be relatively prime and smaller than 256 for some video standards.
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    AVRational sample_aspect_ratio;
-
-    /**
-     * the picture in the bitstream
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by libavcodec.
-     */
-    AVFrame *coded_frame;
-
-    /**
-     * debug
-     * - encoding: Set by user.
-     * - decoding: Set by user.
-     */
-    int debug;
-#define FF_DEBUG_PICT_INFO   1
-#define FF_DEBUG_RC          2
-#define FF_DEBUG_BITSTREAM   4
-#define FF_DEBUG_MB_TYPE     8
-#define FF_DEBUG_QP          16
-#define FF_DEBUG_MV          32
-#define FF_DEBUG_DCT_COEFF   0x00000040
-#define FF_DEBUG_SKIP        0x00000080
-#define FF_DEBUG_STARTCODE   0x00000100
-#define FF_DEBUG_PTS         0x00000200
-#define FF_DEBUG_ER          0x00000400
-#define FF_DEBUG_MMCO        0x00000800
-#define FF_DEBUG_BUGS        0x00001000
-#define FF_DEBUG_VIS_QP      0x00002000
-#define FF_DEBUG_VIS_MB_TYPE 0x00004000
-#define FF_DEBUG_BUFFERS     0x00008000
-#define FF_DEBUG_THREADS     0x00010000
-
-    /**
-     * debug
-     * - encoding: Set by user.
-     * - decoding: Set by user.
-     */
-    int debug_mv;
-#define FF_DEBUG_VIS_MV_P_FOR  0x00000001 //visualize forward predicted MVs of P frames
-#define FF_DEBUG_VIS_MV_B_FOR  0x00000002 //visualize forward predicted MVs of B frames
-#define FF_DEBUG_VIS_MV_B_BACK 0x00000004 //visualize backward predicted MVs of B frames
-
-    /**
-     * error
-     * - encoding: Set by libavcodec if flags&CODEC_FLAG_PSNR.
-     * - decoding: unused
-     */
-    uint64_t error[AV_NUM_DATA_POINTERS];
-
-    /**
-     * motion estimation comparison function
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int me_cmp;
-    /**
-     * subpixel motion estimation comparison function
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int me_sub_cmp;
-    /**
-     * macroblock comparison function (not supported yet)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int mb_cmp;
-    /**
-     * interlaced DCT comparison function
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int ildct_cmp;
-#define FF_CMP_SAD    0
-#define FF_CMP_SSE    1
-#define FF_CMP_SATD   2
-#define FF_CMP_DCT    3
-#define FF_CMP_PSNR   4
-#define FF_CMP_BIT    5
-#define FF_CMP_RD     6
-#define FF_CMP_ZERO   7
-#define FF_CMP_VSAD   8
-#define FF_CMP_VSSE   9
-#define FF_CMP_NSSE   10
-#define FF_CMP_W53    11
-#define FF_CMP_W97    12
-#define FF_CMP_DCTMAX 13
-#define FF_CMP_DCT264 14
-#define FF_CMP_CHROMA 256
-
-    /**
-     * ME diamond size & shape
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int dia_size;
-
-    /**
-     * amount of previous MV predictors (2a+1 x 2a+1 square)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int last_predictor_count;
-
-    /**
-     * prepass for motion estimation
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int pre_me;
-
-    /**
-     * motion estimation prepass comparison function
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int me_pre_cmp;
-
-    /**
-     * ME prepass diamond size & shape
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int pre_dia_size;
-
-    /**
-     * subpel ME quality
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int me_subpel_quality;
-
-    /**
-     * callback to negotiate the pixelFormat
-     * @param fmt is the list of formats which are supported by the codec,
-     * it is terminated by -1 as 0 is a valid format, the formats are ordered by quality.
-     * The first is always the native one.
-     * @return the chosen format
-     * - encoding: unused
-     * - decoding: Set by user, if not set the native format will be chosen.
-     */
-    enum PixelFormat (*get_format)(struct AVCodecContext *s, const enum PixelFormat * fmt);
-
-    /**
-     * DTG active format information (additional aspect ratio
-     * information only used in DVB MPEG-2 transport streams)
-     * 0 if not set.
-     *
-     * - encoding: unused
-     * - decoding: Set by decoder.
-     */
-    int dtg_active_format;
-#define FF_DTG_AFD_SAME         8
-#define FF_DTG_AFD_4_3          9
-#define FF_DTG_AFD_16_9         10
-#define FF_DTG_AFD_14_9         11
-#define FF_DTG_AFD_4_3_SP_14_9  13
-#define FF_DTG_AFD_16_9_SP_14_9 14
-#define FF_DTG_AFD_SP_4_3       15
-
-    /**
-     * maximum motion estimation search range in subpel units
-     * If 0 then no limit.
-     *
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int me_range;
-
-    /**
-     * intra quantizer bias
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int intra_quant_bias;
-#define FF_DEFAULT_QUANT_BIAS 999999
-
-    /**
-     * inter quantizer bias
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int inter_quant_bias;
-
-    /**
-     * color table ID
-     * - encoding: unused
-     * - decoding: Which clrtable should be used for 8bit RGB images.
-     *             Tables have to be stored somewhere. FIXME
-     */
-    int color_table_id;
-
-#if FF_API_INTERNAL_CONTEXT
-    /**
-     * internal_buffer count
-     * Don't touch, used by libavcodec default_get_buffer().
-     * @deprecated this field was moved to an internal context
-     */
-    attribute_deprecated int internal_buffer_count;
-
-    /**
-     * internal_buffers
-     * Don't touch, used by libavcodec default_get_buffer().
-     * @deprecated this field was moved to an internal context
-     */
-    attribute_deprecated void *internal_buffer;
-#endif
-
-    /**
-     * Global quality for codecs which cannot change it per frame.
-     * This should be proportional to MPEG-1/2/4 qscale.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int global_quality;
-
-#define FF_CODER_TYPE_VLC       0
-#define FF_CODER_TYPE_AC        1
-#define FF_CODER_TYPE_RAW       2
-#define FF_CODER_TYPE_RLE       3
-#define FF_CODER_TYPE_DEFLATE   4
-    /**
-     * coder type
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int coder_type;
-
-    /**
-     * context model
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int context_model;
-#if 0
-    /**
-     *
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    uint8_t * (*realloc)(struct AVCodecContext *s, uint8_t *buf, int buf_size);
-#endif
-
-    /**
-     * slice flags
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    int slice_flags;
-#define SLICE_FLAG_CODED_ORDER    0x0001 ///< draw_horiz_band() is called in coded order instead of display
-#define SLICE_FLAG_ALLOW_FIELD    0x0002 ///< allow draw_horiz_band() with field slices (MPEG2 field pics)
-#define SLICE_FLAG_ALLOW_PLANE    0x0004 ///< allow draw_horiz_band() with 1 component at a time (SVQ1)
-
-    /**
-     * XVideo Motion Acceleration
-     * - encoding: forbidden
-     * - decoding: set by decoder
-     */
-    int xvmc_acceleration;
-
-    /**
-     * macroblock decision mode
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int mb_decision;
-#define FF_MB_DECISION_SIMPLE 0        ///< uses mb_cmp
-#define FF_MB_DECISION_BITS   1        ///< chooses the one which needs the fewest bits
-#define FF_MB_DECISION_RD     2        ///< rate distortion
-
-    /**
-     * custom intra quantization matrix
-     * - encoding: Set by user, can be NULL.
-     * - decoding: Set by libavcodec.
-     */
-    uint16_t *intra_matrix;
-
-    /**
-     * custom inter quantization matrix
-     * - encoding: Set by user, can be NULL.
-     * - decoding: Set by libavcodec.
-     */
-    uint16_t *inter_matrix;
-
-    /**
-     * fourcc from the AVI stream header (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
-     * This is used to work around some encoder bugs.
-     * - encoding: unused
-     * - decoding: Set by user, will be converted to uppercase by libavcodec during init.
-     */
-    unsigned int stream_codec_tag;
-
-    /**
-     * scene change detection threshold
-     * 0 is default, larger means fewer detected scene changes.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int scenechange_threshold;
-
-    /**
-     * minimum Lagrange multipler
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int lmin;
-
-    /**
-     * maximum Lagrange multipler
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int lmax;
-
-#if FF_API_PALETTE_CONTROL
-    /**
-     * palette control structure
-     * - encoding: ??? (no palette-enabled encoder yet)
-     * - decoding: Set by user.
-     */
-    struct AVPaletteControl *palctrl;
-#endif
-
-    /**
-     * noise reduction strength
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int noise_reduction;
-
-    /**
-     * Called at the beginning of a frame to get cr buffer for it.
-     * Buffer type (size, hints) must be the same. libavcodec won't check it.
-     * libavcodec will pass previous buffer in pic, function should return
-     * same buffer or new buffer with old frame "painted" into it.
-     * If pic.data[0] == NULL must behave like get_buffer().
-     * if CODEC_CAP_DR1 is not set then reget_buffer() must call
-     * avcodec_default_reget_buffer() instead of providing buffers allocated by
-     * some other means.
-     * - encoding: unused
-     * - decoding: Set by libavcodec, user can override.
-     */
-    int (*reget_buffer)(struct AVCodecContext *c, AVFrame *pic);
-
-    /**
-     * Number of bits which should be loaded into the rc buffer before decoding starts.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int rc_initial_buffer_occupancy;
-
-    /**
-     *
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int inter_threshold;
-
-    /**
-     * CODEC_FLAG2_*
-     * - encoding: Set by user.
-     * - decoding: Set by user.
-     */
-    int flags2;
-
-    /**
-     * Simulates errors in the bitstream to test error concealment.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int error_rate;
-
-#if FF_API_ANTIALIAS_ALGO
-    /**
-     * MP3 antialias algorithm, see FF_AA_* below.
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    attribute_deprecated int antialias_algo;
-#define FF_AA_AUTO    0
-#define FF_AA_FASTINT 1 //not implemented yet
-#define FF_AA_INT     2
-#define FF_AA_FLOAT   3
-#endif
-
-    /**
-     * quantizer noise shaping
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int quantizer_noise_shaping;
-
-    /**
-     * thread count
-     * is used to decide how many independent tasks should be passed to execute()
-     * - encoding: Set by user.
-     * - decoding: Set by user.
-     */
-    int thread_count;
-
-    /**
-     * The codec may call this to execute several independent things.
-     * It will return only after finishing all tasks.
-     * The user may replace this with some multithreaded implementation,
-     * the default implementation will execute the parts serially.
-     * @param count the number of things to execute
-     * - encoding: Set by libavcodec, user can override.
-     * - decoding: Set by libavcodec, user can override.
-     */
-    int (*execute)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg), void *arg2, int *ret, int count, int size);
-
-    /**
-     * thread opaque
-     * Can be used by execute() to store some per AVCodecContext stuff.
-     * - encoding: set by execute()
-     * - decoding: set by execute()
-     */
-    void *thread_opaque;
-
-    /**
-     * Motion estimation threshold below which no motion estimation is
-     * performed, but instead the user specified motion vectors are used.
-     *
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-     int me_threshold;
-
-    /**
-     * Macroblock threshold below which the user specified macroblock types will be used.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-     int mb_threshold;
-
-    /**
-     * precision of the intra DC coefficient - 8
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-     int intra_dc_precision;
-
-    /**
-     * noise vs. sse weight for the nsse comparsion function
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-     int nsse_weight;
-
-    /**
-     * Number of macroblock rows at the top which are skipped.
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-     int skip_top;
-
-    /**
-     * Number of macroblock rows at the bottom which are skipped.
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-     int skip_bottom;
-
-    /**
-     * profile
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-     int profile;
-#define FF_PROFILE_UNKNOWN -99
-#define FF_PROFILE_RESERVED -100
-
-#define FF_PROFILE_AAC_MAIN 0
-#define FF_PROFILE_AAC_LOW  1
-#define FF_PROFILE_AAC_SSR  2
-#define FF_PROFILE_AAC_LTP  3
-
-#define FF_PROFILE_DTS         20
-#define FF_PROFILE_DTS_ES      30
-#define FF_PROFILE_DTS_96_24   40
-#define FF_PROFILE_DTS_HD_HRA  50
-#define FF_PROFILE_DTS_HD_MA   60
-
-#define FF_PROFILE_MPEG2_422    0
-#define FF_PROFILE_MPEG2_HIGH   1
-#define FF_PROFILE_MPEG2_SS     2
-#define FF_PROFILE_MPEG2_SNR_SCALABLE  3
-#define FF_PROFILE_MPEG2_MAIN   4
-#define FF_PROFILE_MPEG2_SIMPLE 5
-
-#define FF_PROFILE_H264_CONSTRAINED  (1<<9)  // 8+1; constraint_set1_flag
-#define FF_PROFILE_H264_INTRA        (1<<11) // 8+3; constraint_set3_flag
-
-#define FF_PROFILE_H264_BASELINE             66
-#define FF_PROFILE_H264_CONSTRAINED_BASELINE (66|FF_PROFILE_H264_CONSTRAINED)
-#define FF_PROFILE_H264_MAIN                 77
-#define FF_PROFILE_H264_EXTENDED             88
-#define FF_PROFILE_H264_HIGH                 100
-#define FF_PROFILE_H264_HIGH_10              110
-#define FF_PROFILE_H264_HIGH_10_INTRA        (110|FF_PROFILE_H264_INTRA)
-#define FF_PROFILE_H264_HIGH_422             122
-#define FF_PROFILE_H264_HIGH_422_INTRA       (122|FF_PROFILE_H264_INTRA)
-#define FF_PROFILE_H264_HIGH_444             144
-#define FF_PROFILE_H264_HIGH_444_PREDICTIVE  244
-#define FF_PROFILE_H264_HIGH_444_INTRA       (244|FF_PROFILE_H264_INTRA)
-#define FF_PROFILE_H264_CAVLC_444            44
-
-#define FF_PROFILE_VC1_SIMPLE   0
-#define FF_PROFILE_VC1_MAIN     1
-#define FF_PROFILE_VC1_COMPLEX  2
-#define FF_PROFILE_VC1_ADVANCED 3
-
-#define FF_PROFILE_MPEG4_SIMPLE                     0
-#define FF_PROFILE_MPEG4_SIMPLE_SCALABLE            1
-#define FF_PROFILE_MPEG4_CORE                       2
-#define FF_PROFILE_MPEG4_MAIN                       3
-#define FF_PROFILE_MPEG4_N_BIT                      4
-#define FF_PROFILE_MPEG4_SCALABLE_TEXTURE           5
-#define FF_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION      6
-#define FF_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE     7
-#define FF_PROFILE_MPEG4_HYBRID                     8
-#define FF_PROFILE_MPEG4_ADVANCED_REAL_TIME         9
-#define FF_PROFILE_MPEG4_CORE_SCALABLE             10
-#define FF_PROFILE_MPEG4_ADVANCED_CODING           11
-#define FF_PROFILE_MPEG4_ADVANCED_CORE             12
-#define FF_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE 13
-#define FF_PROFILE_MPEG4_SIMPLE_STUDIO             14
-#define FF_PROFILE_MPEG4_ADVANCED_SIMPLE           15
-
-    /**
-     * level
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-     int level;
-#define FF_LEVEL_UNKNOWN -99
-
-    /**
-     * low resolution decoding, 1-> 1/2 size, 2->1/4 size
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-     int lowres;
-
-    /**
-     * Bitstream width / height, may be different from width/height if lowres enabled.
-     * - encoding: unused
-     * - decoding: Set by user before init if known. Codec should override / dynamically change if needed.
-     */
-    int coded_width, coded_height;
-
-    /**
-     * frame skip threshold
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int frame_skip_threshold;
-
-    /**
-     * frame skip factor
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int frame_skip_factor;
-
-    /**
-     * frame skip exponent
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int frame_skip_exp;
-
-    /**
-     * frame skip comparison function
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int frame_skip_cmp;
-
-    /**
-     * Border processing masking, raises the quantizer for mbs on the borders
-     * of the picture.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    float border_masking;
-
-    /**
-     * minimum MB lagrange multipler
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int mb_lmin;
-
-    /**
-     * maximum MB lagrange multipler
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int mb_lmax;
-
-    /**
-     *
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int me_penalty_compensation;
-
-    /**
-     *
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    enum AVDiscard skip_loop_filter;
-
-    /**
-     *
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    enum AVDiscard skip_idct;
-
-    /**
-     *
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    enum AVDiscard skip_frame;
-
-    /**
-     *
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int bidir_refine;
-
-    /**
-     *
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int brd_scale;
-
-#if FF_API_X264_GLOBAL_OPTS
-    /**
-     * constant rate factor - quality-based VBR - values ~correspond to qps
-     * - encoding: Set by user.
-     * - decoding: unused
-     *   @deprecated use 'crf' libx264 private option
-     */
-    attribute_deprecated float crf;
-
-    /**
-     * constant quantization parameter rate control method
-     * - encoding: Set by user.
-     * - decoding: unused
-     *   @deprecated use 'cqp' libx264 private option
-     */
-    attribute_deprecated int cqp;
-#endif
-
-    /**
-     * minimum GOP size
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int keyint_min;
-
-    /**
-     * number of reference frames
-     * - encoding: Set by user.
-     * - decoding: Set by lavc.
-     */
-    int refs;
-
-    /**
-     * chroma qp offset from luma
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int chromaoffset;
-
-#if FF_API_X264_GLOBAL_OPTS
-    /**
-     * Influences how often B-frames are used.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int bframebias;
-#endif
-
-    /**
-     * trellis RD quantization
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int trellis;
-
-#if FF_API_X264_GLOBAL_OPTS
-    /**
-     * Reduce fluctuations in qp (before curve compression).
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated float complexityblur;
-
-    /**
-     * in-loop deblocking filter alphac0 parameter
-     * alpha is in the range -6...6
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int deblockalpha;
-
-    /**
-     * in-loop deblocking filter beta parameter
-     * beta is in the range -6...6
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int deblockbeta;
-
-    /**
-     * macroblock subpartition sizes to consider - p8x8, p4x4, b8x8, i8x8, i4x4
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int partitions;
-#define X264_PART_I4X4 0x001  /* Analyze i4x4 */
-#define X264_PART_I8X8 0x002  /* Analyze i8x8 (requires 8x8 transform) */
-#define X264_PART_P8X8 0x010  /* Analyze p16x8, p8x16 and p8x8 */
-#define X264_PART_P4X4 0x020  /* Analyze p8x4, p4x8, p4x4 */
-#define X264_PART_B8X8 0x100  /* Analyze b16x8, b8x16 and b8x8 */
-
-    /**
-     * direct MV prediction mode - 0 (none), 1 (spatial), 2 (temporal), 3 (auto)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int directpred;
-#endif
-
-    /**
-     * Audio cutoff bandwidth (0 means "automatic")
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int cutoff;
-
-    /**
-     * Multiplied by qscale for each frame and added to scene_change_score.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int scenechange_factor;
-
-    /**
-     *
-     * Note: Value depends upon the compare function used for fullpel ME.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int mv0_threshold;
-
-    /**
-     * Adjusts sensitivity of b_frame_strategy 1.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int b_sensitivity;
-
-    /**
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int compression_level;
-#define FF_COMPRESSION_DEFAULT -1
-
-    /**
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int min_prediction_order;
-
-    /**
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    int max_prediction_order;
-
-#if FF_API_FLAC_GLOBAL_OPTS
-    /**
-     * @name FLAC options
-     * @deprecated Use FLAC encoder private options instead.
-     * @{
-     */
-
-    /**
-     * LPC coefficient precision - used by FLAC encoder
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int lpc_coeff_precision;
-
-    /**
-     * search method for selecting prediction order
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int prediction_order_method;
-
-    /**
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int min_partition_order;
-
-    /**
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int max_partition_order;
-    /**
-     * @}
-     */
-#endif
-
-    /**
-     * GOP timecode frame start number
-     * - encoding: Set by user, in non drop frame format
-     * - decoding: Set by libavcodec (timecode in the 25 bits format, -1 if unset)
-     */
-    int64_t timecode_frame_start;
-
-#if FF_API_REQUEST_CHANNELS
-    /**
-     * Decoder should decode to this many channels if it can (0 for default)
-     * - encoding: unused
-     * - decoding: Set by user.
-     * @deprecated Deprecated in favor of request_channel_layout.
-     */
-    int request_channels;
-#endif
-
-#if FF_API_DRC_SCALE
-    /**
-     * Percentage of dynamic range compression to be applied by the decoder.
-     * The default value is 1.0, corresponding to full compression.
-     * - encoding: unused
-     * - decoding: Set by user.
-     * @deprecated use AC3 decoder private option instead.
-     */
-    attribute_deprecated float drc_scale;
-#endif
-
-    /**
-     * opaque 64bit number (generally a PTS) that will be reordered and
-     * output in AVFrame.reordered_opaque
-     * @deprecated in favor of pkt_pts
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    int64_t reordered_opaque;
-
-    /**
-     * Bits per sample/pixel of internal libavcodec pixel/sample format.
-     * - encoding: set by user.
-     * - decoding: set by libavcodec.
-     */
-    int bits_per_raw_sample;
-
-    /**
-     * Audio channel layout.
-     * - encoding: set by user.
-     * - decoding: set by user, may be overwritten by libavcodec.
-     */
-    uint64_t channel_layout;
-
-    /**
-     * Request decoder to use this channel layout if it can (0 for default)
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    uint64_t request_channel_layout;
-
-    /**
-     * Ratecontrol attempt to use, at maximum, <value> of what can be used without an underflow.
-     * - encoding: Set by user.
-     * - decoding: unused.
-     */
-    float rc_max_available_vbv_use;
-
-    /**
-     * Ratecontrol attempt to use, at least, <value> times the amount needed to prevent a vbv overflow.
-     * - encoding: Set by user.
-     * - decoding: unused.
-     */
-    float rc_min_vbv_overflow_use;
-
-    /**
-     * Hardware accelerator in use
-     * - encoding: unused.
-     * - decoding: Set by libavcodec
-     */
-    struct AVHWAccel *hwaccel;
-
-    /**
-     * For some codecs, the time base is closer to the field rate than the frame rate.
-     * Most notably, H.264 and MPEG-2 specify time_base as half of frame duration
-     * if no telecine is used ...
-     *
-     * Set to time_base ticks per frame. Default 1, e.g., H.264/MPEG-2 set it to 2.
-     */
-    int ticks_per_frame;
-
-    /**
-     * Hardware accelerator context.
-     * For some hardware accelerators, a global context needs to be
-     * provided by the user. In that case, this holds display-dependent
-     * data FFmpeg cannot instantiate itself. Please refer to the
-     * FFmpeg HW accelerator documentation to know how to fill this
-     * is. e.g. for VA API, this is a struct vaapi_context.
-     * - encoding: unused
-     * - decoding: Set by user
-     */
-    void *hwaccel_context;
-
-    /**
-     * Chromaticity coordinates of the source primaries.
-     * - encoding: Set by user
-     * - decoding: Set by libavcodec
-     */
-    enum AVColorPrimaries color_primaries;
-
-    /**
-     * Color Transfer Characteristic.
-     * - encoding: Set by user
-     * - decoding: Set by libavcodec
-     */
-    enum AVColorTransferCharacteristic color_trc;
-
-    /**
-     * YUV colorspace type.
-     * - encoding: Set by user
-     * - decoding: Set by libavcodec
-     */
-    enum AVColorSpace colorspace;
-
-    /**
-     * MPEG vs JPEG YUV range.
-     * - encoding: Set by user
-     * - decoding: Set by libavcodec
-     */
-    enum AVColorRange color_range;
-
-    /**
-     * This defines the location of chroma samples.
-     * - encoding: Set by user
-     * - decoding: Set by libavcodec
-     */
-    enum AVChromaLocation chroma_sample_location;
-
-    /**
-     * The codec may call this to execute several independent things.
-     * It will return only after finishing all tasks.
-     * The user may replace this with some multithreaded implementation,
-     * the default implementation will execute the parts serially.
-     * Also see avcodec_thread_init and e.g. the --enable-pthread configure option.
-     * @param c context passed also to func
-     * @param count the number of things to execute
-     * @param arg2 argument passed unchanged to func
-     * @param ret return values of executed functions, must have space for "count" values. May be NULL.
-     * @param func function that will be called count times, with jobnr from 0 to count-1.
-     *             threadnr will be in the range 0 to c->thread_count-1 < MAX_THREADS and so that no
-     *             two instances of func executing at the same time will have the same threadnr.
-     * @return always 0 currently, but code should handle a future improvement where when any call to func
-     *         returns < 0 no further calls to func may be done and < 0 is returned.
-     * - encoding: Set by libavcodec, user can override.
-     * - decoding: Set by libavcodec, user can override.
-     */
-    int (*execute2)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg, int jobnr, int threadnr), void *arg2, int *ret, int count);
-
-#if FF_API_X264_GLOBAL_OPTS
-    /**
-     * explicit P-frame weighted prediction analysis method
-     * 0: off
-     * 1: fast blind weighting (one reference duplicate with -1 offset)
-     * 2: smart weighting (full fade detection analysis)
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated int weighted_p_pred;
-
-    /**
-     * AQ mode
-     * 0: Disabled
-     * 1: Variance AQ (complexity mask)
-     * 2: Auto-variance AQ (experimental)
-     * - encoding: Set by user
-     * - decoding: unused
-     */
-    attribute_deprecated int aq_mode;
-
-    /**
-     * AQ strength
-     * Reduces blocking and blurring in flat and textured areas.
-     * - encoding: Set by user
-     * - decoding: unused
-     */
-    attribute_deprecated float aq_strength;
-
-    /**
-     * PSY RD
-     * Strength of psychovisual optimization
-     * - encoding: Set by user
-     * - decoding: unused
-     */
-    attribute_deprecated float psy_rd;
-
-    /**
-     * PSY trellis
-     * Strength of psychovisual optimization
-     * - encoding: Set by user
-     * - decoding: unused
-     */
-    attribute_deprecated float psy_trellis;
-
-    /**
-     * RC lookahead
-     * Number of frames for frametype and ratecontrol lookahead
-     * - encoding: Set by user
-     * - decoding: unused
-     */
-    attribute_deprecated int rc_lookahead;
-
-    /**
-     * Constant rate factor maximum
-     * With CRF encoding mode and VBV restrictions enabled, prevents quality from being worse
-     * than crf_max, even if doing so would violate VBV restrictions.
-     * - encoding: Set by user.
-     * - decoding: unused
-     */
-    attribute_deprecated float crf_max;
-#endif
-
-    int log_level_offset;
-
-#if FF_API_FLAC_GLOBAL_OPTS
-    /**
-     * Determines which LPC analysis algorithm to use.
-     * - encoding: Set by user
-     * - decoding: unused
-     */
-    attribute_deprecated enum AVLPCType lpc_type;
-
-    /**
-     * Number of passes to use for Cholesky factorization during LPC analysis
-     * - encoding: Set by user
-     * - decoding: unused
-     */
-    attribute_deprecated int lpc_passes;
-#endif
-
-    /**
-     * Number of slices.
-     * Indicates number of picture subdivisions. Used for parallelized
-     * decoding.
-     * - encoding: Set by user
-     * - decoding: unused
-     */
-    int slices;
-
-    /**
-     * Header containing style information for text subtitles.
-     * For SUBTITLE_ASS subtitle type, it should contain the whole ASS
-     * [Script Info] and [V4+ Styles] section, plus the [Events] line and
-     * the Format line following. It shouldn't include any Dialogue line.
-     * - encoding: Set/allocated/freed by user (before avcodec_open2())
-     * - decoding: Set/allocated/freed by libavcodec (by avcodec_open2())
-     */
-    uint8_t *subtitle_header;
-    int subtitle_header_size;
-
-    /**
-     * Current packet as passed into the decoder, to avoid having
-     * to pass the packet into every function. Currently only valid
-     * inside lavc and get/release_buffer callbacks.
-     * - decoding: set by avcodec_decode_*, read by get_buffer() for setting pkt_pts
-     * - encoding: unused
-     */
-    AVPacket *pkt;
-
-#if FF_API_INTERNAL_CONTEXT
-    /**
-     * Whether this is a copy of the context which had init() called on it.
-     * This is used by multithreading - shared tables and picture pointers
-     * should be freed from the original context only.
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by libavcodec.
-     *
-     * @deprecated this field has been moved to an internal context
-     */
-    attribute_deprecated int is_copy;
-#endif
-
-    /**
-     * Which multithreading methods to use.
-     * Use of FF_THREAD_FRAME will increase decoding delay by one frame per thread,
-     * so clients which cannot provide future frames should not use it.
-     *
-     * - encoding: Set by user, otherwise the default is used.
-     * - decoding: Set by user, otherwise the default is used.
-     */
-    int thread_type;
-#define FF_THREAD_FRAME   1 ///< Decode more than one frame at once
-#define FF_THREAD_SLICE   2 ///< Decode more than one part of a single frame at once
-
-    /**
-     * Which multithreading methods are in use by the codec.
-     * - encoding: Set by libavcodec.
-     * - decoding: Set by libavcodec.
-     */
-    int active_thread_type;
-
-    /**
-     * Set by the client if its custom get_buffer() callback can be called
-     * from another thread, which allows faster multithreaded decoding.
-     * draw_horiz_band() will be called from other threads regardless of this setting.
-     * Ignored if the default get_buffer() is used.
-     * - encoding: Set by user.
-     * - decoding: Set by user.
-     */
-    int thread_safe_callbacks;
-
-    /**
-     * VBV delay coded in the last frame (in periods of a 27 MHz clock).
-     * Used for compliant TS muxing.
-     * - encoding: Set by libavcodec.
-     * - decoding: unused.
-     */
-    uint64_t vbv_delay;
-
-    /**
-     * Type of service that the audio stream conveys.
-     * - encoding: Set by user.
-     * - decoding: Set by libavcodec.
-     */
-    enum AVAudioServiceType audio_service_type;
-
-    /**
-     * desired sample format
-     * - encoding: Not used.
-     * - decoding: Set by user.
-     * Decoder will decode to this format if it can.
-     */
-    enum AVSampleFormat request_sample_fmt;
-
-    /**
-     * Error recognition; may misdetect some more or less valid parts as errors.
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    int err_recognition;
-#define AV_EF_CRCCHECK  (1<<0)
-#define AV_EF_BITSTREAM (1<<1)
-#define AV_EF_BUFFER    (1<<2)
-#define AV_EF_EXPLODE   (1<<3)
-
-#define AV_EF_CAREFUL    (1<<16)
-#define AV_EF_COMPLIANT  (1<<17)
-#define AV_EF_AGGRESSIVE (1<<18)
-
-    /**
-     * Private context used for internal data.
-     *
-     * Unlike priv_data, this is not codec-specific. It is used in general
-     * libavcodec functions.
-     */
-    struct AVCodecInternal *internal;
-
-    /**
-     * Current statistics for PTS correction.
-     * - decoding: maintained and used by libavcodec, not intended to be used by user apps
-     * - encoding: unused
-     */
-    int64_t pts_correction_num_faulty_pts; /// Number of incorrect PTS values so far
-    int64_t pts_correction_num_faulty_dts; /// Number of incorrect DTS values so far
-    int64_t pts_correction_last_pts;       /// PTS of the last frame
-    int64_t pts_correction_last_dts;       /// DTS of the last frame
-
-} AVCodecContext;
-
-/**
- * AVProfile.
- */
-typedef struct AVProfile {
-    int profile;
-    const char *name; ///< short name for the profile
-} AVProfile;
-
-typedef struct AVCodecDefault AVCodecDefault;
-
-/**
- * AVCodec.
- */
-typedef struct AVCodec {
-    /**
-     * Name of the codec implementation.
-     * The name is globally unique among encoders and among decoders (but an
-     * encoder and a decoder can share the same name).
-     * This is the primary way to find a codec from the user perspective.
-     */
-    const char *name;
-    enum AVMediaType type;
-    enum CodecID id;
-    int priv_data_size;
-    int (*init)(AVCodecContext *);
-    int (*encode)(AVCodecContext *, uint8_t *buf, int buf_size, void *data);
-    int (*close)(AVCodecContext *);
-    int (*decode)(AVCodecContext *, void *outdata, int *outdata_size, AVPacket *avpkt);
-    /**
-     * Codec capabilities.
-     * see CODEC_CAP_*
-     */
-    int capabilities;
-    struct AVCodec *next;
-    /**
-     * Flush buffers.
-     * Will be called when seeking
-     */
-    void (*flush)(AVCodecContext *);
-    const AVRational *supported_framerates; ///< array of supported framerates, or NULL if any, array is terminated by {0,0}
-    const enum PixelFormat *pix_fmts;       ///< array of supported pixel formats, or NULL if unknown, array is terminated by -1
-    /**
-     * Descriptive name for the codec, meant to be more human readable than name.
-     * You should use the NULL_IF_CONFIG_SMALL() macro to define it.
-     */
-    const char *long_name;
-    const int *supported_samplerates;       ///< array of supported audio samplerates, or NULL if unknown, array is terminated by 0
-    const enum AVSampleFormat *sample_fmts; ///< array of supported sample formats, or NULL if unknown, array is terminated by -1
-    const uint64_t *channel_layouts;         ///< array of support channel layouts, or NULL if unknown. array is terminated by 0
-    uint8_t max_lowres;                     ///< maximum value for lowres supported by the decoder
-    const AVClass *priv_class;              ///< AVClass for the private context
-    const AVProfile *profiles;              ///< array of recognized profiles, or NULL if unknown, array is terminated by {FF_PROFILE_UNKNOWN}
-
-    /**
-     * @name Frame-level threading support functions
-     * @{
-     */
-    /**
-     * If defined, called on thread contexts when they are created.
-     * If the codec allocates writable tables in init(), re-allocate them here.
-     * priv_data will be set to a copy of the original.
-     */
-    int (*init_thread_copy)(AVCodecContext *);
-    /**
-     * Copy necessary context variables from a previous thread context to the current one.
-     * If not defined, the next thread will start automatically; otherwise, the codec
-     * must call ff_thread_finish_setup().
-     *
-     * dst and src will (rarely) point to the same context, in which case memcpy should be skipped.
-     */
-    int (*update_thread_context)(AVCodecContext *dst, const AVCodecContext *src);
-    /** @} */
-
-    /**
-     * Private codec-specific defaults.
-     */
-    const AVCodecDefault *defaults;
-
-    /**
-     * Initialize codec static data, called from avcodec_register().
-     */
-    void (*init_static_data)(struct AVCodec *codec);
-} AVCodec;
-
-/**
- * AVHWAccel.
- */
-typedef struct AVHWAccel {
-    /**
-     * Name of the hardware accelerated codec.
-     * The name is globally unique among encoders and among decoders (but an
-     * encoder and a decoder can share the same name).
-     */
-    const char *name;
-
-    /**
-     * Type of codec implemented by the hardware accelerator.
-     *
-     * See AVMEDIA_TYPE_xxx
-     */
-    enum AVMediaType type;
-
-    /**
-     * Codec implemented by the hardware accelerator.
-     *
-     * See CODEC_ID_xxx
-     */
-    enum CodecID id;
-
-    /**
-     * Supported pixel format.
-     *
-     * Only hardware accelerated formats are supported here.
-     */
-    enum PixelFormat pix_fmt;
-
-    /**
-     * Hardware accelerated codec capabilities.
-     * see FF_HWACCEL_CODEC_CAP_*
-     */
-    int capabilities;
-
-    struct AVHWAccel *next;
-
-    /**
-     * Called at the beginning of each frame or field picture.
-     *
-     * Meaningful frame information (codec specific) is guaranteed to
-     * be parsed at this point. This function is mandatory.
-     *
-     * Note that buf can be NULL along with buf_size set to 0.
-     * Otherwise, this means the whole frame is available at this point.
-     *
-     * @param avctx the codec context
-     * @param buf the frame data buffer base
-     * @param buf_size the size of the frame in bytes
-     * @return zero if successful, a negative value otherwise
-     */
-    int (*start_frame)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size);
-
-    /**
-     * Callback for each slice.
-     *
-     * Meaningful slice information (codec specific) is guaranteed to
-     * be parsed at this point. This function is mandatory.
-     *
-     * @param avctx the codec context
-     * @param buf the slice data buffer base
-     * @param buf_size the size of the slice in bytes
-     * @return zero if successful, a negative value otherwise
-     */
-    int (*decode_slice)(AVCodecContext *avctx, const uint8_t *buf, uint32_t buf_size);
-
-    /**
-     * Called at the end of each frame or field picture.
-     *
-     * The whole picture is parsed at this point and can now be sent
-     * to the hardware accelerator. This function is mandatory.
-     *
-     * @param avctx the codec context
-     * @return zero if successful, a negative value otherwise
-     */
-    int (*end_frame)(AVCodecContext *avctx);
-
-    /**
-     * Size of HW accelerator private data.
-     *
-     * Private data is allocated with av_mallocz() before
-     * AVCodecContext.get_buffer() and deallocated after
-     * AVCodecContext.release_buffer().
-     */
-    int priv_data_size;
-} AVHWAccel;
-
-/**
- * four components are given, that's all.
- * the last component is alpha
- */
-typedef struct AVPicture {
-    uint8_t *data[AV_NUM_DATA_POINTERS];
-    int linesize[AV_NUM_DATA_POINTERS];     ///< number of bytes per line
-} AVPicture;
-
-#define AVPALETTE_SIZE 1024
-#define AVPALETTE_COUNT 256
-#if FF_API_PALETTE_CONTROL
-/**
- * AVPaletteControl
- * This structure defines a method for communicating palette changes
- * between and demuxer and a decoder.
- *
- * @deprecated Use AVPacket to send palette changes instead.
- * This is totally broken.
- */
-typedef struct AVPaletteControl {
-
-    /* Demuxer sets this to 1 to indicate the palette has changed;
-     * decoder resets to 0. */
-    int palette_changed;
-
-    /* 4-byte ARGB palette entries, stored in native byte order; note that
-     * the individual palette components should be on a 8-bit scale; if
-     * the palette data comes from an IBM VGA native format, the component
-     * data is probably 6 bits in size and needs to be scaled. */
-    unsigned int palette[AVPALETTE_COUNT];
-
-} AVPaletteControl attribute_deprecated;
-#endif
-
-enum AVSubtitleType {
-    SUBTITLE_NONE,
-
-    SUBTITLE_BITMAP,                ///< A bitmap, pict will be set
-
-    /**
-     * Plain text, the text field must be set by the decoder and is
-     * authoritative. ass and pict fields may contain approximations.
-     */
-    SUBTITLE_TEXT,
-
-    /**
-     * Formatted text, the ass field must be set by the decoder and is
-     * authoritative. pict and text fields may contain approximations.
-     */
-    SUBTITLE_ASS,
-};
-
-typedef struct AVSubtitleRect {
-    int x;         ///< top left corner  of pict, undefined when pict is not set
-    int y;         ///< top left corner  of pict, undefined when pict is not set
-    int w;         ///< width            of pict, undefined when pict is not set
-    int h;         ///< height           of pict, undefined when pict is not set
-    int nb_colors; ///< number of colors in pict, undefined when pict is not set
-
-    /**
-     * data+linesize for the bitmap of this subtitle.
-     * can be set for text/ass as well once they where rendered
-     */
-    AVPicture pict;
-    enum AVSubtitleType type;
-
-    char *text;                     ///< 0 terminated plain UTF-8 text
-
-    /**
-     * 0 terminated ASS/SSA compatible event line.
-     * The pressentation of this is unaffected by the other values in this
-     * struct.
-     */
-    char *ass;
-} AVSubtitleRect;
-
-typedef struct AVSubtitle {
-    uint16_t format; /* 0 = graphics */
-    uint32_t start_display_time; /* relative to packet pts, in ms */
-    uint32_t end_display_time; /* relative to packet pts, in ms */
-    unsigned num_rects;
-    AVSubtitleRect **rects;
-    int64_t pts;    ///< Same as packet pts, in AV_TIME_BASE
-} AVSubtitle;
-
-/* packet functions */
-
-/**
- * @deprecated use NULL instead
- */
-attribute_deprecated void av_destruct_packet_nofree(AVPacket *pkt);
-
-/**
- * Default packet destructor.
- */
-void av_destruct_packet(AVPacket *pkt);
-
-/**
- * Initialize optional fields of a packet with default values.
- *
- * @param pkt packet
- */
-void av_init_packet(AVPacket *pkt);
-
-/**
- * Allocate the payload of a packet and initialize its fields with
- * default values.
- *
- * @param pkt packet
- * @param size wanted payload size
- * @return 0 if OK, AVERROR_xxx otherwise
- */
-int av_new_packet(AVPacket *pkt, int size);
-
-/**
- * Reduce packet size, correctly zeroing padding
- *
- * @param pkt packet
- * @param size new size
- */
-void av_shrink_packet(AVPacket *pkt, int size);
-
-/**
- * Increase packet size, correctly zeroing padding
- *
- * @param pkt packet
- * @param grow_by number of bytes by which to increase the size of the packet
- */
-int av_grow_packet(AVPacket *pkt, int grow_by);
-
-/**
- * @warning This is a hack - the packet memory allocation stuff is broken. The
- * packet is allocated if it was not really allocated.
- */
-int av_dup_packet(AVPacket *pkt);
-
-/**
- * Free a packet.
- *
- * @param pkt packet to free
- */
-void av_free_packet(AVPacket *pkt);
-
-/**
- * Allocate new information of a packet.
- *
- * @param pkt packet
- * @param type side information type
- * @param size side information size
- * @return pointer to fresh allocated data or NULL otherwise
- */
-uint8_t* av_packet_new_side_data(AVPacket *pkt, enum AVPacketSideDataType type,
-                                 int size);
-
-/**
- * Get side information from packet.
- *
- * @param pkt packet
- * @param type desired side information type
- * @param size pointer for side information size to store (optional)
- * @return pointer to data if present or NULL otherwise
- */
-uint8_t* av_packet_get_side_data(AVPacket *pkt, enum AVPacketSideDataType type,
-                                 int *size);
-
-int av_packet_merge_side_data(AVPacket *pkt);
-
-int av_packet_split_side_data(AVPacket *pkt);
-
-
-/* resample.c */
-
-struct ReSampleContext;
-struct AVResampleContext;
-
-typedef struct ReSampleContext ReSampleContext;
-
-/**
- *  Initialize audio resampling context.
- *
- * @param output_channels  number of output channels
- * @param input_channels   number of input channels
- * @param output_rate      output sample rate
- * @param input_rate       input sample rate
- * @param sample_fmt_out   requested output sample format
- * @param sample_fmt_in    input sample format
- * @param filter_length    length of each FIR filter in the filterbank relative to the cutoff frequency
- * @param log2_phase_count log2 of the number of entries in the polyphase filterbank
- * @param linear           if 1 then the used FIR filter will be linearly interpolated
-                           between the 2 closest, if 0 the closest will be used
- * @param cutoff           cutoff frequency, 1.0 corresponds to half the output sampling rate
- * @return allocated ReSampleContext, NULL if error occured
- */
-ReSampleContext *av_audio_resample_init(int output_channels, int input_channels,
-                                        int output_rate, int input_rate,
-                                        enum AVSampleFormat sample_fmt_out,
-                                        enum AVSampleFormat sample_fmt_in,
-                                        int filter_length, int log2_phase_count,
-                                        int linear, double cutoff);
-
-int audio_resample(ReSampleContext *s, short *output, short *input, int nb_samples);
-
-/**
- * Free resample context.
- *
- * @param s a non-NULL pointer to a resample context previously
- *          created with av_audio_resample_init()
- */
-void audio_resample_close(ReSampleContext *s);
-
-
-/**
- * Initialize an audio resampler.
- * Note, if either rate is not an integer then simply scale both rates up so they are.
- * @param filter_length length of each FIR filter in the filterbank relative to the cutoff freq
- * @param log2_phase_count log2 of the number of entries in the polyphase filterbank
- * @param linear If 1 then the used FIR filter will be linearly interpolated
-                 between the 2 closest, if 0 the closest will be used
- * @param cutoff cutoff frequency, 1.0 corresponds to half the output sampling rate
- */
-struct AVResampleContext *av_resample_init(int out_rate, int in_rate, int filter_length, int log2_phase_count, int linear, double cutoff);
-
-/**
- * Resample an array of samples using a previously configured context.
- * @param src an array of unconsumed samples
- * @param consumed the number of samples of src which have been consumed are returned here
- * @param src_size the number of unconsumed samples available
- * @param dst_size the amount of space in samples available in dst
- * @param update_ctx If this is 0 then the context will not be modified, that way several channels can be resampled with the same context.
- * @return the number of samples written in dst or -1 if an error occurred
- */
-int av_resample(struct AVResampleContext *c, short *dst, short *src, int *consumed, int src_size, int dst_size, int update_ctx);
-
-
-/**
- * Compensate samplerate/timestamp drift. The compensation is done by changing
- * the resampler parameters, so no audible clicks or similar distortions occur
- * @param compensation_distance distance in output samples over which the compensation should be performed
- * @param sample_delta number of output samples which should be output less
- *
- * example: av_resample_compensate(c, 10, 500)
- * here instead of 510 samples only 500 samples would be output
- *
- * note, due to rounding the actual compensation might be slightly different,
- * especially if the compensation_distance is large and the in_rate used during init is small
- */
-void av_resample_compensate(struct AVResampleContext *c, int sample_delta, int compensation_distance);
-void av_resample_close(struct AVResampleContext *c);
-
-/**
- * Allocate memory for a picture.  Call avpicture_free() to free it.
- *
- * @see avpicture_fill()
- *
- * @param picture the picture to be filled in
- * @param pix_fmt the format of the picture
- * @param width the width of the picture
- * @param height the height of the picture
- * @return zero if successful, a negative value if not
- */
-int avpicture_alloc(AVPicture *picture, enum PixelFormat pix_fmt, int width, int height);
-
-/**
- * Free a picture previously allocated by avpicture_alloc().
- * The data buffer used by the AVPicture is freed, but the AVPicture structure
- * itself is not.
- *
- * @param picture the AVPicture to be freed
- */
-void avpicture_free(AVPicture *picture);
-
-/**
- * Fill in the AVPicture fields.
- * The fields of the given AVPicture are filled in by using the 'ptr' address
- * which points to the image data buffer. Depending on the specified picture
- * format, one or multiple image data pointers and line sizes will be set.
- * If a planar format is specified, several pointers will be set pointing to
- * the different picture planes and the line sizes of the different planes
- * will be stored in the lines_sizes array.
- * Call with ptr == NULL to get the required size for the ptr buffer.
- *
- * To allocate the buffer and fill in the AVPicture fields in one call,
- * use avpicture_alloc().
- *
- * @param picture AVPicture whose fields are to be filled in
- * @param ptr Buffer which will contain or contains the actual image data
- * @param pix_fmt The format in which the picture data is stored.
- * @param width the width of the image in pixels
- * @param height the height of the image in pixels
- * @return size of the image data in bytes
- */
-int avpicture_fill(AVPicture *picture, uint8_t *ptr,
-                   enum PixelFormat pix_fmt, int width, int height);
-
-/**
- * Copy pixel data from an AVPicture into a buffer.
- * The data is stored compactly, without any gaps for alignment or padding
- * which may be applied by avpicture_fill().
- *
- * @see avpicture_get_size()
- *
- * @param[in] src AVPicture containing image data
- * @param[in] pix_fmt The format in which the picture data is stored.
- * @param[in] width the width of the image in pixels.
- * @param[in] height the height of the image in pixels.
- * @param[out] dest A buffer into which picture data will be copied.
- * @param[in] dest_size The size of 'dest'.
- * @return The number of bytes written to dest, or a negative value (error code) on error.
- */
-int avpicture_layout(const AVPicture* src, enum PixelFormat pix_fmt, int width, int height,
-                     unsigned char *dest, int dest_size);
-
-/**
- * Calculate the size in bytes that a picture of the given width and height
- * would occupy if stored in the given picture format.
- * Note that this returns the size of a compact representation as generated
- * by avpicture_layout(), which can be smaller than the size required for e.g.
- * avpicture_fill().
- *
- * @param pix_fmt the given picture format
- * @param width the width of the image
- * @param height the height of the image
- * @return Image data size in bytes or -1 on error (e.g. too large dimensions).
- */
-int avpicture_get_size(enum PixelFormat pix_fmt, int width, int height);
-void avcodec_get_chroma_sub_sample(enum PixelFormat pix_fmt, int *h_shift, int *v_shift);
-
-/**
- * Get the name of a codec.
- * @return  a static string identifying the codec; never NULL
- */
-const char *avcodec_get_name(enum CodecID id);
-
-#if FF_API_GET_PIX_FMT_NAME
-/**
- * Return the short name for a pixel format.
- *
- * \see av_get_pix_fmt(), av_get_pix_fmt_string().
- * @deprecated Deprecated in favor of av_get_pix_fmt_name().
- */
-attribute_deprecated
-const char *avcodec_get_pix_fmt_name(enum PixelFormat pix_fmt);
-#endif
-
-void avcodec_set_dimensions(AVCodecContext *s, int width, int height);
-
-/**
- * Return a value representing the fourCC code associated to the
- * pixel format pix_fmt, or 0 if no associated fourCC code can be
- * found.
- */
-unsigned int avcodec_pix_fmt_to_codec_tag(enum PixelFormat pix_fmt);
-
-/**
- * Put a string representing the codec tag codec_tag in buf.
- *
- * @param buf_size size in bytes of buf
- * @return the length of the string that would have been generated if
- * enough space had been available, excluding the trailing null
- */
-size_t av_get_codec_tag_string(char *buf, size_t buf_size, unsigned int codec_tag);
-
-#define FF_LOSS_RESOLUTION  0x0001 /**< loss due to resolution change */
-#define FF_LOSS_DEPTH       0x0002 /**< loss due to color depth change */
-#define FF_LOSS_COLORSPACE  0x0004 /**< loss due to color space conversion */
-#define FF_LOSS_ALPHA       0x0008 /**< loss of alpha bits */
-#define FF_LOSS_COLORQUANT  0x0010 /**< loss due to color quantization */
-#define FF_LOSS_CHROMA      0x0020 /**< loss of chroma (e.g. RGB to gray conversion) */
-
-/**
- * Compute what kind of losses will occur when converting from one specific
- * pixel format to another.
- * When converting from one pixel format to another, information loss may occur.
- * For example, when converting from RGB24 to GRAY, the color information will
- * be lost. Similarly, other losses occur when converting from some formats to
- * other formats. These losses can involve loss of chroma, but also loss of
- * resolution, loss of color depth, loss due to the color space conversion, loss
- * of the alpha bits or loss due to color quantization.
- * avcodec_get_fix_fmt_loss() informs you about the various types of losses
- * which will occur when converting from one pixel format to another.
- *
- * @param[in] dst_pix_fmt destination pixel format
- * @param[in] src_pix_fmt source pixel format
- * @param[in] has_alpha Whether the source pixel format alpha channel is used.
- * @return Combination of flags informing you what kind of losses will occur
- * (maximum loss for an invalid dst_pix_fmt).
- */
-int avcodec_get_pix_fmt_loss(enum PixelFormat dst_pix_fmt, enum PixelFormat src_pix_fmt,
-                             int has_alpha);
-
-/**
- * Find the best pixel format to convert to given a certain source pixel
- * format.  When converting from one pixel format to another, information loss
- * may occur.  For example, when converting from RGB24 to GRAY, the color
- * information will be lost. Similarly, other losses occur when converting from
- * some formats to other formats. avcodec_find_best_pix_fmt() searches which of
- * the given pixel formats should be used to suffer the least amount of loss.
- * The pixel formats from which it chooses one, are determined by the
- * pix_fmt_mask parameter.
- *
- * Note, only the first 64 pixel formats will fit in pix_fmt_mask.
- *
- * @code
- * src_pix_fmt = PIX_FMT_YUV420P;
- * pix_fmt_mask = (1 << PIX_FMT_YUV422P) | (1 << PIX_FMT_RGB24);
- * dst_pix_fmt = avcodec_find_best_pix_fmt(pix_fmt_mask, src_pix_fmt, alpha, &loss);
- * @endcode
- *
- * @param[in] pix_fmt_mask bitmask determining which pixel format to choose from
- * @param[in] src_pix_fmt source pixel format
- * @param[in] has_alpha Whether the source pixel format alpha channel is used.
- * @param[out] loss_ptr Combination of flags informing you what kind of losses will occur.
- * @return The best pixel format to convert to or -1 if none was found.
- */
-enum PixelFormat avcodec_find_best_pix_fmt(int64_t pix_fmt_mask, enum PixelFormat src_pix_fmt,
-                              int has_alpha, int *loss_ptr);
-
-/**
- * Find the best pixel format to convert to given a certain source pixel
- * format and a selection of two destination pixel formats. When converting from
- * one pixel format to another, information loss may occur.  For example, when converting
- * from RGB24 to GRAY, the color information will be lost. Similarly, other losses occur when
- * converting from some formats to other formats. avcodec_find_best_pix_fmt2() selects which of
- * the given pixel formats should be used to suffer the least amount of loss.
- *
- * If one of the destination formats is PIX_FMT_NONE the other pixel format (if valid) will be
- * returned.
- *
- * @code
- * src_pix_fmt = PIX_FMT_YUV420P;
- * dst_pix_fmt1= PIX_FMT_RGB24;
- * dst_pix_fmt2= PIX_FMT_GRAY8;
- * dst_pix_fmt3= PIX_FMT_RGB8;
- * loss= FF_LOSS_CHROMA; // don't care about chroma loss, so chroma loss will be ignored.
- * dst_pix_fmt = avcodec_find_best_pix_fmt2(dst_pix_fmt1, dst_pix_fmt2, src_pix_fmt, alpha, &loss);
- * dst_pix_fmt = avcodec_find_best_pix_fmt2(dst_pix_fmt, dst_pix_fmt3, src_pix_fmt, alpha, &loss);
- * @endcode
- *
- * @param[in] dst_pix_fmt1 One of the two destination pixel formats to choose from
- * @param[in] dst_pix_fmt2 The other of the two destination pixel formats to choose from
- * @param[in] src_pix_fmt Source pixel format
- * @param[in] has_alpha Whether the source pixel format alpha channel is used.
- * @param[in, out] loss_ptr Combination of loss flags. In: selects which of the losses to ignore, i.e.
- *                               NULL or value of zero means we care about all losses. Out: the loss
- *                               that occurs when converting from src to selected dst pixel format.
- * @return The best pixel format to convert to or -1 if none was found.
- */
-enum PixelFormat avcodec_find_best_pix_fmt2(enum PixelFormat dst_pix_fmt1, enum PixelFormat dst_pix_fmt2,
-                                            enum PixelFormat src_pix_fmt, int has_alpha, int *loss_ptr);
-
-#if FF_API_GET_ALPHA_INFO
-#define FF_ALPHA_TRANSP       0x0001 /* image has some totally transparent pixels */
-#define FF_ALPHA_SEMI_TRANSP  0x0002 /* image has some transparent pixels */
-
-/**
- * Tell if an image really has transparent alpha values.
- * @return ored mask of FF_ALPHA_xxx constants
- */
-attribute_deprecated
-int img_get_alpha_info(const AVPicture *src,
-                       enum PixelFormat pix_fmt, int width, int height);
-#endif
-
-/* deinterlace a picture */
-/* deinterlace - if not supported return -1 */
-int avpicture_deinterlace(AVPicture *dst, const AVPicture *src,
-                          enum PixelFormat pix_fmt, int width, int height);
-
-/* external high level API */
-
-/**
- * If c is NULL, returns the first registered codec,
- * if c is non-NULL, returns the next registered codec after c,
- * or NULL if c is the last one.
- */
-AVCodec *av_codec_next(AVCodec *c);
-
-/**
- * Return the LIBAVCODEC_VERSION_INT constant.
- */
-unsigned avcodec_version(void);
-
-/**
- * Return the libavcodec build-time configuration.
- */
-const char *avcodec_configuration(void);
-
-/**
- * Return the libavcodec license.
- */
-const char *avcodec_license(void);
-
-#if FF_API_AVCODEC_INIT
-/**
- * @deprecated this function is called automatically from avcodec_register()
- * and avcodec_register_all(), there is no need to call it manually
- */
-attribute_deprecated
-void avcodec_init(void);
-#endif
-
-/**
- * Register the codec codec and initialize libavcodec.
- *
- * @warning either this function or avcodec_register_all() must be called
- * before any other libavcodec functions.
- *
- * @see avcodec_register_all()
- */
-void avcodec_register(AVCodec *codec);
-
-/**
- * Find a registered encoder with a matching codec ID.
- *
- * @param id CodecID of the requested encoder
- * @return An encoder if one was found, NULL otherwise.
- */
-AVCodec *avcodec_find_encoder(enum CodecID id);
-
-/**
- * Find a registered encoder with the specified name.
- *
- * @param name name of the requested encoder
- * @return An encoder if one was found, NULL otherwise.
- */
-AVCodec *avcodec_find_encoder_by_name(const char *name);
-
-/**
- * Find a registered decoder with a matching codec ID.
- *
- * @param id CodecID of the requested decoder
- * @return A decoder if one was found, NULL otherwise.
- */
-AVCodec *avcodec_find_decoder(enum CodecID id);
-
-/**
- * Find a registered decoder with the specified name.
- *
- * @param name name of the requested decoder
- * @return A decoder if one was found, NULL otherwise.
- */
-AVCodec *avcodec_find_decoder_by_name(const char *name);
-void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode);
-
-/**
- * Return a name for the specified profile, if available.
- *
- * @param codec the codec that is searched for the given profile
- * @param profile the profile value for which a name is requested
- * @return A name for the profile if found, NULL otherwise.
- */
-const char *av_get_profile_name(const AVCodec *codec, int profile);
-
-#if FF_API_ALLOC_CONTEXT
-/**
- * Set the fields of the given AVCodecContext to default values.
- *
- * @param s The AVCodecContext of which the fields should be set to default values.
- * @deprecated use avcodec_get_context_defaults3
- */
-attribute_deprecated
-void avcodec_get_context_defaults(AVCodecContext *s);
-
-/** THIS FUNCTION IS NOT YET PART OF THE PUBLIC API!
- *  we WILL change its arguments and name a few times! */
-attribute_deprecated
-void avcodec_get_context_defaults2(AVCodecContext *s, enum AVMediaType);
-#endif
-
-/**
- * Set the fields of the given AVCodecContext to default values corresponding
- * to the given codec (defaults may be codec-dependent).
- *
- * Do not call this function if a non-NULL codec has been passed
- * to avcodec_alloc_context3() that allocated this AVCodecContext.
- * If codec is non-NULL, it is illegal to call avcodec_open2() with a
- * different codec on this AVCodecContext.
- */
-int avcodec_get_context_defaults3(AVCodecContext *s, AVCodec *codec);
-
-#if FF_API_ALLOC_CONTEXT
-/**
- * Allocate an AVCodecContext and set its fields to default values.  The
- * resulting struct can be deallocated by simply calling av_free().
- *
- * @return An AVCodecContext filled with default values or NULL on failure.
- * @see avcodec_get_context_defaults
- *
- * @deprecated use avcodec_alloc_context3()
- */
-attribute_deprecated
-AVCodecContext *avcodec_alloc_context(void);
-
-/** THIS FUNCTION IS NOT YET PART OF THE PUBLIC API!
- *  we WILL change its arguments and name a few times! */
-attribute_deprecated
-AVCodecContext *avcodec_alloc_context2(enum AVMediaType);
-#endif
-
-/**
- * Allocate an AVCodecContext and set its fields to default values.  The
- * resulting struct can be deallocated by simply calling av_free().
- *
- * @param codec if non-NULL, allocate private data and initialize defaults
- *              for the given codec. It is illegal to then call avcodec_open2()
- *              with a different codec.
- *
- * @return An AVCodecContext filled with default values or NULL on failure.
- * @see avcodec_get_context_defaults
- */
-AVCodecContext *avcodec_alloc_context3(AVCodec *codec);
-
-/**
- * Copy the settings of the source AVCodecContext into the destination
- * AVCodecContext. The resulting destination codec context will be
- * unopened, i.e. you are required to call avcodec_open2() before you
- * can use this AVCodecContext to decode/encode video/audio data.
- *
- * @param dest target codec context, should be initialized with
- *             avcodec_alloc_context3(), but otherwise uninitialized
- * @param src source codec context
- * @return AVERROR() on error (e.g. memory allocation error), 0 on success
- */
-int avcodec_copy_context(AVCodecContext *dest, const AVCodecContext *src);
-
-/**
- * Set the fields of the given AVFrame to default values.
- *
- * @param pic The AVFrame of which the fields should be set to default values.
- */
-void avcodec_get_frame_defaults(AVFrame *pic);
-
-/**
- * Allocate an AVFrame and set its fields to default values.  The resulting
- * struct can be deallocated by simply calling av_free().
- *
- * @return An AVFrame filled with default values or NULL on failure.
- * @see avcodec_get_frame_defaults
- */
-AVFrame *avcodec_alloc_frame(void);
-
-int avcodec_default_get_buffer(AVCodecContext *s, AVFrame *pic);
-void avcodec_default_release_buffer(AVCodecContext *s, AVFrame *pic);
-int avcodec_default_reget_buffer(AVCodecContext *s, AVFrame *pic);
-
-/**
- * Return the amount of padding in pixels which the get_buffer callback must
- * provide around the edge of the image for codecs which do not have the
- * CODEC_FLAG_EMU_EDGE flag.
- *
- * @return Required padding in pixels.
- */
-unsigned avcodec_get_edge_width(void);
-/**
- * Modify width and height values so that they will result in a memory
- * buffer that is acceptable for the codec if you do not use any horizontal
- * padding.
- *
- * May only be used if a codec with CODEC_CAP_DR1 has been opened.
- * If CODEC_FLAG_EMU_EDGE is not set, the dimensions must have been increased
- * according to avcodec_get_edge_width() before.
- */
-void avcodec_align_dimensions(AVCodecContext *s, int *width, int *height);
-/**
- * Modify width and height values so that they will result in a memory
- * buffer that is acceptable for the codec if you also ensure that all
- * line sizes are a multiple of the respective linesize_align[i].
- *
- * May only be used if a codec with CODEC_CAP_DR1 has been opened.
- * If CODEC_FLAG_EMU_EDGE is not set, the dimensions must have been increased
- * according to avcodec_get_edge_width() before.
- */
-void avcodec_align_dimensions2(AVCodecContext *s, int *width, int *height,
-                               int linesize_align[AV_NUM_DATA_POINTERS]);
-
-enum PixelFormat avcodec_default_get_format(struct AVCodecContext *s, const enum PixelFormat * fmt);
-
-#if FF_API_THREAD_INIT
-/**
- * @deprecated Set s->thread_count before calling avcodec_open2() instead of calling this.
- */
-attribute_deprecated
-int avcodec_thread_init(AVCodecContext *s, int thread_count);
-#endif
-
-int avcodec_default_execute(AVCodecContext *c, int (*func)(AVCodecContext *c2, void *arg2),void *arg, int *ret, int count, int size);
-int avcodec_default_execute2(AVCodecContext *c, int (*func)(AVCodecContext *c2, void *arg2, int, int),void *arg, int *ret, int count);
-//FIXME func typedef
-
-#if FF_API_AVCODEC_OPEN
-/**
- * Initialize the AVCodecContext to use the given AVCodec. Prior to using this
- * function the context has to be allocated.
- *
- * The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(),
- * avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for
- * retrieving a codec.
- *
- * @warning This function is not thread safe!
- *
- * @code
- * avcodec_register_all();
- * codec = avcodec_find_decoder(CODEC_ID_H264);
- * if (!codec)
- *     exit(1);
- *
- * context = avcodec_alloc_context3(codec);
- *
- * if (avcodec_open(context, codec) < 0)
- *     exit(1);
- * @endcode
- *
- * @param avctx The context which will be set up to use the given codec.
- * @param codec The codec to use within the context.
- * @return zero on success, a negative value on error
- * @see avcodec_alloc_context3, avcodec_find_decoder, avcodec_find_encoder, avcodec_close
- *
- * @deprecated use avcodec_open2
- */
-attribute_deprecated
-int avcodec_open(AVCodecContext *avctx, AVCodec *codec);
-#endif
-
-/**
- * Initialize the AVCodecContext to use the given AVCodec. Prior to using this
- * function the context has to be allocated with avcodec_alloc_context3().
- *
- * The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(),
- * avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for
- * retrieving a codec.
- *
- * @warning This function is not thread safe!
- *
- * @code
- * avcodec_register_all();
- * av_dict_set(&opts, "b", "2.5M", 0);
- * codec = avcodec_find_decoder(CODEC_ID_H264);
- * if (!codec)
- *     exit(1);
- *
- * context = avcodec_alloc_context3(codec);
- *
- * if (avcodec_open2(context, codec, opts) < 0)
- *     exit(1);
- * @endcode
- *
- * @param avctx The context to initialize.
- * @param options A dictionary filled with AVCodecContext and codec-private options.
- *                On return this object will be filled with options that were not found.
- *
- * @return zero on success, a negative value on error
- * @see avcodec_alloc_context3(), avcodec_find_decoder(), avcodec_find_encoder(),
- *      av_dict_set(), av_opt_find().
- */
-int avcodec_open2(AVCodecContext *avctx, AVCodec *codec, AVDictionary **options);
-
-#if FF_API_OLD_DECODE_AUDIO
-/**
- * Wrapper function which calls avcodec_decode_audio4.
- *
- * @deprecated Use avcodec_decode_audio4 instead.
- *
- * Decode the audio frame of size avpkt->size from avpkt->data into samples.
- * Some decoders may support multiple frames in a single AVPacket, such
- * decoders would then just decode the first frame. In this case,
- * avcodec_decode_audio3 has to be called again with an AVPacket that contains
- * the remaining data in order to decode the second frame etc.
- * If no frame
- * could be outputted, frame_size_ptr is zero. Otherwise, it is the
- * decompressed frame size in bytes.
- *
- * @warning You must set frame_size_ptr to the allocated size of the
- * output buffer before calling avcodec_decode_audio3().
- *
- * @warning The input buffer must be FF_INPUT_BUFFER_PADDING_SIZE larger than
- * the actual read bytes because some optimized bitstream readers read 32 or 64
- * bits at once and could read over the end.
- *
- * @warning The end of the input buffer avpkt->data should be set to 0 to ensure that
- * no overreading happens for damaged MPEG streams.
- *
- * @note You might have to align the input buffer avpkt->data and output buffer
- * samples. The alignment requirements depend on the CPU: On some CPUs it isn't
- * necessary at all, on others it won't work at all if not aligned and on others
- * it will work but it will have an impact on performance.
- *
- * In practice, avpkt->data should have 4 byte alignment at minimum and
- * samples should be 16 byte aligned unless the CPU doesn't need it
- * (AltiVec and SSE do).
- *
- * @note Codecs which have the CODEC_CAP_DELAY capability set have a delay
- * between input and output, these need to be fed with avpkt->data=NULL,
- * avpkt->size=0 at the end to return the remaining frames.
- *
- * @param avctx the codec context
- * @param[out] samples the output buffer, sample type in avctx->sample_fmt
- *                     If the sample format is planar, each channel plane will
- *                     be the same size, with no padding between channels.
- * @param[in,out] frame_size_ptr the output buffer size in bytes
- * @param[in] avpkt The input AVPacket containing the input buffer.
- *            You can create such packet with av_init_packet() and by then setting
- *            data and size, some decoders might in addition need other fields.
- *            All decoders are designed to use the least fields possible though.
- * @return On error a negative value is returned, otherwise the number of bytes
- * used or zero if no frame data was decompressed (used) from the input AVPacket.
- */
-attribute_deprecated int avcodec_decode_audio3(AVCodecContext *avctx, int16_t *samples,
-                         int *frame_size_ptr,
-                         AVPacket *avpkt);
-#endif
-
-/**
- * Decode the audio frame of size avpkt->size from avpkt->data into frame.
- *
- * Some decoders may support multiple frames in a single AVPacket. Such
- * decoders would then just decode the first frame. In this case,
- * avcodec_decode_audio4 has to be called again with an AVPacket containing
- * the remaining data in order to decode the second frame, etc...
- * Even if no frames are returned, the packet needs to be fed to the decoder
- * with remaining data until it is completely consumed or an error occurs.
- *
- * @warning The input buffer, avpkt->data must be FF_INPUT_BUFFER_PADDING_SIZE
- *          larger than the actual read bytes because some optimized bitstream
- *          readers read 32 or 64 bits at once and could read over the end.
- *
- * @note You might have to align the input buffer. The alignment requirements
- *       depend on the CPU and the decoder.
- *
- * @param      avctx the codec context
- * @param[out] frame The AVFrame in which to store decoded audio samples.
- *                   Decoders request a buffer of a particular size by setting
- *                   AVFrame.nb_samples prior to calling get_buffer(). The
- *                   decoder may, however, only utilize part of the buffer by
- *                   setting AVFrame.nb_samples to a smaller value in the
- *                   output frame.
- * @param[out] got_frame_ptr Zero if no frame could be decoded, otherwise it is
- *                           non-zero.
- * @param[in]  avpkt The input AVPacket containing the input buffer.
- *                   At least avpkt->data and avpkt->size should be set. Some
- *                   decoders might also require additional fields to be set.
- * @return A negative error code is returned if an error occurred during
- *         decoding, otherwise the number of bytes consumed from the input
- *         AVPacket is returned.
- */
-int avcodec_decode_audio4(AVCodecContext *avctx, AVFrame *frame,
-                          int *got_frame_ptr, AVPacket *avpkt);
-
-/**
- * Decode the video frame of size avpkt->size from avpkt->data into picture.
- * Some decoders may support multiple frames in a single AVPacket, such
- * decoders would then just decode the first frame.
- *
- * @warning The input buffer must be FF_INPUT_BUFFER_PADDING_SIZE larger than
- * the actual read bytes because some optimized bitstream readers read 32 or 64
- * bits at once and could read over the end.
- *
- * @warning The end of the input buffer buf should be set to 0 to ensure that
- * no overreading happens for damaged MPEG streams.
- *
- * @note You might have to align the input buffer avpkt->data.
- * The alignment requirements depend on the CPU: on some CPUs it isn't
- * necessary at all, on others it won't work at all if not aligned and on others
- * it will work but it will have an impact on performance.
- *
- * In practice, avpkt->data should have 4 byte alignment at minimum.
- *
- * @note Codecs which have the CODEC_CAP_DELAY capability set have a delay
- * between input and output, these need to be fed with avpkt->data=NULL,
- * avpkt->size=0 at the end to return the remaining frames.
- *
- * @param avctx the codec context
- * @param[out] picture The AVFrame in which the decoded video frame will be stored.
- *             Use avcodec_alloc_frame to get an AVFrame, the codec will
- *             allocate memory for the actual bitmap.
- *             with default get/release_buffer(), the decoder frees/reuses the bitmap as it sees fit.
- *             with overridden get/release_buffer() (needs CODEC_CAP_DR1) the user decides into what buffer the decoder
- *                   decodes and the decoder tells the user once it does not need the data anymore,
- *                   the user app can at this point free/reuse/keep the memory as it sees fit.
- *
- * @param[in] avpkt The input AVpacket containing the input buffer.
- *            You can create such packet with av_init_packet() and by then setting
- *            data and size, some decoders might in addition need other fields like
- *            flags&AV_PKT_FLAG_KEY. All decoders are designed to use the least
- *            fields possible.
- * @param[in,out] got_picture_ptr Zero if no frame could be decompressed, otherwise, it is nonzero.
- * @return On error a negative value is returned, otherwise the number of bytes
- * used or zero if no frame could be decompressed.
- */
-int avcodec_decode_video2(AVCodecContext *avctx, AVFrame *picture,
-                         int *got_picture_ptr,
-                         AVPacket *avpkt);
-
-/**
- * Decode a subtitle message.
- * Return a negative value on error, otherwise return the number of bytes used.
- * If no subtitle could be decompressed, got_sub_ptr is zero.
- * Otherwise, the subtitle is stored in *sub.
- * Note that CODEC_CAP_DR1 is not available for subtitle codecs. This is for
- * simplicity, because the performance difference is expect to be negligible
- * and reusing a get_buffer written for video codecs would probably perform badly
- * due to a potentially very different allocation pattern.
- *
- * @param avctx the codec context
- * @param[out] sub The AVSubtitle in which the decoded subtitle will be stored, must be
-                   freed with avsubtitle_free if *got_sub_ptr is set.
- * @param[in,out] got_sub_ptr Zero if no subtitle could be decompressed, otherwise, it is nonzero.
- * @param[in] avpkt The input AVPacket containing the input buffer.
- */
-int avcodec_decode_subtitle2(AVCodecContext *avctx, AVSubtitle *sub,
-                            int *got_sub_ptr,
-                            AVPacket *avpkt);
-
-/**
- * Frees all allocated data in the given subtitle struct.
- *
- * @param sub AVSubtitle to free.
- */
-void avsubtitle_free(AVSubtitle *sub);
-
-/**
- * Encode an audio frame from samples into buf.
- *
- * @note The output buffer should be at least FF_MIN_BUFFER_SIZE bytes large.
- * However, for PCM audio the user will know how much space is needed
- * because it depends on the value passed in buf_size as described
- * below. In that case a lower value can be used.
- *
- * @param avctx the codec context
- * @param[out] buf the output buffer
- * @param[in] buf_size the output buffer size
- * @param[in] samples the input buffer containing the samples
- * The number of samples read from this buffer is frame_size*channels,
- * both of which are defined in avctx.
- * For PCM audio the number of samples read from samples is equal to
- * buf_size * input_sample_size / output_sample_size.
- * @return On error a negative value is returned, on success zero or the number
- * of bytes used to encode the data read from the input buffer.
- */
-int avcodec_encode_audio(AVCodecContext *avctx, uint8_t *buf, int buf_size,
-                         const short *samples);
-
-/**
- * Encode a video frame from pict into buf.
- * The input picture should be
- * stored using a specific format, namely avctx.pix_fmt.
- *
- * @param avctx the codec context
- * @param[out] buf the output buffer for the bitstream of encoded frame
- * @param[in] buf_size the size of the output buffer in bytes
- * @param[in] pict the input picture to encode
- * @return On error a negative value is returned, on success zero or the number
- * of bytes used from the output buffer.
- */
-int avcodec_encode_video(AVCodecContext *avctx, uint8_t *buf, int buf_size,
-                         const AVFrame *pict);
-int avcodec_encode_subtitle(AVCodecContext *avctx, uint8_t *buf, int buf_size,
-                            const AVSubtitle *sub);
-
-int avcodec_close(AVCodecContext *avctx);
-
-/**
- * Register all the codecs, parsers and bitstream filters which were enabled at
- * configuration time. If you do not call this function you can select exactly
- * which formats you want to support, by using the individual registration
- * functions.
- *
- * @see avcodec_register
- * @see av_register_codec_parser
- * @see av_register_bitstream_filter
- */
-void avcodec_register_all(void);
-
-/**
- * Flush buffers, should be called when seeking or when switching to a different stream.
- */
-void avcodec_flush_buffers(AVCodecContext *avctx);
-
-void avcodec_default_free_buffers(AVCodecContext *s);
-
-/* misc useful functions */
-
-#if FF_API_OLD_FF_PICT_TYPES
-/**
- * Return a single letter to describe the given picture type pict_type.
- *
- * @param[in] pict_type the picture type
- * @return A single character representing the picture type.
- * @deprecated Use av_get_picture_type_char() instead.
- */
-attribute_deprecated
-char av_get_pict_type_char(int pict_type);
-#endif
-
-/**
- * Return codec bits per sample.
- *
- * @param[in] codec_id the codec
- * @return Number of bits per sample or zero if unknown for the given codec.
- */
-int av_get_bits_per_sample(enum CodecID codec_id);
-
-#if FF_API_OLD_SAMPLE_FMT
-/**
- * @deprecated Use av_get_bytes_per_sample() instead.
- */
-attribute_deprecated
-int av_get_bits_per_sample_format(enum AVSampleFormat sample_fmt);
-#endif
-
-/* frame parsing */
-typedef struct AVCodecParserContext {
-    void *priv_data;
-    struct AVCodecParser *parser;
-    int64_t frame_offset; /* offset of the current frame */
-    int64_t cur_offset; /* current offset
-                           (incremented by each av_parser_parse()) */
-    int64_t next_frame_offset; /* offset of the next frame */
-    /* video info */
-    int pict_type; /* XXX: Put it back in AVCodecContext. */
-    /**
-     * This field is used for proper frame duration computation in lavf.
-     * It signals, how much longer the frame duration of the current frame
-     * is compared to normal frame duration.
-     *
-     * frame_duration = (1 + repeat_pict) * time_base
-     *
-     * It is used by codecs like H.264 to display telecined material.
-     */
-    int repeat_pict; /* XXX: Put it back in AVCodecContext. */
-    int64_t pts;     /* pts of the current frame */
-    int64_t dts;     /* dts of the current frame */
-
-    /* private data */
-    int64_t last_pts;
-    int64_t last_dts;
-    int fetch_timestamp;
-
-#define AV_PARSER_PTS_NB 4
-    int cur_frame_start_index;
-    int64_t cur_frame_offset[AV_PARSER_PTS_NB];
-    int64_t cur_frame_pts[AV_PARSER_PTS_NB];
-    int64_t cur_frame_dts[AV_PARSER_PTS_NB];
-
-    int flags;
-#define PARSER_FLAG_COMPLETE_FRAMES           0x0001
-#define PARSER_FLAG_ONCE                      0x0002
-/// Set if the parser has a valid file offset
-#define PARSER_FLAG_FETCHED_OFFSET            0x0004
-
-    int64_t offset;      ///< byte offset from starting packet start
-    int64_t cur_frame_end[AV_PARSER_PTS_NB];
-
-    /**
-     * Set by parser to 1 for key frames and 0 for non-key frames.
-     * It is initialized to -1, so if the parser doesn't set this flag,
-     * old-style fallback using AV_PICTURE_TYPE_I picture type as key frames
-     * will be used.
-     */
-    int key_frame;
-
-    /**
-     * Time difference in stream time base units from the pts of this
-     * packet to the point at which the output from the decoder has converged
-     * independent from the availability of previous frames. That is, the
-     * frames are virtually identical no matter if decoding started from
-     * the very first frame or from this keyframe.
-     * Is AV_NOPTS_VALUE if unknown.
-     * This field is not the display duration of the current frame.
-     * This field has no meaning if the packet does not have AV_PKT_FLAG_KEY
-     * set.
-     *
-     * The purpose of this field is to allow seeking in streams that have no
-     * keyframes in the conventional sense. It corresponds to the
-     * recovery point SEI in H.264 and match_time_delta in NUT. It is also
-     * essential for some types of subtitle streams to ensure that all
-     * subtitles are correctly displayed after seeking.
-     */
-    int64_t convergence_duration;
-
-    // Timestamp generation support:
-    /**
-     * Synchronization point for start of timestamp generation.
-     *
-     * Set to >0 for sync point, 0 for no sync point and <0 for undefined
-     * (default).
-     *
-     * For example, this corresponds to presence of H.264 buffering period
-     * SEI message.
-     */
-    int dts_sync_point;
-
-    /**
-     * Offset of the current timestamp against last timestamp sync point in
-     * units of AVCodecContext.time_base.
-     *
-     * Set to INT_MIN when dts_sync_point unused. Otherwise, it must
-     * contain a valid timestamp offset.
-     *
-     * Note that the timestamp of sync point has usually a nonzero
-     * dts_ref_dts_delta, which refers to the previous sync point. Offset of
-     * the next frame after timestamp sync point will be usually 1.
-     *
-     * For example, this corresponds to H.264 cpb_removal_delay.
-     */
-    int dts_ref_dts_delta;
-
-    /**
-     * Presentation delay of current frame in units of AVCodecContext.time_base.
-     *
-     * Set to INT_MIN when dts_sync_point unused. Otherwise, it must
-     * contain valid non-negative timestamp delta (presentation time of a frame
-     * must not lie in the past).
-     *
-     * This delay represents the difference between decoding and presentation
-     * time of the frame.
-     *
-     * For example, this corresponds to H.264 dpb_output_delay.
-     */
-    int pts_dts_delta;
-
-    /**
-     * Position of the packet in file.
-     *
-     * Analogous to cur_frame_pts/dts
-     */
-    int64_t cur_frame_pos[AV_PARSER_PTS_NB];
-
-    /**
-     * Byte position of currently parsed frame in stream.
-     */
-    int64_t pos;
-
-    /**
-     * Previous frame byte position.
-     */
-    int64_t last_pos;
-} AVCodecParserContext;
-
-typedef struct AVCodecParser {
-    int codec_ids[5]; /* several codec IDs are permitted */
-    int priv_data_size;
-    int (*parser_init)(AVCodecParserContext *s);
-    int (*parser_parse)(AVCodecParserContext *s,
-                        AVCodecContext *avctx,
-                        const uint8_t **poutbuf, int *poutbuf_size,
-                        const uint8_t *buf, int buf_size);
-    void (*parser_close)(AVCodecParserContext *s);
-    int (*split)(AVCodecContext *avctx, const uint8_t *buf, int buf_size);
-    struct AVCodecParser *next;
-} AVCodecParser;
-
-AVCodecParser *av_parser_next(AVCodecParser *c);
-
-void av_register_codec_parser(AVCodecParser *parser);
-AVCodecParserContext *av_parser_init(int codec_id);
-
-/**
- * Parse a packet.
- *
- * @param s             parser context.
- * @param avctx         codec context.
- * @param poutbuf       set to pointer to parsed buffer or NULL if not yet finished.
- * @param poutbuf_size  set to size of parsed buffer or zero if not yet finished.
- * @param buf           input buffer.
- * @param buf_size      input length, to signal EOF, this should be 0 (so that the last frame can be output).
- * @param pts           input presentation timestamp.
- * @param dts           input decoding timestamp.
- * @param pos           input byte position in stream.
- * @return the number of bytes of the input bitstream used.
- *
- * Example:
- * @code
- *   while(in_len){
- *       len = av_parser_parse2(myparser, AVCodecContext, &data, &size,
- *                                        in_data, in_len,
- *                                        pts, dts, pos);
- *       in_data += len;
- *       in_len  -= len;
- *
- *       if(size)
- *          decode_frame(data, size);
- *   }
- * @endcode
- */
-int av_parser_parse2(AVCodecParserContext *s,
-                     AVCodecContext *avctx,
-                     uint8_t **poutbuf, int *poutbuf_size,
-                     const uint8_t *buf, int buf_size,
-                     int64_t pts, int64_t dts,
-                     int64_t pos);
-
-int av_parser_change(AVCodecParserContext *s,
-                     AVCodecContext *avctx,
-                     uint8_t **poutbuf, int *poutbuf_size,
-                     const uint8_t *buf, int buf_size, int keyframe);
-void av_parser_close(AVCodecParserContext *s);
-
-
-typedef struct AVBitStreamFilterContext {
-    void *priv_data;
-    struct AVBitStreamFilter *filter;
-    AVCodecParserContext *parser;
-    struct AVBitStreamFilterContext *next;
-} AVBitStreamFilterContext;
-
-
-typedef struct AVBitStreamFilter {
-    const char *name;
-    int priv_data_size;
-    int (*filter)(AVBitStreamFilterContext *bsfc,
-                  AVCodecContext *avctx, const char *args,
-                  uint8_t **poutbuf, int *poutbuf_size,
-                  const uint8_t *buf, int buf_size, int keyframe);
-    void (*close)(AVBitStreamFilterContext *bsfc);
-    struct AVBitStreamFilter *next;
-} AVBitStreamFilter;
-
-void av_register_bitstream_filter(AVBitStreamFilter *bsf);
-AVBitStreamFilterContext *av_bitstream_filter_init(const char *name);
-int av_bitstream_filter_filter(AVBitStreamFilterContext *bsfc,
-                               AVCodecContext *avctx, const char *args,
-                               uint8_t **poutbuf, int *poutbuf_size,
-                               const uint8_t *buf, int buf_size, int keyframe);
-void av_bitstream_filter_close(AVBitStreamFilterContext *bsf);
-
-AVBitStreamFilter *av_bitstream_filter_next(AVBitStreamFilter *f);
-
-/* memory */
-
-/**
- * Reallocate the given block if it is not large enough, otherwise do nothing.
- *
- * @see av_realloc
- */
-void *av_fast_realloc(void *ptr, unsigned int *size, size_t min_size);
-
-/**
- * Allocate a buffer, reusing the given one if large enough.
- *
- * Contrary to av_fast_realloc the current buffer contents might not be
- * preserved and on error the old buffer is freed, thus no special
- * handling to avoid memleaks is necessary.
- *
- * @param ptr pointer to pointer to already allocated buffer, overwritten with pointer to new buffer
- * @param size size of the buffer *ptr points to
- * @param min_size minimum size of *ptr buffer after returning, *ptr will be NULL and
- *                 *size 0 if an error occurred.
- */
-void av_fast_malloc(void *ptr, unsigned int *size, size_t min_size);
-
-/**
- * Copy image src to dst. Wraps av_picture_data_copy() above.
- */
-void av_picture_copy(AVPicture *dst, const AVPicture *src,
-                     enum PixelFormat pix_fmt, int width, int height);
-
-/**
- * Crop image top and left side.
- */
-int av_picture_crop(AVPicture *dst, const AVPicture *src,
-                    enum PixelFormat pix_fmt, int top_band, int left_band);
-
-/**
- * Pad image.
- */
-int av_picture_pad(AVPicture *dst, const AVPicture *src, int height, int width, enum PixelFormat pix_fmt,
-            int padtop, int padbottom, int padleft, int padright, int *color);
-
-/**
- * Encode extradata length to a buffer. Used by xiph codecs.
- *
- * @param s buffer to write to; must be at least (v/255+1) bytes long
- * @param v size of extradata in bytes
- * @return number of bytes written to the buffer.
- */
-unsigned int av_xiphlacing(unsigned char *s, unsigned int v);
-
-/**
- * Logs a generic warning message about a missing feature. This function is
- * intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
- * only, and would normally not be used by applications.
- * @param[in] avc a pointer to an arbitrary struct of which the first field is
- * a pointer to an AVClass struct
- * @param[in] feature string containing the name of the missing feature
- * @param[in] want_sample indicates if samples are wanted which exhibit this feature.
- * If want_sample is non-zero, additional verbage will be added to the log
- * message which tells the user how to report samples to the development
- * mailing list.
- */
-void av_log_missing_feature(void *avc, const char *feature, int want_sample);
-
-/**
- * Log a generic warning message asking for a sample. This function is
- * intended to be used internally by FFmpeg (libavcodec, libavformat, etc.)
- * only, and would normally not be used by applications.
- * @param[in] avc a pointer to an arbitrary struct of which the first field is
- * a pointer to an AVClass struct
- * @param[in] msg string containing an optional message, or NULL if no message
- */
-void av_log_ask_for_sample(void *avc, const char *msg, ...) av_printf_format(2, 3);
-
-/**
- * Register the hardware accelerator hwaccel.
- */
-void av_register_hwaccel(AVHWAccel *hwaccel);
-
-/**
- * If hwaccel is NULL, returns the first registered hardware accelerator,
- * if hwaccel is non-NULL, returns the next registered hardware accelerator
- * after hwaccel, or NULL if hwaccel is the last one.
- */
-AVHWAccel *av_hwaccel_next(AVHWAccel *hwaccel);
-
-
-/**
- * Lock operation used by lockmgr
- */
-enum AVLockOp {
-  AV_LOCK_CREATE,  ///< Create a mutex
-  AV_LOCK_OBTAIN,  ///< Lock the mutex
-  AV_LOCK_RELEASE, ///< Unlock the mutex
-  AV_LOCK_DESTROY, ///< Free mutex resources
-};
-
-/**
- * Register a user provided lock manager supporting the operations
- * specified by AVLockOp. mutex points to a (void *) where the
- * lockmgr should store/get a pointer to a user allocated mutex. It's
- * NULL upon AV_LOCK_CREATE and != NULL for all other ops.
- *
- * @param cb User defined callback. Note: FFmpeg may invoke calls to this
- *           callback during the call to av_lockmgr_register().
- *           Thus, the application must be prepared to handle that.
- *           If cb is set to NULL the lockmgr will be unregistered.
- *           Also note that during unregistration the previously registered
- *           lockmgr callback may also be invoked.
- */
-int av_lockmgr_register(int (*cb)(void **mutex, enum AVLockOp op));
-
-/**
- * Get the type of the given codec.
- */
-enum AVMediaType avcodec_get_type(enum CodecID codec_id);
-
-/**
- * Get the AVClass for AVCodecContext. It can be used in combination with
- * AV_OPT_SEARCH_FAKE_OBJ for examining options.
- *
- * @see av_opt_find().
- */
-const AVClass *avcodec_get_class(void);
-
-/**
- * Get the AVClass for AVFrame. It can be used in combination with
- * AV_OPT_SEARCH_FAKE_OBJ for examining options.
- *
- * @see av_opt_find().
- */
-const AVClass *avcodec_get_frame_class(void);
-
-#endif /* AVCODEC_AVCODEC_H */
diff --git a/dependencies64/ffmpeg/include/libavcodec/avfft.h b/dependencies64/ffmpeg/include/libavcodec/avfft.h
deleted file mode 100644 (file)
index be2d9c7..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_AVFFT_H
-#define AVCODEC_AVFFT_H
-
-typedef float FFTSample;
-
-typedef struct FFTComplex {
-    FFTSample re, im;
-} FFTComplex;
-
-typedef struct FFTContext FFTContext;
-
-/**
- * Set up a complex FFT.
- * @param nbits           log2 of the length of the input array
- * @param inverse         if 0 perform the forward transform, if 1 perform the inverse
- */
-FFTContext *av_fft_init(int nbits, int inverse);
-
-/**
- * Do the permutation needed BEFORE calling ff_fft_calc().
- */
-void av_fft_permute(FFTContext *s, FFTComplex *z);
-
-/**
- * Do a complex FFT with the parameters defined in av_fft_init(). The
- * input data must be permuted before. No 1.0/sqrt(n) normalization is done.
- */
-void av_fft_calc(FFTContext *s, FFTComplex *z);
-
-void av_fft_end(FFTContext *s);
-
-FFTContext *av_mdct_init(int nbits, int inverse, double scale);
-void av_imdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input);
-void av_imdct_half(FFTContext *s, FFTSample *output, const FFTSample *input);
-void av_mdct_calc(FFTContext *s, FFTSample *output, const FFTSample *input);
-void av_mdct_end(FFTContext *s);
-
-/* Real Discrete Fourier Transform */
-
-enum RDFTransformType {
-    DFT_R2C,
-    IDFT_C2R,
-    IDFT_R2C,
-    DFT_C2R,
-};
-
-typedef struct RDFTContext RDFTContext;
-
-/**
- * Set up a real FFT.
- * @param nbits           log2 of the length of the input array
- * @param trans           the type of transform
- */
-RDFTContext *av_rdft_init(int nbits, enum RDFTransformType trans);
-void av_rdft_calc(RDFTContext *s, FFTSample *data);
-void av_rdft_end(RDFTContext *s);
-
-/* Discrete Cosine Transform */
-
-typedef struct DCTContext DCTContext;
-
-enum DCTTransformType {
-    DCT_II = 0,
-    DCT_III,
-    DCT_I,
-    DST_I,
-};
-
-/**
- * Set up DCT.
- * @param nbits           size of the input array:
- *                        (1 << nbits)     for DCT-II, DCT-III and DST-I
- *                        (1 << nbits) + 1 for DCT-I
- *
- * @note the first element of the input of DST-I is ignored
- */
-DCTContext *av_dct_init(int nbits, enum DCTTransformType type);
-void av_dct_calc(DCTContext *s, FFTSample *data);
-void av_dct_end (DCTContext *s);
-
-#endif /* AVCODEC_AVFFT_H */
diff --git a/dependencies64/ffmpeg/include/libavcodec/dxva2.h b/dependencies64/ffmpeg/include/libavcodec/dxva2.h
deleted file mode 100644 (file)
index 6eb494b..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * DXVA2 HW acceleration
- *
- * copyright (c) 2009 Laurent Aimar
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_DXVA_H
-#define AVCODEC_DXVA_H
-
-#include <stdint.h>
-
-#include <dxva2api.h>
-
-#define FF_DXVA2_WORKAROUND_SCALING_LIST_ZIGZAG 1 ///< Work around for DXVA2 and old UVD/UVD+ ATI video cards
-
-/**
- * This structure is used to provides the necessary configurations and data
- * to the DXVA2 FFmpeg HWAccel implementation.
- *
- * The application must make it available as AVCodecContext.hwaccel_context.
- */
-struct dxva_context {
-    /**
-     * DXVA2 decoder object
-     */
-    IDirectXVideoDecoder *decoder;
-
-    /**
-     * DXVA2 configuration used to create the decoder
-     */
-    const DXVA2_ConfigPictureDecode *cfg;
-
-    /**
-     * The number of surface in the surface array
-     */
-    unsigned surface_count;
-
-    /**
-     * The array of Direct3D surfaces used to create the decoder
-     */
-    LPDIRECT3DSURFACE9 *surface;
-
-    /**
-     * A bit field configuring the workarounds needed for using the decoder
-     */
-    uint64_t workaround;
-
-    /**
-     * Private to the FFmpeg AVHWAccel implementation
-     */
-    unsigned report_id;
-};
-
-#endif /* AVCODEC_DXVA_H */
diff --git a/dependencies64/ffmpeg/include/libavcodec/opt.h b/dependencies64/ffmpeg/include/libavcodec/opt.h
deleted file mode 100644 (file)
index 2380e74..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * This file is part of Libav.
- *
- * Libav is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * Libav is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with Libav; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * This header is provided for compatibility only and will be removed
- * on next major bump
- */
-
-#ifndef AVCODEC_OPT_H
-#define AVCODEC_OPT_H
-
-#include "libavcodec/version.h"
-
-#if FF_API_OPT_H
-#include "libavutil/opt.h"
-#endif
-
-#endif /* AVCODEC_OPT_H */
diff --git a/dependencies64/ffmpeg/include/libavcodec/vaapi.h b/dependencies64/ffmpeg/include/libavcodec/vaapi.h
deleted file mode 100644 (file)
index 4c3bb9b..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
- * Video Acceleration API (shared data between FFmpeg and the video player)
- * HW decode acceleration for MPEG-2, MPEG-4, H.264 and VC-1
- *
- * Copyright (C) 2008-2009 Splitted-Desktop Systems
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_VAAPI_H
-#define AVCODEC_VAAPI_H
-
-#include <stdint.h>
-
-/**
- * @defgroup VAAPI_Decoding VA API Decoding
- * @ingroup Decoder
- * @{
- */
-
-/**
- * This structure is used to share data between the FFmpeg library and
- * the client video application.
- * This shall be zero-allocated and available as
- * AVCodecContext.hwaccel_context. All user members can be set once
- * during initialization or through each AVCodecContext.get_buffer()
- * function call. In any case, they must be valid prior to calling
- * decoding functions.
- */
-struct vaapi_context {
-    /**
-     * Window system dependent data
-     *
-     * - encoding: unused
-     * - decoding: Set by user
-     */
-    void *display;
-
-    /**
-     * Configuration ID
-     *
-     * - encoding: unused
-     * - decoding: Set by user
-     */
-    uint32_t config_id;
-
-    /**
-     * Context ID (video decode pipeline)
-     *
-     * - encoding: unused
-     * - decoding: Set by user
-     */
-    uint32_t context_id;
-
-    /**
-     * VAPictureParameterBuffer ID
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    uint32_t pic_param_buf_id;
-
-    /**
-     * VAIQMatrixBuffer ID
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    uint32_t iq_matrix_buf_id;
-
-    /**
-     * VABitPlaneBuffer ID (for VC-1 decoding)
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    uint32_t bitplane_buf_id;
-
-    /**
-     * Slice parameter/data buffer IDs
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    uint32_t *slice_buf_ids;
-
-    /**
-     * Number of effective slice buffer IDs to send to the HW
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    unsigned int n_slice_buf_ids;
-
-    /**
-     * Size of pre-allocated slice_buf_ids
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    unsigned int slice_buf_ids_alloc;
-
-    /**
-     * Pointer to VASliceParameterBuffers
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    void *slice_params;
-
-    /**
-     * Size of a VASliceParameterBuffer element
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    unsigned int slice_param_size;
-
-    /**
-     * Size of pre-allocated slice_params
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    unsigned int slice_params_alloc;
-
-    /**
-     * Number of slices currently filled in
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    unsigned int slice_count;
-
-    /**
-     * Pointer to slice data buffer base
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    const uint8_t *slice_data;
-
-    /**
-     * Current size of slice data
-     *
-     * - encoding: unused
-     * - decoding: Set by libavcodec
-     */
-    uint32_t slice_data_size;
-};
-
-/* @} */
-
-#endif /* AVCODEC_VAAPI_H */
diff --git a/dependencies64/ffmpeg/include/libavcodec/vda.h b/dependencies64/ffmpeg/include/libavcodec/vda.h
deleted file mode 100644 (file)
index 5ff8070..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * VDA HW acceleration
- *
- * copyright (c) 2011 Sebastien Zwickert
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_VDA_H
-#define AVCODEC_VDA_H
-
-#include <stdint.h>
-
-// emmintrin.h is unable to compile with -std=c99 -Werror=missing-prototypes
-// http://openradar.appspot.com/8026390
-#undef __GNUC_STDC_INLINE__
-
-#define Picture QuickdrawPicture
-#include <VideoDecodeAcceleration/VDADecoder.h>
-#undef Picture
-
-/**
- *  This structure is used to store a decoded frame information and data.
- */
-typedef struct {
-    /**
-    * The PTS of the frame.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by libavcodec.
-    */
-    int64_t             pts;
-
-    /**
-    * The CoreVideo buffer that contains the decoded data.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by libavcodec.
-    */
-    CVPixelBufferRef    cv_buffer;
-
-    /**
-    * A pointer to the next frame.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by libavcodec.
-    */
-    struct vda_frame    *next_frame;
-
-} vda_frame;
-
-/**
- * This structure is used to provide the necessary configurations and data
- * to the VDA FFmpeg HWAccel implementation.
- *
- * The application must make it available as AVCodecContext.hwaccel_context.
- */
-struct vda_context {
-    /**
-    * VDA decoder object.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by libavcodec.
-    */
-    VDADecoder          decoder;
-
-    /**
-    * VDA frames queue ordered by presentation timestamp.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by libavcodec.
-    */
-    vda_frame           *queue;
-
-    /**
-    * Mutex for locking queue operations.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by libavcodec.
-    */
-    void                *queue_mutex;
-
-    /**
-    * The frame width.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by user.
-    */
-    int                 width;
-
-    /**
-    * The frame height.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by user.
-    */
-    int                 height;
-
-    /**
-    * The frame format.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by user.
-    */
-    int                 format;
-
-    /**
-    * The pixel format for output image buffers.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by user.
-    */
-    OSType              cv_pix_fmt_type;
-
-    /**
-    * The current bitstream buffer.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by libavcodec.
-    */
-    uint8_t             *bitstream;
-
-    /**
-    * The current size of the bitstream.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by libavcodec.
-    */
-    int                 bitstream_size;
-
-    /**
-    * The reference size used for fast reallocation.
-    *
-    * - encoding: unused
-    * - decoding: Set/Unset by libavcodec.
-    */
-    int                 ref_size;
-};
-
-/** Creates the video decoder. */
-int ff_vda_create_decoder(struct vda_context *vda_ctx,
-                          uint8_t *extradata,
-                          int extradata_size);
-
-/** Destroys the video decoder. */
-int ff_vda_destroy_decoder(struct vda_context *vda_ctx);
-
-/** Returns the top frame of the queue. */
-vda_frame *ff_vda_queue_pop(struct vda_context *vda_ctx);
-
-/** Releases the given frame. */
-void ff_vda_release_vda_frame(vda_frame *frame);
-
-#endif /* AVCODEC_VDA_H */
diff --git a/dependencies64/ffmpeg/include/libavcodec/vdpau.h b/dependencies64/ffmpeg/include/libavcodec/vdpau.h
deleted file mode 100644 (file)
index f3a5471..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * The Video Decode and Presentation API for UNIX (VDPAU) is used for
- * hardware-accelerated decoding of MPEG-1/2, H.264 and VC-1.
- *
- * Copyright (C) 2008 NVIDIA
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_VDPAU_H
-#define AVCODEC_VDPAU_H
-
-/**
- * @defgroup Decoder VDPAU Decoder and Renderer
- *
- * VDPAU hardware acceleration has two modules
- * - VDPAU decoding
- * - VDPAU presentation
- *
- * The VDPAU decoding module parses all headers using FFmpeg
- * parsing mechanisms and uses VDPAU for the actual decoding.
- *
- * As per the current implementation, the actual decoding
- * and rendering (API calls) are done as part of the VDPAU
- * presentation (vo_vdpau.c) module.
- *
- * @defgroup  VDPAU_Decoding VDPAU Decoding
- * @ingroup Decoder
- * @{
- */
-
-#include <vdpau/vdpau.h>
-#include <vdpau/vdpau_x11.h>
-
-/** @brief The videoSurface is used for rendering. */
-#define FF_VDPAU_STATE_USED_FOR_RENDER 1
-
-/**
- * @brief The videoSurface is needed for reference/prediction.
- * The codec manipulates this.
- */
-#define FF_VDPAU_STATE_USED_FOR_REFERENCE 2
-
-/**
- * @brief This structure is used as a callback between the FFmpeg
- * decoder (vd_) and presentation (vo_) module.
- * This is used for defining a video frame containing surface,
- * picture parameter, bitstream information etc which are passed
- * between the FFmpeg decoder and its clients.
- */
-struct vdpau_render_state {
-    VdpVideoSurface surface; ///< Used as rendered surface, never changed.
-
-    int state; ///< Holds FF_VDPAU_STATE_* values.
-
-    /** Describe size/location of the compressed video data.
-        Set to 0 when freeing bitstream_buffers. */
-    int bitstream_buffers_allocated;
-    int bitstream_buffers_used;
-    /** The user is responsible for freeing this buffer using av_freep(). */
-    VdpBitstreamBuffer *bitstream_buffers;
-
-    /** picture parameter information for all supported codecs */
-    union VdpPictureInfo {
-        VdpPictureInfoH264        h264;
-        VdpPictureInfoMPEG1Or2    mpeg;
-        VdpPictureInfoVC1          vc1;
-        VdpPictureInfoMPEG4Part2 mpeg4;
-    } info;
-};
-
-/* @}*/
-
-#endif /* AVCODEC_VDPAU_H */
diff --git a/dependencies64/ffmpeg/include/libavcodec/version.h b/dependencies64/ffmpeg/include/libavcodec/version.h
deleted file mode 100644 (file)
index 70dbd00..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_VERSION_H
-#define AVCODEC_VERSION_H
-
-#define LIBAVCODEC_VERSION_MAJOR 53
-#define LIBAVCODEC_VERSION_MINOR 40
-#define LIBAVCODEC_VERSION_MICRO  0
-
-#define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
-                                               LIBAVCODEC_VERSION_MINOR, \
-                                               LIBAVCODEC_VERSION_MICRO)
-#define LIBAVCODEC_VERSION      AV_VERSION(LIBAVCODEC_VERSION_MAJOR,    \
-                                           LIBAVCODEC_VERSION_MINOR,    \
-                                           LIBAVCODEC_VERSION_MICRO)
-#define LIBAVCODEC_BUILD        LIBAVCODEC_VERSION_INT
-
-#define LIBAVCODEC_IDENT        "Lavc" AV_STRINGIFY(LIBAVCODEC_VERSION)
-
-/**
- * Those FF_API_* defines are not part of public API.
- * They may change, break or disappear at any time.
- */
-#ifndef FF_API_PALETTE_CONTROL
-#define FF_API_PALETTE_CONTROL  (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_OLD_SAMPLE_FMT
-#define FF_API_OLD_SAMPLE_FMT   (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_OLD_AUDIOCONVERT
-#define FF_API_OLD_AUDIOCONVERT (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_ANTIALIAS_ALGO
-#define FF_API_ANTIALIAS_ALGO   (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_REQUEST_CHANNELS
-#define FF_API_REQUEST_CHANNELS (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_OPT_H
-#define FF_API_OPT_H            (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_THREAD_INIT
-#define FF_API_THREAD_INIT      (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_OLD_FF_PICT_TYPES
-#define FF_API_OLD_FF_PICT_TYPES (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_FLAC_GLOBAL_OPTS
-#define FF_API_FLAC_GLOBAL_OPTS (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_GET_PIX_FMT_NAME
-#define FF_API_GET_PIX_FMT_NAME (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_ALLOC_CONTEXT
-#define FF_API_ALLOC_CONTEXT    (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_AVCODEC_OPEN
-#define FF_API_AVCODEC_OPEN     (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_DRC_SCALE
-#define FF_API_DRC_SCALE        (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_ER
-#define FF_API_ER               (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_AVCODEC_INIT
-#define FF_API_AVCODEC_INIT     (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_X264_GLOBAL_OPTS
-#define FF_API_X264_GLOBAL_OPTS (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_MPEGVIDEO_GLOBAL_OPTS
-#define FF_API_MPEGVIDEO_GLOBAL_OPTS (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_LAME_GLOBAL_OPTS
-#define FF_API_LAME_GLOBAL_OPTS  (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_SNOW_GLOBAL_OPTS
-#define FF_API_SNOW_GLOBAL_OPTS  (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_MJPEG_GLOBAL_OPTS
-#define FF_API_MJPEG_GLOBAL_OPTS (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_GET_ALPHA_INFO
-#define FF_API_GET_ALPHA_INFO    (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_PARSE_FRAME
-#define FF_API_PARSE_FRAME (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_INTERNAL_CONTEXT
-#define FF_API_INTERNAL_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_TIFFENC_COMPLEVEL
-#define FF_API_TIFFENC_COMPLEVEL (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_DATA_POINTERS
-#define FF_API_DATA_POINTERS (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_OLD_DECODE_AUDIO
-#define FF_API_OLD_DECODE_AUDIO (LIBAVCODEC_VERSION_MAJOR < 54)
-#endif
-
-#endif /* AVCODEC_VERSION_H */
diff --git a/dependencies64/ffmpeg/include/libavcodec/xvmc.h b/dependencies64/ffmpeg/include/libavcodec/xvmc.h
deleted file mode 100644 (file)
index 93ad8bb..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * Copyright (C) 2003 Ivan Kalvachev
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVCODEC_XVMC_H
-#define AVCODEC_XVMC_H
-
-#include <X11/extensions/XvMC.h>
-
-#include "avcodec.h"
-
-#define AV_XVMC_ID                    0x1DC711C0  /**< special value to ensure that regular pixel routines haven't corrupted the struct
-                                                       the number is 1337 speak for the letters IDCT MCo (motion compensation) */
-
-struct xvmc_pix_fmt {
-    /** The field contains the special constant value AV_XVMC_ID.
-        It is used as a test that the application correctly uses the API,
-        and that there is no corruption caused by pixel routines.
-        - application - set during initialization
-        - libavcodec  - unchanged
-    */
-    int             xvmc_id;
-
-    /** Pointer to the block array allocated by XvMCCreateBlocks().
-        The array has to be freed by XvMCDestroyBlocks().
-        Each group of 64 values represents one data block of differential
-        pixel information (in MoCo mode) or coefficients for IDCT.
-        - application - set the pointer during initialization
-        - libavcodec  - fills coefficients/pixel data into the array
-    */
-    short*          data_blocks;
-
-    /** Pointer to the macroblock description array allocated by
-        XvMCCreateMacroBlocks() and freed by XvMCDestroyMacroBlocks().
-        - application - set the pointer during initialization
-        - libavcodec  - fills description data into the array
-    */
-    XvMCMacroBlock* mv_blocks;
-
-    /** Number of macroblock descriptions that can be stored in the mv_blocks
-        array.
-        - application - set during initialization
-        - libavcodec  - unchanged
-    */
-    int             allocated_mv_blocks;
-
-    /** Number of blocks that can be stored at once in the data_blocks array.
-        - application - set during initialization
-        - libavcodec  - unchanged
-    */
-    int             allocated_data_blocks;
-
-    /** Indicate that the hardware would interpret data_blocks as IDCT
-        coefficients and perform IDCT on them.
-        - application - set during initialization
-        - libavcodec  - unchanged
-    */
-    int             idct;
-
-    /** In MoCo mode it indicates that intra macroblocks are assumed to be in
-        unsigned format; same as the XVMC_INTRA_UNSIGNED flag.
-        - application - set during initialization
-        - libavcodec  - unchanged
-    */
-    int             unsigned_intra;
-
-    /** Pointer to the surface allocated by XvMCCreateSurface().
-        It has to be freed by XvMCDestroySurface() on application exit.
-        It identifies the frame and its state on the video hardware.
-        - application - set during initialization
-        - libavcodec  - unchanged
-    */
-    XvMCSurface*    p_surface;
-
-/** Set by the decoder before calling ff_draw_horiz_band(),
-    needed by the XvMCRenderSurface function. */
-//@{
-    /** Pointer to the surface used as past reference
-        - application - unchanged
-        - libavcodec  - set
-    */
-    XvMCSurface*    p_past_surface;
-
-    /** Pointer to the surface used as future reference
-        - application - unchanged
-        - libavcodec  - set
-    */
-    XvMCSurface*    p_future_surface;
-
-    /** top/bottom field or frame
-        - application - unchanged
-        - libavcodec  - set
-    */
-    unsigned int    picture_structure;
-
-    /** XVMC_SECOND_FIELD - 1st or 2nd field in the sequence
-        - application - unchanged
-        - libavcodec  - set
-    */
-    unsigned int    flags;
-//}@
-
-    /** Number of macroblock descriptions in the mv_blocks array
-        that have already been passed to the hardware.
-        - application - zeroes it on get_buffer().
-                        A successful ff_draw_horiz_band() may increment it
-                        with filled_mb_block_num or zero both.
-        - libavcodec  - unchanged
-    */
-    int             start_mv_blocks_num;
-
-    /** Number of new macroblock descriptions in the mv_blocks array (after
-        start_mv_blocks_num) that are filled by libavcodec and have to be
-        passed to the hardware.
-        - application - zeroes it on get_buffer() or after successful
-                        ff_draw_horiz_band().
-        - libavcodec  - increment with one of each stored MB
-    */
-    int             filled_mv_blocks_num;
-
-    /** Number of the the next free data block; one data block consists of
-        64 short values in the data_blocks array.
-        All blocks before this one have already been claimed by placing their
-        position into the corresponding block description structure field,
-        that are part of the mv_blocks array.
-        - application - zeroes it on get_buffer().
-                        A successful ff_draw_horiz_band() may zero it together
-                        with start_mb_blocks_num.
-        - libavcodec  - each decoded macroblock increases it by the number
-                        of coded blocks it contains.
-    */
-    int             next_free_data_block_num;
-};
-
-#endif /* AVCODEC_XVMC_H */
diff --git a/dependencies64/ffmpeg/include/libavdevice/avdevice.h b/dependencies64/ffmpeg/include/libavdevice/avdevice.h
deleted file mode 100644 (file)
index 68e3a46..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVDEVICE_AVDEVICE_H
-#define AVDEVICE_AVDEVICE_H
-
-#include "libavutil/avutil.h"
-#include "libavformat/avformat.h"
-
-#define LIBAVDEVICE_VERSION_MAJOR 53
-#define LIBAVDEVICE_VERSION_MINOR  4
-#define LIBAVDEVICE_VERSION_MICRO  0
-
-#define LIBAVDEVICE_VERSION_INT AV_VERSION_INT(LIBAVDEVICE_VERSION_MAJOR, \
-                                               LIBAVDEVICE_VERSION_MINOR, \
-                                               LIBAVDEVICE_VERSION_MICRO)
-#define LIBAVDEVICE_VERSION     AV_VERSION(LIBAVDEVICE_VERSION_MAJOR, \
-                                           LIBAVDEVICE_VERSION_MINOR, \
-                                           LIBAVDEVICE_VERSION_MICRO)
-#define LIBAVDEVICE_BUILD       LIBAVDEVICE_VERSION_INT
-
-#ifndef FF_API_V4L
-#define FF_API_V4L              (LIBAVDEVICE_VERSION_MAJOR < 54)
-#endif
-
-/**
- * Return the LIBAVDEVICE_VERSION_INT constant.
- */
-unsigned avdevice_version(void);
-
-/**
- * Return the libavdevice build-time configuration.
- */
-const char *avdevice_configuration(void);
-
-/**
- * Return the libavdevice license.
- */
-const char *avdevice_license(void);
-
-/**
- * Initialize libavdevice and register all the input and output devices.
- * @warning This function is not thread safe.
- */
-void avdevice_register_all(void);
-
-#endif /* AVDEVICE_AVDEVICE_H */
-
diff --git a/dependencies64/ffmpeg/include/libavfilter/avcodec.h b/dependencies64/ffmpeg/include/libavfilter/avcodec.h
deleted file mode 100644 (file)
index dec5ae4..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVFILTER_AVCODEC_H
-#define AVFILTER_AVCODEC_H
-
-/**
- * @file
- * libavcodec/libavfilter gluing utilities
- *
- * This should be included in an application ONLY if the installed
- * libavfilter has been compiled with libavcodec support, otherwise
- * symbols defined below will not be available.
- */
-
-#include "libavcodec/avcodec.h" // AVFrame
-#include "avfilter.h"
-#include "vsrc_buffer.h"
-
-/**
- * Copy the frame properties of src to dst, without copying the actual
- * image data.
- */
-void avfilter_copy_frame_props(AVFilterBufferRef *dst, const AVFrame *src);
-
-/**
- * Create and return a picref reference from the data and properties
- * contained in frame.
- *
- * @param perms permissions to assign to the new buffer reference
- */
-AVFilterBufferRef *avfilter_get_video_buffer_ref_from_frame(const AVFrame *frame, int perms);
-
-/**
- * Fill an AVFrame with the information stored in picref.
- *
- * @param frame an already allocated AVFrame
- * @param picref a video buffer reference
- * @return 0 in case of success, a negative AVERROR code in case of
- * failure
- */
-int avfilter_fill_frame_from_video_buffer_ref(AVFrame *frame,
-                                              const AVFilterBufferRef *picref);
-
-/**
- * Add frame data to buffer_src.
- *
- * @param buffer_src pointer to a buffer source context
- * @param flags a combination of AV_VSRC_BUF_FLAG_* flags
- * @return >= 0 in case of success, a negative AVERROR code in case of
- * failure
- */
-int av_vsrc_buffer_add_frame(AVFilterContext *buffer_src,
-                             const AVFrame *frame, int flags);
-
-#endif /* AVFILTER_AVCODEC_H */
diff --git a/dependencies64/ffmpeg/include/libavfilter/avfilter.h b/dependencies64/ffmpeg/include/libavfilter/avfilter.h
deleted file mode 100644 (file)
index 24998a6..0000000
+++ /dev/null
@@ -1,956 +0,0 @@
-/*
- * filter layer
- * Copyright (c) 2007 Bobby Bingham
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVFILTER_AVFILTER_H
-#define AVFILTER_AVFILTER_H
-
-#include "libavutil/avutil.h"
-#include "libavutil/log.h"
-#include "libavutil/samplefmt.h"
-#include "libavutil/pixfmt.h"
-#include "libavutil/rational.h"
-
-#define LIBAVFILTER_VERSION_MAJOR  2
-#define LIBAVFILTER_VERSION_MINOR 51
-#define LIBAVFILTER_VERSION_MICRO  0
-
-#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
-                                               LIBAVFILTER_VERSION_MINOR, \
-                                               LIBAVFILTER_VERSION_MICRO)
-#define LIBAVFILTER_VERSION     AV_VERSION(LIBAVFILTER_VERSION_MAJOR,   \
-                                           LIBAVFILTER_VERSION_MINOR,   \
-                                           LIBAVFILTER_VERSION_MICRO)
-#define LIBAVFILTER_BUILD       LIBAVFILTER_VERSION_INT
-
-#ifndef FF_API_OLD_VSINK_API
-#define FF_API_OLD_VSINK_API        (LIBAVFILTER_VERSION_MAJOR < 3)
-#endif
-#ifndef FF_API_OLD_ALL_FORMATS_API
-#define FF_API_OLD_ALL_FORMATS_API (LIBAVFILTER_VERSION_MAJOR < 3)
-#endif
-
-#include <stddef.h>
-
-/**
- * Return the LIBAVFILTER_VERSION_INT constant.
- */
-unsigned avfilter_version(void);
-
-/**
- * Return the libavfilter build-time configuration.
- */
-const char *avfilter_configuration(void);
-
-/**
- * Return the libavfilter license.
- */
-const char *avfilter_license(void);
-
-
-typedef struct AVFilterContext AVFilterContext;
-typedef struct AVFilterLink    AVFilterLink;
-typedef struct AVFilterPad     AVFilterPad;
-
-/**
- * A reference-counted buffer data type used by the filter system. Filters
- * should not store pointers to this structure directly, but instead use the
- * AVFilterBufferRef structure below.
- */
-typedef struct AVFilterBuffer {
-    uint8_t *data[8];           ///< buffer data for each plane/channel
-    int linesize[8];            ///< number of bytes per line
-
-    unsigned refcount;          ///< number of references to this buffer
-
-    /** private data to be used by a custom free function */
-    void *priv;
-    /**
-     * A pointer to the function to deallocate this buffer if the default
-     * function is not sufficient. This could, for example, add the memory
-     * back into a memory pool to be reused later without the overhead of
-     * reallocating it from scratch.
-     */
-    void (*free)(struct AVFilterBuffer *buf);
-
-    int format;                 ///< media format
-    int w, h;                   ///< width and height of the allocated buffer
-} AVFilterBuffer;
-
-#define AV_PERM_READ     0x01   ///< can read from the buffer
-#define AV_PERM_WRITE    0x02   ///< can write to the buffer
-#define AV_PERM_PRESERVE 0x04   ///< nobody else can overwrite the buffer
-#define AV_PERM_REUSE    0x08   ///< can output the buffer multiple times, with the same contents each time
-#define AV_PERM_REUSE2   0x10   ///< can output the buffer multiple times, modified each time
-#define AV_PERM_NEG_LINESIZES 0x20  ///< the buffer requested can have negative linesizes
-#define AV_PERM_ALIGN    0x40   ///< the buffer must be aligned
-
-#define AVFILTER_ALIGN 16 //not part of ABI
-
-/**
- * Audio specific properties in a reference to an AVFilterBuffer. Since
- * AVFilterBufferRef is common to different media formats, audio specific
- * per reference properties must be separated out.
- */
-typedef struct AVFilterBufferRefAudioProps {
-    uint64_t channel_layout;    ///< channel layout of audio buffer
-    int nb_samples;             ///< number of audio samples per channel
-    int sample_rate;            ///< audio buffer sample rate
-    int planar;                 ///< audio buffer - planar or packed
-} AVFilterBufferRefAudioProps;
-
-/**
- * Video specific properties in a reference to an AVFilterBuffer. Since
- * AVFilterBufferRef is common to different media formats, video specific
- * per reference properties must be separated out.
- */
-typedef struct AVFilterBufferRefVideoProps {
-    int w;                      ///< image width
-    int h;                      ///< image height
-    AVRational sample_aspect_ratio; ///< sample aspect ratio
-    int interlaced;             ///< is frame interlaced
-    int top_field_first;        ///< field order
-    enum AVPictureType pict_type; ///< picture type of the frame
-    int key_frame;              ///< 1 -> keyframe, 0-> not
-} AVFilterBufferRefVideoProps;
-
-/**
- * A reference to an AVFilterBuffer. Since filters can manipulate the origin of
- * a buffer to, for example, crop image without any memcpy, the buffer origin
- * and dimensions are per-reference properties. Linesize is also useful for
- * image flipping, frame to field filters, etc, and so is also per-reference.
- *
- * TODO: add anything necessary for frame reordering
- */
-typedef struct AVFilterBufferRef {
-    AVFilterBuffer *buf;        ///< the buffer that this is a reference to
-    uint8_t *data[8];           ///< picture/audio data for each plane
-    int linesize[8];            ///< number of bytes per line
-    int format;                 ///< media format
-
-    /**
-     * presentation timestamp. The time unit may change during
-     * filtering, as it is specified in the link and the filter code
-     * may need to rescale the PTS accordingly.
-     */
-    int64_t pts;
-    int64_t pos;                ///< byte position in stream, -1 if unknown
-
-    int perms;                  ///< permissions, see the AV_PERM_* flags
-
-    enum AVMediaType type;      ///< media type of buffer data
-    AVFilterBufferRefVideoProps *video; ///< video buffer specific properties
-    AVFilterBufferRefAudioProps *audio; ///< audio buffer specific properties
-} AVFilterBufferRef;
-
-/**
- * Copy properties of src to dst, without copying the actual data
- */
-static inline void avfilter_copy_buffer_ref_props(AVFilterBufferRef *dst, AVFilterBufferRef *src)
-{
-    // copy common properties
-    dst->pts             = src->pts;
-    dst->pos             = src->pos;
-
-    switch (src->type) {
-    case AVMEDIA_TYPE_VIDEO: *dst->video = *src->video; break;
-    case AVMEDIA_TYPE_AUDIO: *dst->audio = *src->audio; break;
-    default: break;
-    }
-}
-
-/**
- * Add a new reference to a buffer.
- *
- * @param ref   an existing reference to the buffer
- * @param pmask a bitmask containing the allowable permissions in the new
- *              reference
- * @return      a new reference to the buffer with the same properties as the
- *              old, excluding any permissions denied by pmask
- */
-AVFilterBufferRef *avfilter_ref_buffer(AVFilterBufferRef *ref, int pmask);
-
-/**
- * Remove a reference to a buffer. If this is the last reference to the
- * buffer, the buffer itself is also automatically freed.
- *
- * @param ref reference to the buffer, may be NULL
- */
-void avfilter_unref_buffer(AVFilterBufferRef *ref);
-
-/**
- * A list of supported formats for one end of a filter link. This is used
- * during the format negotiation process to try to pick the best format to
- * use to minimize the number of necessary conversions. Each filter gives a
- * list of the formats supported by each input and output pad. The list
- * given for each pad need not be distinct - they may be references to the
- * same list of formats, as is often the case when a filter supports multiple
- * formats, but will always output the same format as it is given in input.
- *
- * In this way, a list of possible input formats and a list of possible
- * output formats are associated with each link. When a set of formats is
- * negotiated over a link, the input and output lists are merged to form a
- * new list containing only the common elements of each list. In the case
- * that there were no common elements, a format conversion is necessary.
- * Otherwise, the lists are merged, and all other links which reference
- * either of the format lists involved in the merge are also affected.
- *
- * For example, consider the filter chain:
- * filter (a) --> (b) filter (b) --> (c) filter
- *
- * where the letters in parenthesis indicate a list of formats supported on
- * the input or output of the link. Suppose the lists are as follows:
- * (a) = {A, B}
- * (b) = {A, B, C}
- * (c) = {B, C}
- *
- * First, the first link's lists are merged, yielding:
- * filter (a) --> (a) filter (a) --> (c) filter
- *
- * Notice that format list (b) now refers to the same list as filter list (a).
- * Next, the lists for the second link are merged, yielding:
- * filter (a) --> (a) filter (a) --> (a) filter
- *
- * where (a) = {B}.
- *
- * Unfortunately, when the format lists at the two ends of a link are merged,
- * we must ensure that all links which reference either pre-merge format list
- * get updated as well. Therefore, we have the format list structure store a
- * pointer to each of the pointers to itself.
- */
-typedef struct AVFilterFormats {
-    unsigned format_count;      ///< number of formats
-    int64_t *formats;           ///< list of media formats
-
-    unsigned refcount;          ///< number of references to this list
-    struct AVFilterFormats ***refs; ///< references to this list
-}  AVFilterFormats;
-
-/**
- * Create a list of supported formats. This is intended for use in
- * AVFilter->query_formats().
- *
- * @param fmts list of media formats, terminated by -1. If NULL an
- *        empty list is created.
- * @return the format list, with no existing references
- */
-AVFilterFormats *avfilter_make_format_list(const int *fmts);
-AVFilterFormats *avfilter_make_format64_list(const int64_t *fmts);
-
-/**
- * Add fmt to the list of media formats contained in *avff.
- * If *avff is NULL the function allocates the filter formats struct
- * and puts its pointer in *avff.
- *
- * @return a non negative value in case of success, or a negative
- * value corresponding to an AVERROR code in case of error
- */
-int avfilter_add_format(AVFilterFormats **avff, int64_t fmt);
-
-#if FF_API_OLD_ALL_FORMATS_API
-/**
- * @deprecated Use avfilter_make_all_formats() instead.
- */
-attribute_deprecated
-AVFilterFormats *avfilter_all_formats(enum AVMediaType type);
-#endif
-
-/**
- * Return a list of all formats supported by FFmpeg for the given media type.
- */
-AVFilterFormats *avfilter_make_all_formats(enum AVMediaType type);
-
-/**
- * A list of all channel layouts supported by libavfilter.
- */
-extern const int64_t avfilter_all_channel_layouts[];
-
-/**
- * Return a list of all channel layouts supported by FFmpeg.
- */
-AVFilterFormats *avfilter_make_all_channel_layouts(void);
-
-/**
- * Return a list of all audio packing formats.
- */
-AVFilterFormats *avfilter_make_all_packing_formats(void);
-
-/**
- * Return a format list which contains the intersection of the formats of
- * a and b. Also, all the references of a, all the references of b, and
- * a and b themselves will be deallocated.
- *
- * If a and b do not share any common formats, neither is modified, and NULL
- * is returned.
- */
-AVFilterFormats *avfilter_merge_formats(AVFilterFormats *a, AVFilterFormats *b);
-
-/**
- * Add *ref as a new reference to formats.
- * That is the pointers will point like in the ASCII art below:
- *   ________
- *  |formats |<--------.
- *  |  ____  |     ____|___________________
- *  | |refs| |    |  __|_
- *  | |* * | |    | |  | |  AVFilterLink
- *  | |* *--------->|*ref|
- *  | |____| |    | |____|
- *  |________|    |________________________
- */
-void avfilter_formats_ref(AVFilterFormats *formats, AVFilterFormats **ref);
-
-/**
- * If *ref is non-NULL, remove *ref as a reference to the format list
- * it currently points to, deallocates that list if this was the last
- * reference, and sets *ref to NULL.
- *
- *         Before                                 After
- *   ________                               ________         NULL
- *  |formats |<--------.                   |formats |         ^
- *  |  ____  |     ____|________________   |  ____  |     ____|________________
- *  | |refs| |    |  __|_                  | |refs| |    |  __|_
- *  | |* * | |    | |  | |  AVFilterLink   | |* * | |    | |  | |  AVFilterLink
- *  | |* *--------->|*ref|                 | |*   | |    | |*ref|
- *  | |____| |    | |____|                 | |____| |    | |____|
- *  |________|    |_____________________   |________|    |_____________________
- */
-void avfilter_formats_unref(AVFilterFormats **ref);
-
-/**
- *
- *         Before                                 After
- *   ________                         ________
- *  |formats |<---------.            |formats |<---------.
- *  |  ____  |       ___|___         |  ____  |       ___|___
- *  | |refs| |      |   |   |        | |refs| |      |   |   |   NULL
- *  | |* *--------->|*oldref|        | |* *--------->|*newref|     ^
- *  | |* * | |      |_______|        | |* * | |      |_______|  ___|___
- *  | |____| |                       | |____| |                |   |   |
- *  |________|                       |________|                |*oldref|
- *                                                             |_______|
- */
-void avfilter_formats_changeref(AVFilterFormats **oldref,
-                                AVFilterFormats **newref);
-
-/**
- * A filter pad used for either input or output.
- */
-struct AVFilterPad {
-    /**
-     * Pad name. The name is unique among inputs and among outputs, but an
-     * input may have the same name as an output. This may be NULL if this
-     * pad has no need to ever be referenced by name.
-     */
-    const char *name;
-
-    /**
-     * AVFilterPad type. Can be AVMEDIA_TYPE_VIDEO or AVMEDIA_TYPE_AUDIO.
-     */
-    enum AVMediaType type;
-
-    /**
-     * Minimum required permissions on incoming buffers. Any buffer with
-     * insufficient permissions will be automatically copied by the filter
-     * system to a new buffer which provides the needed access permissions.
-     *
-     * Input pads only.
-     */
-    int min_perms;
-
-    /**
-     * Permissions which are not accepted on incoming buffers. Any buffer
-     * which has any of these permissions set will be automatically copied
-     * by the filter system to a new buffer which does not have those
-     * permissions. This can be used to easily disallow buffers with
-     * AV_PERM_REUSE.
-     *
-     * Input pads only.
-     */
-    int rej_perms;
-
-    /**
-     * Callback called before passing the first slice of a new frame. If
-     * NULL, the filter layer will default to storing a reference to the
-     * picture inside the link structure.
-     *
-     * Input video pads only.
-     */
-    void (*start_frame)(AVFilterLink *link, AVFilterBufferRef *picref);
-
-    /**
-     * Callback function to get a video buffer. If NULL, the filter system will
-     * use avfilter_default_get_video_buffer().
-     *
-     * Input video pads only.
-     */
-    AVFilterBufferRef *(*get_video_buffer)(AVFilterLink *link, int perms, int w, int h);
-
-    /**
-     * Callback function to get an audio buffer. If NULL, the filter system will
-     * use avfilter_default_get_audio_buffer().
-     *
-     * Input audio pads only.
-     */
-    AVFilterBufferRef *(*get_audio_buffer)(AVFilterLink *link, int perms, int nb_samples);
-
-    /**
-     * Callback called after the slices of a frame are completely sent. If
-     * NULL, the filter layer will default to releasing the reference stored
-     * in the link structure during start_frame().
-     *
-     * Input video pads only.
-     */
-    void (*end_frame)(AVFilterLink *link);
-
-    /**
-     * Slice drawing callback. This is where a filter receives video data
-     * and should do its processing.
-     *
-     * Input video pads only.
-     */
-    void (*draw_slice)(AVFilterLink *link, int y, int height, int slice_dir);
-
-    /**
-     * Samples filtering callback. This is where a filter receives audio data
-     * and should do its processing.
-     *
-     * Input audio pads only.
-     */
-    void (*filter_samples)(AVFilterLink *link, AVFilterBufferRef *samplesref);
-
-    /**
-     * Frame poll callback. This returns the number of immediately available
-     * samples. It should return a positive value if the next request_frame()
-     * is guaranteed to return one frame (with no delay).
-     *
-     * Defaults to just calling the source poll_frame() method.
-     *
-     * Output video pads only.
-     */
-    int (*poll_frame)(AVFilterLink *link);
-
-    /**
-     * Frame request callback. A call to this should result in at least one
-     * frame being output over the given link. This should return zero on
-     * success, and another value on error.
-     *
-     * Output video pads only.
-     */
-    int (*request_frame)(AVFilterLink *link);
-
-    /**
-     * Link configuration callback.
-     *
-     * For output pads, this should set the following link properties:
-     * video: width, height, sample_aspect_ratio, time_base
-     * audio: sample_rate.
-     *
-     * This should NOT set properties such as format, channel_layout, etc which
-     * are negotiated between filters by the filter system using the
-     * query_formats() callback before this function is called.
-     *
-     * For input pads, this should check the properties of the link, and update
-     * the filter's internal state as necessary.
-     *
-     * For both input and output pads, this should return zero on success,
-     * and another value on error.
-     */
-    int (*config_props)(AVFilterLink *link);
-};
-
-/** default handler for start_frame() for video inputs */
-void avfilter_default_start_frame(AVFilterLink *link, AVFilterBufferRef *picref);
-
-/** default handler for draw_slice() for video inputs */
-void avfilter_default_draw_slice(AVFilterLink *link, int y, int h, int slice_dir);
-
-/** default handler for end_frame() for video inputs */
-void avfilter_default_end_frame(AVFilterLink *link);
-
-/** default handler for filter_samples() for audio inputs */
-void avfilter_default_filter_samples(AVFilterLink *link, AVFilterBufferRef *samplesref);
-
-/** default handler for get_video_buffer() for video inputs */
-AVFilterBufferRef *avfilter_default_get_video_buffer(AVFilterLink *link,
-                                                     int perms, int w, int h);
-
-/** default handler for get_audio_buffer() for audio inputs */
-AVFilterBufferRef *avfilter_default_get_audio_buffer(AVFilterLink *link,
-                                                     int perms, int nb_samples);
-
-/**
- * Helpers for query_formats() which set all links to the same list of
- * formats/layouts. If there are no links hooked to this filter, the list
- * of formats is freed.
- */
-void avfilter_set_common_pixel_formats(AVFilterContext *ctx, AVFilterFormats *formats);
-void avfilter_set_common_sample_formats(AVFilterContext *ctx, AVFilterFormats *formats);
-void avfilter_set_common_channel_layouts(AVFilterContext *ctx, AVFilterFormats *formats);
-void avfilter_set_common_packing_formats(AVFilterContext *ctx, AVFilterFormats *formats);
-
-/** Default handler for query_formats() */
-int avfilter_default_query_formats(AVFilterContext *ctx);
-
-/** start_frame() handler for filters which simply pass video along */
-void avfilter_null_start_frame(AVFilterLink *link, AVFilterBufferRef *picref);
-
-/** draw_slice() handler for filters which simply pass video along */
-void avfilter_null_draw_slice(AVFilterLink *link, int y, int h, int slice_dir);
-
-/** end_frame() handler for filters which simply pass video along */
-void avfilter_null_end_frame(AVFilterLink *link);
-
-/** filter_samples() handler for filters which simply pass audio along */
-void avfilter_null_filter_samples(AVFilterLink *link, AVFilterBufferRef *samplesref);
-
-/** get_video_buffer() handler for filters which simply pass video along */
-AVFilterBufferRef *avfilter_null_get_video_buffer(AVFilterLink *link,
-                                                  int perms, int w, int h);
-
-/** get_audio_buffer() handler for filters which simply pass audio along */
-AVFilterBufferRef *avfilter_null_get_audio_buffer(AVFilterLink *link,
-                                                  int perms, int nb_samples);
-
-/**
- * Filter definition. This defines the pads a filter contains, and all the
- * callback functions used to interact with the filter.
- */
-typedef struct AVFilter {
-    const char *name;         ///< filter name
-
-    int priv_size;      ///< size of private data to allocate for the filter
-
-    /**
-     * Filter initialization function. Args contains the user-supplied
-     * parameters. FIXME: maybe an AVOption-based system would be better?
-     * opaque is data provided by the code requesting creation of the filter,
-     * and is used to pass data to the filter.
-     */
-    int (*init)(AVFilterContext *ctx, const char *args, void *opaque);
-
-    /**
-     * Filter uninitialization function. Should deallocate any memory held
-     * by the filter, release any buffer references, etc. This does not need
-     * to deallocate the AVFilterContext->priv memory itself.
-     */
-    void (*uninit)(AVFilterContext *ctx);
-
-    /**
-     * Queries formats/layouts supported by the filter and its pads, and sets
-     * the in_formats/in_chlayouts for links connected to its output pads,
-     * and out_formats/out_chlayouts for links connected to its input pads.
-     *
-     * @return zero on success, a negative value corresponding to an
-     * AVERROR code otherwise
-     */
-    int (*query_formats)(AVFilterContext *);
-
-    const AVFilterPad *inputs;  ///< NULL terminated list of inputs. NULL if none
-    const AVFilterPad *outputs; ///< NULL terminated list of outputs. NULL if none
-
-    /**
-     * A description for the filter. You should use the
-     * NULL_IF_CONFIG_SMALL() macro to define it.
-     */
-    const char *description;
-
-    /**
-     * Make the filter instance process a command.
-     *
-     * @param cmd    the command to process, for handling simplicity all commands must be alphanumeric only
-     * @param arg    the argument for the command
-     * @param res    a buffer with size res_size where the filter(s) can return a response. This must not change when the command is not supported.
-     * @param flags  if AVFILTER_CMD_FLAG_FAST is set and the command would be
-     *               time consuming then a filter should treat it like an unsupported command
-     *
-     * @returns >=0 on success otherwise an error code.
-     *          AVERROR(ENOSYS) on unsupported commands
-     */
-    int (*process_command)(AVFilterContext *, const char *cmd, const char *arg, char *res, int res_len, int flags);
-} AVFilter;
-
-/** An instance of a filter */
-struct AVFilterContext {
-    const AVClass *av_class;        ///< needed for av_log()
-
-    AVFilter *filter;               ///< the AVFilter of which this is an instance
-
-    char *name;                     ///< name of this filter instance
-
-    unsigned input_count;           ///< number of input pads
-    AVFilterPad   *input_pads;      ///< array of input pads
-    AVFilterLink **inputs;          ///< array of pointers to input links
-
-    unsigned output_count;          ///< number of output pads
-    AVFilterPad   *output_pads;     ///< array of output pads
-    AVFilterLink **outputs;         ///< array of pointers to output links
-
-    void *priv;                     ///< private data for use by the filter
-
-    struct AVFilterCommand *command_queue;
-};
-
-enum AVFilterPacking {
-    AVFILTER_PACKED = 0,
-    AVFILTER_PLANAR,
-};
-
-/**
- * A link between two filters. This contains pointers to the source and
- * destination filters between which this link exists, and the indexes of
- * the pads involved. In addition, this link also contains the parameters
- * which have been negotiated and agreed upon between the filter, such as
- * image dimensions, format, etc.
- */
-struct AVFilterLink {
-    AVFilterContext *src;       ///< source filter
-    AVFilterPad *srcpad;        ///< output pad on the source filter
-
-    AVFilterContext *dst;       ///< dest filter
-    AVFilterPad *dstpad;        ///< input pad on the dest filter
-
-    /** stage of the initialization of the link properties (dimensions, etc) */
-    enum {
-        AVLINK_UNINIT = 0,      ///< not started
-        AVLINK_STARTINIT,       ///< started, but incomplete
-        AVLINK_INIT             ///< complete
-    } init_state;
-
-    enum AVMediaType type;      ///< filter media type
-
-    /* These parameters apply only to video */
-    int w;                      ///< agreed upon image width
-    int h;                      ///< agreed upon image height
-    AVRational sample_aspect_ratio; ///< agreed upon sample aspect ratio
-    /* These parameters apply only to audio */
-    uint64_t channel_layout;    ///< channel layout of current buffer (see libavutil/audioconvert.h)
-#if LIBAVFILTER_VERSION_MAJOR < 3
-    int64_t sample_rate;        ///< samples per second
-#else
-    int sample_rate;            ///< samples per second
-#endif
-    int planar;                 ///< agreed upon packing mode of audio buffers. true if planar.
-
-    int format;                 ///< agreed upon media format
-
-    /**
-     * Lists of formats and channel layouts supported by the input and output
-     * filters respectively. These lists are used for negotiating the format
-     * to actually be used, which will be loaded into the format and
-     * channel_layout members, above, when chosen.
-     *
-     */
-    AVFilterFormats *in_formats;
-    AVFilterFormats *out_formats;
-
-    AVFilterFormats *in_chlayouts;
-    AVFilterFormats *out_chlayouts;
-    AVFilterFormats *in_packing;
-    AVFilterFormats *out_packing;
-
-    /**
-     * The buffer reference currently being sent across the link by the source
-     * filter. This is used internally by the filter system to allow
-     * automatic copying of buffers which do not have sufficient permissions
-     * for the destination. This should not be accessed directly by the
-     * filters.
-     */
-    AVFilterBufferRef *src_buf;
-
-    AVFilterBufferRef *cur_buf;
-    AVFilterBufferRef *out_buf;
-
-    /**
-     * Define the time base used by the PTS of the frames/samples
-     * which will pass through this link.
-     * During the configuration stage, each filter is supposed to
-     * change only the output timebase, while the timebase of the
-     * input link is assumed to be an unchangeable property.
-     */
-    AVRational time_base;
-
-    struct AVFilterPool *pool;
-};
-
-/**
- * Link two filters together.
- *
- * @param src    the source filter
- * @param srcpad index of the output pad on the source filter
- * @param dst    the destination filter
- * @param dstpad index of the input pad on the destination filter
- * @return       zero on success
- */
-int avfilter_link(AVFilterContext *src, unsigned srcpad,
-                  AVFilterContext *dst, unsigned dstpad);
-
-/**
- * Free the link in *link, and set its pointer to NULL.
- */
-void avfilter_link_free(AVFilterLink **link);
-
-/**
- * Negotiate the media format, dimensions, etc of all inputs to a filter.
- *
- * @param filter the filter to negotiate the properties for its inputs
- * @return       zero on successful negotiation
- */
-int avfilter_config_links(AVFilterContext *filter);
-
-/**
- * Request a picture buffer with a specific set of permissions.
- *
- * @param link  the output link to the filter from which the buffer will
- *              be requested
- * @param perms the required access permissions
- * @param w     the minimum width of the buffer to allocate
- * @param h     the minimum height of the buffer to allocate
- * @return      A reference to the buffer. This must be unreferenced with
- *              avfilter_unref_buffer when you are finished with it.
- */
-AVFilterBufferRef *avfilter_get_video_buffer(AVFilterLink *link, int perms,
-                                          int w, int h);
-
-/**
- * Create a buffer reference wrapped around an already allocated image
- * buffer.
- *
- * @param data pointers to the planes of the image to reference
- * @param linesize linesizes for the planes of the image to reference
- * @param perms the required access permissions
- * @param w the width of the image specified by the data and linesize arrays
- * @param h the height of the image specified by the data and linesize arrays
- * @param format the pixel format of the image specified by the data and linesize arrays
- */
-AVFilterBufferRef *
-avfilter_get_video_buffer_ref_from_arrays(uint8_t * const data[4], const int linesize[4], int perms,
-                                          int w, int h, enum PixelFormat format);
-
-/**
- * Request an audio samples buffer with a specific set of permissions.
- *
- * @param link           the output link to the filter from which the buffer will
- *                       be requested
- * @param perms          the required access permissions
- * @param nb_samples     the number of samples per channel
- * @return               A reference to the samples. This must be unreferenced with
- *                       avfilter_unref_buffer when you are finished with it.
- */
-AVFilterBufferRef *avfilter_get_audio_buffer(AVFilterLink *link, int perms,
-                                             int nb_samples);
-
-/**
- * Create an audio buffer reference wrapped around an already
- * allocated samples buffer.
- *
- * @param data           pointers to the samples plane buffers
- * @param linesize       linesize for the samples plane buffers
- * @param perms          the required access permissions
- * @param nb_samples     number of samples per channel
- * @param sample_fmt     the format of each sample in the buffer to allocate
- * @param channel_layout the channel layout of the buffer
- * @param planar         audio data layout - planar or packed
- */
-AVFilterBufferRef *
-avfilter_get_audio_buffer_ref_from_arrays(uint8_t *data[8], int linesize[8], int perms,
-                                          int nb_samples, enum AVSampleFormat sample_fmt,
-                                          uint64_t channel_layout, int planar);
-/**
- * Request an input frame from the filter at the other end of the link.
- *
- * @param link the input link
- * @return     zero on success
- */
-int avfilter_request_frame(AVFilterLink *link);
-
-/**
- * Poll a frame from the filter chain.
- *
- * @param  link the input link
- * @return the number of immediately available frames, a negative
- * number in case of error
- */
-int avfilter_poll_frame(AVFilterLink *link);
-
-/**
- * Notify the next filter of the start of a frame.
- *
- * @param link   the output link the frame will be sent over
- * @param picref A reference to the frame about to be sent. The data for this
- *               frame need only be valid once draw_slice() is called for that
- *               portion. The receiving filter will free this reference when
- *               it no longer needs it.
- */
-void avfilter_start_frame(AVFilterLink *link, AVFilterBufferRef *picref);
-
-/**
- * Notify the next filter that the current frame has finished.
- *
- * @param link the output link the frame was sent over
- */
-void avfilter_end_frame(AVFilterLink *link);
-
-/**
- * Send a slice to the next filter.
- *
- * Slices have to be provided in sequential order, either in
- * top-bottom or bottom-top order. If slices are provided in
- * non-sequential order the behavior of the function is undefined.
- *
- * @param link the output link over which the frame is being sent
- * @param y    offset in pixels from the top of the image for this slice
- * @param h    height of this slice in pixels
- * @param slice_dir the assumed direction for sending slices,
- *             from the top slice to the bottom slice if the value is 1,
- *             from the bottom slice to the top slice if the value is -1,
- *             for other values the behavior of the function is undefined.
- */
-void avfilter_draw_slice(AVFilterLink *link, int y, int h, int slice_dir);
-
-#define AVFILTER_CMD_FLAG_ONE   1 ///< Stop once a filter understood the command (for target=all for example), fast filters are favored automatically
-#define AVFILTER_CMD_FLAG_FAST  2 ///< Only execute command when its fast (like a video out that supports contrast adjustment in hw)
-
-/**
- * Make the filter instance process a command.
- * It is recommended to use avfilter_graph_send_command().
- */
-int avfilter_process_command(AVFilterContext *filter, const char *cmd, const char *arg, char *res, int res_len, int flags);
-
-/**
- * Send a buffer of audio samples to the next filter.
- *
- * @param link       the output link over which the audio samples are being sent
- * @param samplesref a reference to the buffer of audio samples being sent. The
- *                   receiving filter will free this reference when it no longer
- *                   needs it or pass it on to the next filter.
- */
-void avfilter_filter_samples(AVFilterLink *link, AVFilterBufferRef *samplesref);
-
-/** Initialize the filter system. Register all built-in filters. */
-void avfilter_register_all(void);
-
-/** Uninitialize the filter system. Unregister all filters. */
-void avfilter_uninit(void);
-
-/**
- * Register a filter. This is only needed if you plan to use
- * avfilter_get_by_name later to lookup the AVFilter structure by name. A
- * filter can still by instantiated with avfilter_open even if it is not
- * registered.
- *
- * @param filter the filter to register
- * @return 0 if the registration was successful, a negative value
- * otherwise
- */
-int avfilter_register(AVFilter *filter);
-
-/**
- * Get a filter definition matching the given name.
- *
- * @param name the filter name to find
- * @return     the filter definition, if any matching one is registered.
- *             NULL if none found.
- */
-AVFilter *avfilter_get_by_name(const char *name);
-
-/**
- * If filter is NULL, returns a pointer to the first registered filter pointer,
- * if filter is non-NULL, returns the next pointer after filter.
- * If the returned pointer points to NULL, the last registered filter
- * was already reached.
- */
-AVFilter **av_filter_next(AVFilter **filter);
-
-/**
- * Create a filter instance.
- *
- * @param filter_ctx put here a pointer to the created filter context
- * on success, NULL on failure
- * @param filter    the filter to create an instance of
- * @param inst_name Name to give to the new instance. Can be NULL for none.
- * @return >= 0 in case of success, a negative error code otherwise
- */
-int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);
-
-/**
- * Initialize a filter.
- *
- * @param filter the filter to initialize
- * @param args   A string of parameters to use when initializing the filter.
- *               The format and meaning of this string varies by filter.
- * @param opaque Any extra non-string data needed by the filter. The meaning
- *               of this parameter varies by filter.
- * @return       zero on success
- */
-int avfilter_init_filter(AVFilterContext *filter, const char *args, void *opaque);
-
-/**
- * Free a filter context.
- *
- * @param filter the filter to free
- */
-void avfilter_free(AVFilterContext *filter);
-
-/**
- * Insert a filter in the middle of an existing link.
- *
- * @param link the link into which the filter should be inserted
- * @param filt the filter to be inserted
- * @param filt_srcpad_idx the input pad on the filter to connect
- * @param filt_dstpad_idx the output pad on the filter to connect
- * @return     zero on success
- */
-int avfilter_insert_filter(AVFilterLink *link, AVFilterContext *filt,
-                           unsigned filt_srcpad_idx, unsigned filt_dstpad_idx);
-
-/**
- * Insert a new pad.
- *
- * @param idx Insertion point. Pad is inserted at the end if this point
- *            is beyond the end of the list of pads.
- * @param count Pointer to the number of pads in the list
- * @param padidx_off Offset within an AVFilterLink structure to the element
- *                   to increment when inserting a new pad causes link
- *                   numbering to change
- * @param pads Pointer to the pointer to the beginning of the list of pads
- * @param links Pointer to the pointer to the beginning of the list of links
- * @param newpad The new pad to add. A copy is made when adding.
- */
-void avfilter_insert_pad(unsigned idx, unsigned *count, size_t padidx_off,
-                         AVFilterPad **pads, AVFilterLink ***links,
-                         AVFilterPad *newpad);
-
-/** Insert a new input pad for the filter. */
-static inline void avfilter_insert_inpad(AVFilterContext *f, unsigned index,
-                                         AVFilterPad *p)
-{
-    avfilter_insert_pad(index, &f->input_count, offsetof(AVFilterLink, dstpad),
-                        &f->input_pads, &f->inputs, p);
-}
-
-/** Insert a new output pad for the filter. */
-static inline void avfilter_insert_outpad(AVFilterContext *f, unsigned index,
-                                          AVFilterPad *p)
-{
-    avfilter_insert_pad(index, &f->output_count, offsetof(AVFilterLink, srcpad),
-                        &f->output_pads, &f->outputs, p);
-}
-
-#endif /* AVFILTER_AVFILTER_H */
diff --git a/dependencies64/ffmpeg/include/libavfilter/avfiltergraph.h b/dependencies64/ffmpeg/include/libavfilter/avfiltergraph.h
deleted file mode 100644 (file)
index 3010362..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-/*
- * Filter graphs
- * copyright (c) 2007 Bobby Bingham
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVFILTER_AVFILTERGRAPH_H
-#define AVFILTER_AVFILTERGRAPH_H
-
-#include "avfilter.h"
-
-typedef struct AVFilterGraph {
-    unsigned filter_count;
-    AVFilterContext **filters;
-
-    char *scale_sws_opts; ///< sws options to use for the auto-inserted scale filters
-} AVFilterGraph;
-
-/**
- * Allocate a filter graph.
- */
-AVFilterGraph *avfilter_graph_alloc(void);
-
-/**
- * Get a filter instance with name name from graph.
- *
- * @return the pointer to the found filter instance or NULL if it
- * cannot be found.
- */
-AVFilterContext *avfilter_graph_get_filter(AVFilterGraph *graph, char *name);
-
-/**
- * Add an existing filter instance to a filter graph.
- *
- * @param graphctx  the filter graph
- * @param filter the filter to be added
- */
-int avfilter_graph_add_filter(AVFilterGraph *graphctx, AVFilterContext *filter);
-
-/**
- * Create and add a filter instance into an existing graph.
- * The filter instance is created from the filter filt and inited
- * with the parameters args and opaque.
- *
- * In case of success put in *filt_ctx the pointer to the created
- * filter instance, otherwise set *filt_ctx to NULL.
- *
- * @param name the instance name to give to the created filter instance
- * @param graph_ctx the filter graph
- * @return a negative AVERROR error code in case of failure, a non
- * negative value otherwise
- */
-int avfilter_graph_create_filter(AVFilterContext **filt_ctx, AVFilter *filt,
-                                 const char *name, const char *args, void *opaque,
-                                 AVFilterGraph *graph_ctx);
-
-/**
- * Check validity and configure all the links and formats in the graph.
- *
- * @param graphctx the filter graph
- * @param log_ctx context used for logging
- * @return 0 in case of success, a negative AVERROR code otherwise
- */
-int avfilter_graph_config(AVFilterGraph *graphctx, void *log_ctx);
-
-/**
- * Free a graph, destroy its links, and set *graph to NULL.
- * If *graph is NULL, do nothing.
- */
-void avfilter_graph_free(AVFilterGraph **graph);
-
-/**
- * A linked-list of the inputs/outputs of the filter chain.
- *
- * This is mainly useful for avfilter_graph_parse(), since this
- * function may accept a description of a graph with not connected
- * input/output pads. This struct specifies, per each not connected
- * pad contained in the graph, the filter context and the pad index
- * required for establishing a link.
- */
-typedef struct AVFilterInOut {
-    /** unique name for this input/output in the list */
-    char *name;
-
-    /** filter context associated to this input/output */
-    AVFilterContext *filter_ctx;
-
-    /** index of the filt_ctx pad to use for linking */
-    int pad_idx;
-
-    /** next input/input in the list, NULL if this is the last */
-    struct AVFilterInOut *next;
-} AVFilterInOut;
-
-/**
- * Create an AVFilterInOut.
- * Must be free with avfilter_inout_free().
- */
-AVFilterInOut *avfilter_inout_alloc(void);
-
-/**
- * Free the AVFilterInOut in *inout, and set its pointer to NULL.
- * If *inout is NULL, do nothing.
- */
-void avfilter_inout_free(AVFilterInOut **inout);
-
-/**
- * Add a graph described by a string to a graph.
- *
- * @param graph   the filter graph where to link the parsed graph context
- * @param filters string to be parsed
- * @param inputs  pointer to a linked list to the inputs of the graph, may be NULL.
- *                If non-NULL, *inputs is updated to contain the list of open inputs
- *                after the parsing, should be freed with avfilter_inout_free().
- * @param outputs pointer to a linked list to the outputs of the graph, may be NULL.
- *                If non-NULL, *outputs is updated to contain the list of open outputs
- *                after the parsing, should be freed with avfilter_inout_free().
- * @return non negative on success, a negative AVERROR code on error
- */
-int avfilter_graph_parse(AVFilterGraph *graph, const char *filters,
-                         AVFilterInOut **inputs, AVFilterInOut **outputs,
-                         void *log_ctx);
-
-/**
- * Send a command to one or more filter instances.
- *
- * @param graph  the filter graph
- * @param target the filter(s) to which the command should be sent
- *               "all" sends to all filters
- *               otherwise it can be a filter or filter instance name
- *               which will send the command to all matching filters.
- * @param cmd    the command to sent, for handling simplicity all commands must be alphanumeric only
- * @param arg    the argument for the command
- * @param res    a buffer with size res_size where the filter(s) can return a response.
- *
- * @returns >=0 on success otherwise an error code.
- *              AVERROR(ENOSYS) on unsupported commands
- */
-int avfilter_graph_send_command(AVFilterGraph *graph, const char *target, const char *cmd, const char *arg, char *res, int res_len, int flags);
-
-/**
- * Queue a command for one or more filter instances.
- *
- * @param graph  the filter graph
- * @param target the filter(s) to which the command should be sent
- *               "all" sends to all filters
- *               otherwise it can be a filter or filter instance name
- *               which will send the command to all matching filters.
- * @param cmd    the command to sent, for handling simplicity all commands must be alphanummeric only
- * @param arg    the argument for the command
- * @param ts     time at which the command should be sent to the filter
- *
- * @note As this executes commands after this function returns, no return code
- *       from the filter is provided, also AVFILTER_CMD_FLAG_ONE is not supported.
- */
-int avfilter_graph_queue_command(AVFilterGraph *graph, const char *target, const char *cmd, const char *arg, int flags, double ts);
-
-
-
-#endif /* AVFILTER_AVFILTERGRAPH_H */
diff --git a/dependencies64/ffmpeg/include/libavfilter/buffersink.h b/dependencies64/ffmpeg/include/libavfilter/buffersink.h
deleted file mode 100644 (file)
index c5ae7dc..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVFILTER_VSINK_BUFFER_H
-#define AVFILTER_VSINK_BUFFER_H
-
-/**
- * @file
- * memory buffer sink API for audio and video
- */
-
-#include "avfilter.h"
-
-/**
- * Struct to use for initializing a buffersink context.
- */
-typedef struct {
-    const enum PixelFormat *pixel_fmts; ///< list of allowed pixel formats, terminated by PIX_FMT_NONE
-} AVBufferSinkParams;
-
-/**
- * Create an AVBufferSinkParams structure.
- *
- * Must be freed with av_free().
- */
-AVBufferSinkParams *av_buffersink_params_alloc(void);
-
-/**
- * Struct to use for initializing an abuffersink context.
- */
-typedef struct {
-    const enum AVSampleFormat *sample_fmts; ///< list of allowed sample formats, terminated by AV_SAMPLE_FMT_NONE
-    const int64_t *channel_layouts;         ///< list of allowed channel layouts, terminated by -1
-    const int *packing_fmts;                ///< list of allowed packing formats
-} AVABufferSinkParams;
-
-/**
- * Create an AVABufferSinkParams structure.
- *
- * Must be freed with av_free().
- */
-AVABufferSinkParams *av_abuffersink_params_alloc(void);
-
-/**
- * Tell av_buffersink_get_buffer_ref() to read video/samples buffer
- * reference, but not remove it from the buffer. This is useful if you
- * need only to read a video/samples buffer, without to fetch it.
- */
-#define AV_BUFFERSINK_FLAG_PEEK 1
-
-/**
- * Get an audio/video buffer data from buffer_sink and put it in bufref.
- *
- * This function works with both audio and video buffer sinks.
- *
- * @param buffer_sink pointer to a buffersink or abuffersink context
- * @param flags a combination of AV_BUFFERSINK_FLAG_* flags
- * @return >= 0 in case of success, a negative AVERROR code in case of
- * failure
- */
-int av_buffersink_get_buffer_ref(AVFilterContext *buffer_sink,
-                                 AVFilterBufferRef **bufref, int flags);
-
-#if FF_API_OLD_VSINK_API
-/**
- * @deprecated Use av_buffersink_get_buffer_ref() instead.
- */
-attribute_deprecated
-int av_vsink_buffer_get_video_buffer_ref(AVFilterContext *buffer_sink,
-                                         AVFilterBufferRef **picref, int flags);
-#endif
-
-#endif /* AVFILTER_VSINK_BUFFER_H */
diff --git a/dependencies64/ffmpeg/include/libavfilter/vsrc_buffer.h b/dependencies64/ffmpeg/include/libavfilter/vsrc_buffer.h
deleted file mode 100644 (file)
index b661d41..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright (c) 2008 Vitor Sessak
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVFILTER_VSRC_BUFFER_H
-#define AVFILTER_VSRC_BUFFER_H
-
-/**
- * @file
- * memory buffer source API for video
- */
-
-#include "avfilter.h"
-
-/**
- * Tell av_vsrc_buffer_add_video_buffer_ref() to overwrite the already
- * cached video buffer with the new added one, otherwise the function
- * will complain and exit.
- */
-#define AV_VSRC_BUF_FLAG_OVERWRITE 1
-
-/**
- * Add video buffer data in picref to buffer_src.
- *
- * @param buffer_src pointer to a buffer source context
- * @param flags a combination of AV_VSRC_BUF_FLAG_* flags
- * @return >= 0 in case of success, a negative AVERROR code in case of
- * failure
- */
-int av_vsrc_buffer_add_video_buffer_ref(AVFilterContext *buffer_src,
-                                        AVFilterBufferRef *picref, int flags);
-
-#endif /* AVFILTER_VSRC_BUFFER_H */
diff --git a/dependencies64/ffmpeg/include/libavformat/avformat.h b/dependencies64/ffmpeg/include/libavformat/avformat.h
deleted file mode 100644 (file)
index f1c701d..0000000
+++ /dev/null
@@ -1,1980 +0,0 @@
-/*
- * copyright (c) 2001 Fabrice Bellard
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVFORMAT_AVFORMAT_H
-#define AVFORMAT_AVFORMAT_H
-
-/**
- * @defgroup libavf I/O and Muxing/Demuxing Library
- * @{
- *
- * @defgroup lavf_decoding Demuxing
- * @{
- * @}
- *
- * @defgroup lavf_encoding Muxing
- * @{
- * @}
- *
- * @defgroup lavf_proto I/O Read/Write
- * @{
- * @}
- *
- * @defgroup lavf_codec Demuxers
- * @{
- * @defgroup lavf_codec_native Native Demuxers
- * @{
- * @}
- * @defgroup lavf_codec_wrappers External library wrappers
- * @{
- * @}
- * @}
- * @defgroup lavf_protos I/O Protocols
- * @{
- * @}
- * @defgroup lavf_internal Internal
- * @{
- * @}
- * @}
- *
- */
-
-/**
- * Return the LIBAVFORMAT_VERSION_INT constant.
- */
-unsigned avformat_version(void);
-
-/**
- * Return the libavformat build-time configuration.
- */
-const char *avformat_configuration(void);
-
-/**
- * Return the libavformat license.
- */
-const char *avformat_license(void);
-
-#include <time.h>
-#include <stdio.h>  /* FILE */
-#include "libavcodec/avcodec.h"
-#include "libavutil/dict.h"
-#include "libavutil/log.h"
-
-#include "avio.h"
-#include "libavformat/version.h"
-
-struct AVFormatContext;
-
-
-/**
- * @defgroup metadata_api Public Metadata API
- * @{
- * The metadata API allows libavformat to export metadata tags to a client
- * application using a sequence of key/value pairs. Like all strings in FFmpeg,
- * metadata must be stored as UTF-8 encoded Unicode. Note that metadata
- * exported by demuxers isn't checked to be valid UTF-8 in most cases.
- * Important concepts to keep in mind:
- * -  Keys are unique; there can never be 2 tags with the same key. This is
- *    also meant semantically, i.e., a demuxer should not knowingly produce
- *    several keys that are literally different but semantically identical.
- *    E.g., key=Author5, key=Author6. In this example, all authors must be
- *    placed in the same tag.
- * -  Metadata is flat, not hierarchical; there are no subtags. If you
- *    want to store, e.g., the email address of the child of producer Alice
- *    and actor Bob, that could have key=alice_and_bobs_childs_email_address.
- * -  Several modifiers can be applied to the tag name. This is done by
- *    appending a dash character ('-') and the modifier name in the order
- *    they appear in the list below -- e.g. foo-eng-sort, not foo-sort-eng.
- *    -  language -- a tag whose value is localized for a particular language
- *       is appended with the ISO 639-2/B 3-letter language code.
- *       For example: Author-ger=Michael, Author-eng=Mike
- *       The original/default language is in the unqualified "Author" tag.
- *       A demuxer should set a default if it sets any translated tag.
- *    -  sorting  -- a modified version of a tag that should be used for
- *       sorting will have '-sort' appended. E.g. artist="The Beatles",
- *       artist-sort="Beatles, The".
- *
- * -  Demuxers attempt to export metadata in a generic format, however tags
- *    with no generic equivalents are left as they are stored in the container.
- *    Follows a list of generic tag names:
- *
- @verbatim
- album        -- name of the set this work belongs to
- album_artist -- main creator of the set/album, if different from artist.
-                 e.g. "Various Artists" for compilation albums.
- artist       -- main creator of the work
- comment      -- any additional description of the file.
- composer     -- who composed the work, if different from artist.
- copyright    -- name of copyright holder.
- creation_time-- date when the file was created, preferably in ISO 8601.
- date         -- date when the work was created, preferably in ISO 8601.
- disc         -- number of a subset, e.g. disc in a multi-disc collection.
- encoder      -- name/settings of the software/hardware that produced the file.
- encoded_by   -- person/group who created the file.
- filename     -- original name of the file.
- genre        -- <self-evident>.
- language     -- main language in which the work is performed, preferably
-                 in ISO 639-2 format. Multiple languages can be specified by
-                 separating them with commas.
- performer    -- artist who performed the work, if different from artist.
-                 E.g for "Also sprach Zarathustra", artist would be "Richard
-                 Strauss" and performer "London Philharmonic Orchestra".
- publisher    -- name of the label/publisher.
- service_name     -- name of the service in broadcasting (channel name).
- service_provider -- name of the service provider in broadcasting.
- title        -- name of the work.
- track        -- number of this work in the set, can be in form current/total.
- variant_bitrate -- the total bitrate of the bitrate variant that the current stream is part of
- @endverbatim
- *
- * Look in the examples section for an application example how to use the Metadata API.
- *
- * @}
- */
-
-#if FF_API_OLD_METADATA2
-/**
- * @defgroup old_metadata Old metadata API
- * The following functions are deprecated, use
- * their equivalents from libavutil/dict.h instead.
- * @{
- */
-
-#define AV_METADATA_MATCH_CASE      AV_DICT_MATCH_CASE
-#define AV_METADATA_IGNORE_SUFFIX   AV_DICT_IGNORE_SUFFIX
-#define AV_METADATA_DONT_STRDUP_KEY AV_DICT_DONT_STRDUP_KEY
-#define AV_METADATA_DONT_STRDUP_VAL AV_DICT_DONT_STRDUP_VAL
-#define AV_METADATA_DONT_OVERWRITE  AV_DICT_DONT_OVERWRITE
-
-typedef attribute_deprecated AVDictionary AVMetadata;
-typedef attribute_deprecated AVDictionaryEntry  AVMetadataTag;
-
-typedef struct AVMetadataConv AVMetadataConv;
-
-/**
- * Get a metadata element with matching key.
- *
- * @param prev Set to the previous matching element to find the next.
- *             If set to NULL the first matching element is returned.
- * @param flags Allows case as well as suffix-insensitive comparisons.
- * @return Found tag or NULL, changing key or value leads to undefined behavior.
- */
-attribute_deprecated AVDictionaryEntry *
-av_metadata_get(AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags);
-
-/**
- * Set the given tag in *pm, overwriting an existing tag.
- *
- * @param pm pointer to a pointer to a metadata struct. If *pm is NULL
- * a metadata struct is allocated and put in *pm.
- * @param key tag key to add to *pm (will be av_strduped depending on flags)
- * @param value tag value to add to *pm (will be av_strduped depending on flags).
- *        Passing a NULL value will cause an existing tag to be deleted.
- * @return >= 0 on success otherwise an error code <0
- */
-attribute_deprecated int av_metadata_set2(AVDictionary **pm, const char *key, const char *value, int flags);
-
-/**
- * This function is provided for compatibility reason and currently does nothing.
- */
-attribute_deprecated void av_metadata_conv(struct AVFormatContext *ctx, const AVMetadataConv *d_conv,
-                                                                        const AVMetadataConv *s_conv);
-
-/**
- * Copy metadata from one AVDictionary struct into another.
- * @param dst pointer to a pointer to a AVDictionary struct. If *dst is NULL,
- *            this function will allocate a struct for you and put it in *dst
- * @param src pointer to source AVDictionary struct
- * @param flags flags to use when setting metadata in *dst
- * @note metadata is read using the AV_DICT_IGNORE_SUFFIX flag
- */
-attribute_deprecated void av_metadata_copy(AVDictionary **dst, AVDictionary *src, int flags);
-
-/**
- * Free all the memory allocated for an AVDictionary struct.
- */
-attribute_deprecated void av_metadata_free(AVDictionary **m);
-/**
- * @}
- */
-#endif
-
-
-/* packet functions */
-
-
-/**
- * Allocate and read the payload of a packet and initialize its
- * fields with default values.
- *
- * @param pkt packet
- * @param size desired payload size
- * @return >0 (read size) if OK, AVERROR_xxx otherwise
- */
-int av_get_packet(AVIOContext *s, AVPacket *pkt, int size);
-
-
-/**
- * Read data and append it to the current content of the AVPacket.
- * If pkt->size is 0 this is identical to av_get_packet.
- * Note that this uses av_grow_packet and thus involves a realloc
- * which is inefficient. Thus this function should only be used
- * when there is no reasonable way to know (an upper bound of)
- * the final size.
- *
- * @param pkt packet
- * @param size amount of data to read
- * @return >0 (read size) if OK, AVERROR_xxx otherwise, previous data
- *         will not be lost even if an error occurs.
- */
-int av_append_packet(AVIOContext *s, AVPacket *pkt, int size);
-
-/*************************************************/
-/* fractional numbers for exact pts handling */
-
-/**
- * The exact value of the fractional number is: 'val + num / den'.
- * num is assumed to be 0 <= num < den.
- */
-typedef struct AVFrac {
-    int64_t val, num, den;
-} AVFrac;
-
-/*************************************************/
-/* input/output formats */
-
-struct AVCodecTag;
-
-/**
- * This structure contains the data a format has to probe a file.
- */
-typedef struct AVProbeData {
-    const char *filename;
-    unsigned char *buf; /**< Buffer must have AVPROBE_PADDING_SIZE of extra allocated bytes filled with zero. */
-    int buf_size;       /**< Size of buf except extra allocated bytes */
-} AVProbeData;
-
-#define AVPROBE_SCORE_MAX 100               ///< maximum score, half of that is used for file-extension-based detection
-#define AVPROBE_PADDING_SIZE 32             ///< extra allocated bytes at the end of the probe buffer
-
-typedef struct AVFormatParameters {
-#if FF_API_FORMAT_PARAMETERS
-    attribute_deprecated AVRational time_base;
-    attribute_deprecated int sample_rate;
-    attribute_deprecated int channels;
-    attribute_deprecated int width;
-    attribute_deprecated int height;
-    attribute_deprecated enum PixelFormat pix_fmt;
-    attribute_deprecated int channel; /**< Used to select DV channel. */
-    attribute_deprecated const char *standard; /**< deprecated, use demuxer-specific options instead. */
-    attribute_deprecated unsigned int mpeg2ts_raw:1;  /**< deprecated, use mpegtsraw demuxer */
-    /**< deprecated, use mpegtsraw demuxer-specific options instead */
-    attribute_deprecated unsigned int mpeg2ts_compute_pcr:1;
-    attribute_deprecated unsigned int initial_pause:1;       /**< Do not begin to play the stream
-                                                                  immediately (RTSP only). */
-    attribute_deprecated unsigned int prealloced_context:1;
-#endif
-} AVFormatParameters;
-
-//! Demuxer will use avio_open, no opened file should be provided by the caller.
-#define AVFMT_NOFILE        0x0001
-#define AVFMT_NEEDNUMBER    0x0002 /**< Needs '%d' in filename. */
-#define AVFMT_SHOW_IDS      0x0008 /**< Show format stream IDs numbers. */
-#define AVFMT_RAWPICTURE    0x0020 /**< Format wants AVPicture structure for
-                                      raw picture data. */
-#define AVFMT_GLOBALHEADER  0x0040 /**< Format wants global header. */
-#define AVFMT_NOTIMESTAMPS  0x0080 /**< Format does not need / have any timestamps. */
-#define AVFMT_GENERIC_INDEX 0x0100 /**< Use generic index building code. */
-#define AVFMT_TS_DISCONT    0x0200 /**< Format allows timestamp discontinuities. Note, muxers always require valid (monotone) timestamps */
-#define AVFMT_VARIABLE_FPS  0x0400 /**< Format allows variable fps. */
-#define AVFMT_NODIMENSIONS  0x0800 /**< Format does not need width/height */
-#define AVFMT_NOSTREAMS     0x1000 /**< Format does not require any streams */
-#define AVFMT_NOBINSEARCH   0x2000 /**< Format does not allow to fallback to binary search via read_timestamp */
-#define AVFMT_NOGENSEARCH   0x4000 /**< Format does not allow to fallback to generic search */
-#define AVFMT_NO_BYTE_SEEK  0x8000 /**< Format does not allow seeking by bytes */
-#define AVFMT_TS_NONSTRICT  0x8000000 /**< Format does not require strictly
-                                           increasing timestamps, but they must
-                                           still be monotonic */
-
-typedef struct AVOutputFormat {
-    const char *name;
-    /**
-     * Descriptive name for the format, meant to be more human-readable
-     * than name. You should use the NULL_IF_CONFIG_SMALL() macro
-     * to define it.
-     */
-    const char *long_name;
-    const char *mime_type;
-    const char *extensions; /**< comma-separated filename extensions */
-    /**
-     * size of private data so that it can be allocated in the wrapper
-     */
-    int priv_data_size;
-    /* output support */
-    enum CodecID audio_codec; /**< default audio codec */
-    enum CodecID video_codec; /**< default video codec */
-    int (*write_header)(struct AVFormatContext *);
-    int (*write_packet)(struct AVFormatContext *, AVPacket *pkt);
-    int (*write_trailer)(struct AVFormatContext *);
-    /**
-     * can use flags: AVFMT_NOFILE, AVFMT_NEEDNUMBER, AVFMT_RAWPICTURE,
-     * AVFMT_GLOBALHEADER, AVFMT_NOTIMESTAMPS, AVFMT_VARIABLE_FPS,
-     * AVFMT_NODIMENSIONS, AVFMT_NOSTREAMS
-     */
-    int flags;
-
-    void *dummy;
-
-    int (*interleave_packet)(struct AVFormatContext *, AVPacket *out,
-                             AVPacket *in, int flush);
-
-    /**
-     * List of supported codec_id-codec_tag pairs, ordered by "better
-     * choice first". The arrays are all terminated by CODEC_ID_NONE.
-     */
-    const struct AVCodecTag * const *codec_tag;
-
-    enum CodecID subtitle_codec; /**< default subtitle codec */
-
-#if FF_API_OLD_METADATA2
-    const AVMetadataConv *metadata_conv;
-#endif
-
-    const AVClass *priv_class; ///< AVClass for the private context
-
-    /**
-     * Test if the given codec can be stored in this container.
-     *
-     * @return 1 if the codec is supported, 0 if it is not.
-     *         A negative number if unknown.
-     */
-    int (*query_codec)(enum CodecID id, int std_compliance);
-
-    void (*get_output_timestamp)(struct AVFormatContext *s, int stream,
-                                 int64_t *dts, int64_t *wall);
-
-    /* private fields */
-    struct AVOutputFormat *next;
-} AVOutputFormat;
-
-typedef struct AVInputFormat {
-    /**
-     * A comma separated list of short names for the format. New names
-     * may be appended with a minor bump.
-     */
-    const char *name;
-
-    /**
-     * Descriptive name for the format, meant to be more human-readable
-     * than name. You should use the NULL_IF_CONFIG_SMALL() macro
-     * to define it.
-     */
-    const char *long_name;
-
-    /**
-     * Size of private data so that it can be allocated in the wrapper.
-     */
-    int priv_data_size;
-
-    /**
-     * Tell if a given file has a chance of being parsed as this format.
-     * The buffer provided is guaranteed to be AVPROBE_PADDING_SIZE bytes
-     * big so you do not have to check for that unless you need more.
-     */
-    int (*read_probe)(AVProbeData *);
-
-    /**
-     * Read the format header and initialize the AVFormatContext
-     * structure. Return 0 if OK. 'ap' if non-NULL contains
-     * additional parameters. Only used in raw format right
-     * now. 'av_new_stream' should be called to create new streams.
-     */
-    int (*read_header)(struct AVFormatContext *,
-                       AVFormatParameters *ap);
-
-    /**
-     * Read one packet and put it in 'pkt'. pts and flags are also
-     * set. 'av_new_stream' can be called only if the flag
-     * AVFMTCTX_NOHEADER is used and only in the calling thread (not in a
-     * background thread).
-     * @return 0 on success, < 0 on error.
-     *         When returning an error, pkt must not have been allocated
-     *         or must be freed before returning
-     */
-    int (*read_packet)(struct AVFormatContext *, AVPacket *pkt);
-
-    /**
-     * Close the stream. The AVFormatContext and AVStreams are not
-     * freed by this function
-     */
-    int (*read_close)(struct AVFormatContext *);
-
-#if FF_API_READ_SEEK
-    /**
-     * Seek to a given timestamp relative to the frames in
-     * stream component stream_index.
-     * @param stream_index Must not be -1.
-     * @param flags Selects which direction should be preferred if no exact
-     *              match is available.
-     * @return >= 0 on success (but not necessarily the new offset)
-     */
-    attribute_deprecated int (*read_seek)(struct AVFormatContext *,
-                                          int stream_index, int64_t timestamp, int flags);
-#endif
-    /**
-     * Gets the next timestamp in stream[stream_index].time_base units.
-     * @return the timestamp or AV_NOPTS_VALUE if an error occurred
-     */
-    int64_t (*read_timestamp)(struct AVFormatContext *s, int stream_index,
-                              int64_t *pos, int64_t pos_limit);
-
-    /**
-     * Can use flags: AVFMT_NOFILE, AVFMT_NEEDNUMBER, AVFMT_SHOW_IDS,
-     * AVFMT_GENERIC_INDEX, AVFMT_TS_DISCONT, AVFMT_NOBINSEARCH,
-     * AVFMT_NOGENSEARCH, AVFMT_NO_BYTE_SEEK.
-     */
-    int flags;
-
-    /**
-     * If extensions are defined, then no probe is done. You should
-     * usually not use extension format guessing because it is not
-     * reliable enough
-     */
-    const char *extensions;
-
-    /**
-     * General purpose read-only value that the format can use.
-     */
-    int value;
-
-    /**
-     * Start/resume playing - only meaningful if using a network-based format
-     * (RTSP).
-     */
-    int (*read_play)(struct AVFormatContext *);
-
-    /**
-     * Pause playing - only meaningful if using a network-based format
-     * (RTSP).
-     */
-    int (*read_pause)(struct AVFormatContext *);
-
-    const struct AVCodecTag * const *codec_tag;
-
-    /**
-     * Seek to timestamp ts.
-     * Seeking will be done so that the point from which all active streams
-     * can be presented successfully will be closest to ts and within min/max_ts.
-     * Active streams are all streams that have AVStream.discard < AVDISCARD_ALL.
-     */
-    int (*read_seek2)(struct AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags);
-
-#if FF_API_OLD_METADATA2
-    const AVMetadataConv *metadata_conv;
-#endif
-
-    const AVClass *priv_class; ///< AVClass for the private context
-
-    /* private fields */
-    struct AVInputFormat *next;
-} AVInputFormat;
-
-enum AVStreamParseType {
-    AVSTREAM_PARSE_NONE,
-    AVSTREAM_PARSE_FULL,       /**< full parsing and repack */
-    AVSTREAM_PARSE_HEADERS,    /**< Only parse headers, do not repack. */
-    AVSTREAM_PARSE_TIMESTAMPS, /**< full parsing and interpolation of timestamps for frames not starting on a packet boundary */
-    AVSTREAM_PARSE_FULL_ONCE,  /**< full parsing and repack of the first frame only, only implemented for H.264 currently */
-};
-
-typedef struct AVIndexEntry {
-    int64_t pos;
-    int64_t timestamp;        /**<
-                               * Timestamp in AVStream.time_base units, preferably the time from which on correctly decoded frames are available
-                               * when seeking to this entry. That means preferable PTS on keyframe based formats.
-                               * But demuxers can choose to store a different timestamp, if it is more convenient for the implementation or nothing better
-                               * is known
-                               */
-#define AVINDEX_KEYFRAME 0x0001
-    int flags:2;
-    int size:30; //Yeah, trying to keep the size of this small to reduce memory requirements (it is 24 vs. 32 bytes due to possible 8-byte alignment).
-    int min_distance;         /**< Minimum distance between this and the previous keyframe, used to avoid unneeded searching. */
-} AVIndexEntry;
-
-#define AV_DISPOSITION_DEFAULT   0x0001
-#define AV_DISPOSITION_DUB       0x0002
-#define AV_DISPOSITION_ORIGINAL  0x0004
-#define AV_DISPOSITION_COMMENT   0x0008
-#define AV_DISPOSITION_LYRICS    0x0010
-#define AV_DISPOSITION_KARAOKE   0x0020
-
-/**
- * Track should be used during playback by default.
- * Useful for subtitle track that should be displayed
- * even when user did not explicitly ask for subtitles.
- */
-#define AV_DISPOSITION_FORCED    0x0040
-#define AV_DISPOSITION_HEARING_IMPAIRED  0x0080  /**< stream for hearing impaired audiences */
-#define AV_DISPOSITION_VISUAL_IMPAIRED   0x0100  /**< stream for visual impaired audiences */
-#define AV_DISPOSITION_CLEAN_EFFECTS     0x0200  /**< stream without voice */
-
-/**
- * Stream structure.
- * New fields can be added to the end with minor version bumps.
- * Removal, reordering and changes to existing fields require a major
- * version bump.
- * sizeof(AVStream) must not be used outside libav*.
- */
-typedef struct AVStream {
-    int index;    /**< stream index in AVFormatContext */
-    int id;       /**< format-specific stream ID */
-    AVCodecContext *codec; /**< codec context */
-    /**
-     * Real base framerate of the stream.
-     * This is the lowest framerate with which all timestamps can be
-     * represented accurately (it is the least common multiple of all
-     * framerates in the stream). Note, this value is just a guess!
-     * For example, if the time base is 1/90000 and all frames have either
-     * approximately 3600 or 1800 timer ticks, then r_frame_rate will be 50/1.
-     */
-    AVRational r_frame_rate;
-    void *priv_data;
-
-#if FF_API_REORDER_PRIVATE
-    /* internal data used in av_find_stream_info() */
-    int64_t first_dts;
-#endif
-
-    /**
-     * encoding: pts generation when outputting stream
-     */
-    struct AVFrac pts;
-
-    /**
-     * This is the fundamental unit of time (in seconds) in terms
-     * of which frame timestamps are represented. For fixed-fps content,
-     * time base should be 1/framerate and timestamp increments should be 1.
-     * decoding: set by libavformat
-     * encoding: set by libavformat in av_write_header
-     */
-    AVRational time_base;
-#if FF_API_REORDER_PRIVATE
-    int pts_wrap_bits; /**< number of bits in pts (used for wrapping control) */
-#endif
-#if FF_API_STREAM_COPY
-    /* ffmpeg.c private use */
-    attribute_deprecated int stream_copy; /**< If set, just copy stream. */
-#endif
-    enum AVDiscard discard; ///< Selects which packets can be discarded at will and do not need to be demuxed.
-
-#if FF_API_AVSTREAM_QUALITY
-    //FIXME move stuff to a flags field?
-    /**
-     * Quality, as it has been removed from AVCodecContext and put in AVVideoFrame.
-     * MN: dunno if that is the right place for it
-     */
-    attribute_deprecated float quality;
-#endif
-
-    /**
-     * Decoding: pts of the first frame of the stream in presentation order, in stream time base.
-     * Only set this if you are absolutely 100% sure that the value you set
-     * it to really is the pts of the first frame.
-     * This may be undefined (AV_NOPTS_VALUE).
-     * @note The ASF header does NOT contain a correct start_time the ASF
-     * demuxer must NOT set this.
-     */
-    int64_t start_time;
-
-    /**
-     * Decoding: duration of the stream, in stream time base.
-     * If a source file does not specify a duration, but does specify
-     * a bitrate, this value will be estimated from bitrate and file size.
-     */
-    int64_t duration;
-
-#if FF_API_REORDER_PRIVATE
-    /* av_read_frame() support */
-    enum AVStreamParseType need_parsing;
-    struct AVCodecParserContext *parser;
-
-    int64_t cur_dts;
-    int last_IP_duration;
-    int64_t last_IP_pts;
-    /* av_seek_frame() support */
-    AVIndexEntry *index_entries; /**< Only used if the format does not
-                                    support seeking natively. */
-    int nb_index_entries;
-    unsigned int index_entries_allocated_size;
-#endif
-
-    int64_t nb_frames;                 ///< number of frames in this stream if known or 0
-
-    int disposition; /**< AV_DISPOSITION_* bit field */
-
-#if FF_API_REORDER_PRIVATE
-    AVProbeData probe_data;
-#define MAX_REORDER_DELAY 16
-    int64_t pts_buffer[MAX_REORDER_DELAY+1];
-#endif
-
-    /**
-     * sample aspect ratio (0 if unknown)
-     * - encoding: Set by user.
-     * - decoding: Set by libavformat.
-     */
-    AVRational sample_aspect_ratio;
-
-    AVDictionary *metadata;
-
-#if FF_API_REORDER_PRIVATE
-    /* Intended mostly for av_read_frame() support. Not supposed to be used by */
-    /* external applications; try to use something else if at all possible.    */
-    const uint8_t *cur_ptr;
-    int cur_len;
-    AVPacket cur_pkt;
-
-    // Timestamp generation support:
-    /**
-     * Timestamp corresponding to the last dts sync point.
-     *
-     * Initialized when AVCodecParserContext.dts_sync_point >= 0 and
-     * a DTS is received from the underlying container. Otherwise set to
-     * AV_NOPTS_VALUE by default.
-     */
-    int64_t reference_dts;
-
-    /**
-     * Number of packets to buffer for codec probing
-     * NOT PART OF PUBLIC API
-     */
-#define MAX_PROBE_PACKETS 2500
-    int probe_packets;
-
-    /**
-     * last packet in packet_buffer for this stream when muxing.
-     * used internally, NOT PART OF PUBLIC API, dont read or write from outside of libav*
-     */
-    struct AVPacketList *last_in_packet_buffer;
-#endif
-
-    /**
-     * Average framerate
-     */
-    AVRational avg_frame_rate;
-
-    /*****************************************************************
-     * All fields below this line are not part of the public API. They
-     * may not be used outside of libavformat and can be changed and
-     * removed at will.
-     * New public fields should be added right above.
-     *****************************************************************
-     */
-
-    /**
-     * Number of frames that have been demuxed during av_find_stream_info()
-     */
-    int codec_info_nb_frames;
-
-    /**
-     * Stream Identifier
-     * This is the MPEG-TS stream identifier +1
-     * 0 means unknown
-     */
-    int stream_identifier;
-
-    int64_t interleaver_chunk_size;
-    int64_t interleaver_chunk_duration;
-
-    /**
-     * Stream informations used internally by av_find_stream_info()
-     */
-#define MAX_STD_TIMEBASES (60*12+5)
-    struct {
-        int64_t last_dts;
-        int64_t duration_gcd;
-        int duration_count;
-        double duration_error[2][2][MAX_STD_TIMEBASES];
-        int64_t codec_info_duration;
-        int nb_decoded_frames;
-    } *info;
-
-    /**
-     * flag to indicate that probing is requested
-     * NOT PART OF PUBLIC API
-     */
-    int request_probe;
-#if !FF_API_REORDER_PRIVATE
-    const uint8_t *cur_ptr;
-    int cur_len;
-    AVPacket cur_pkt;
-
-    // Timestamp generation support:
-    /**
-     * Timestamp corresponding to the last dts sync point.
-     *
-     * Initialized when AVCodecParserContext.dts_sync_point >= 0 and
-     * a DTS is received from the underlying container. Otherwise set to
-     * AV_NOPTS_VALUE by default.
-     */
-    int64_t reference_dts;
-    int64_t first_dts;
-    int64_t cur_dts;
-    int last_IP_duration;
-    int64_t last_IP_pts;
-
-    /**
-     * Number of packets to buffer for codec probing
-     */
-#define MAX_PROBE_PACKETS 2500
-    int probe_packets;
-
-    /**
-     * last packet in packet_buffer for this stream when muxing.
-     */
-    struct AVPacketList *last_in_packet_buffer;
-    AVProbeData probe_data;
-#define MAX_REORDER_DELAY 16
-    int64_t pts_buffer[MAX_REORDER_DELAY+1];
-    /* av_read_frame() support */
-    enum AVStreamParseType need_parsing;
-    struct AVCodecParserContext *parser;
-
-    AVIndexEntry *index_entries; /**< Only used if the format does not
-                                    support seeking natively. */
-    int nb_index_entries;
-    unsigned int index_entries_allocated_size;
-
-    int pts_wrap_bits; /**< number of bits in pts (used for wrapping control) */
-#endif
-} AVStream;
-
-#define AV_PROGRAM_RUNNING 1
-
-/**
- * New fields can be added to the end with minor version bumps.
- * Removal, reordering and changes to existing fields require a major
- * version bump.
- * sizeof(AVProgram) must not be used outside libav*.
- */
-typedef struct AVProgram {
-    int            id;
-    int            flags;
-    enum AVDiscard discard;        ///< selects which program to discard and which to feed to the caller
-    unsigned int   *stream_index;
-    unsigned int   nb_stream_indexes;
-    AVDictionary *metadata;
-
-    int program_num;
-    int pmt_pid;
-    int pcr_pid;
-} AVProgram;
-
-#define AVFMTCTX_NOHEADER      0x0001 /**< signal that no header is present
-                                         (streams are added dynamically) */
-
-typedef struct AVChapter {
-    int id;                 ///< unique ID to identify the chapter
-    AVRational time_base;   ///< time base in which the start/end timestamps are specified
-    int64_t start, end;     ///< chapter start/end time in time_base units
-    AVDictionary *metadata;
-} AVChapter;
-
-/**
- * Format I/O context.
- * New fields can be added to the end with minor version bumps.
- * Removal, reordering and changes to existing fields require a major
- * version bump.
- * sizeof(AVFormatContext) must not be used outside libav*, use
- * avformat_alloc_context() to create an AVFormatContext.
- */
-typedef struct AVFormatContext {
-    /**
-     * A class for logging and AVOptions. Set by avformat_alloc_context().
-     * Exports (de)muxer private options if they exist.
-     */
-    const AVClass *av_class;
-
-    /**
-     * Can only be iformat or oformat, not both at the same time.
-     *
-     * decoding: set by avformat_open_input().
-     * encoding: set by the user.
-     */
-    struct AVInputFormat *iformat;
-    struct AVOutputFormat *oformat;
-
-    /**
-     * Format private data. This is an AVOptions-enabled struct
-     * if and only if iformat/oformat.priv_class is not NULL.
-     */
-    void *priv_data;
-
-    /*
-     * I/O context.
-     *
-     * decoding: either set by the user before avformat_open_input() (then
-     * the user must close it manually) or set by avformat_open_input().
-     * encoding: set by the user.
-     *
-     * Do NOT set this field if AVFMT_NOFILE flag is set in
-     * iformat/oformat.flags. In such a case, the (de)muxer will handle
-     * I/O in some other way and this field will be NULL.
-     */
-    AVIOContext *pb;
-
-    /**
-     * A list of all streams in the file. New streams are created with
-     * avformat_new_stream().
-     *
-     * decoding: streams are created by libavformat in avformat_open_input().
-     * If AVFMTCTX_NOHEADER is set in ctx_flags, then new streams may also
-     * appear in av_read_frame().
-     * encoding: streams are created by the user before avformat_write_header().
-     */
-    unsigned int nb_streams;
-    AVStream **streams;
-
-    char filename[1024]; /**< input or output filename */
-    /* stream info */
-#if FF_API_TIMESTAMP
-    /**
-     * @deprecated use 'creation_time' metadata tag instead
-     */
-    attribute_deprecated int64_t timestamp;
-#endif
-
-    int ctx_flags; /**< Format-specific flags, see AVFMTCTX_xx */
-#if FF_API_REORDER_PRIVATE
-    /* private data for pts handling (do not modify directly). */
-    /**
-     * This buffer is only needed when packets were already buffered but
-     * not decoded, for example to get the codec parameters in MPEG
-     * streams.
-     */
-    struct AVPacketList *packet_buffer;
-#endif
-
-    /**
-     * Decoding: position of the first frame of the component, in
-     * AV_TIME_BASE fractional seconds. NEVER set this value directly:
-     * It is deduced from the AVStream values.
-     */
-    int64_t start_time;
-
-    /**
-     * Decoding: duration of the stream, in AV_TIME_BASE fractional
-     * seconds. Only set this value if you know none of the individual stream
-     * durations and also dont set any of them. This is deduced from the
-     * AVStream values if not set.
-     */
-    int64_t duration;
-
-#if FF_API_FILESIZE
-    /**
-     * decoding: total file size, 0 if unknown
-     */
-    attribute_deprecated int64_t file_size;
-#endif
-
-    /**
-     * Decoding: total stream bitrate in bit/s, 0 if not
-     * available. Never set it directly if the file_size and the
-     * duration are known as FFmpeg can compute it automatically.
-     */
-    int bit_rate;
-
-#if FF_API_REORDER_PRIVATE
-    /* av_read_frame() support */
-    AVStream *cur_st;
-
-    /* av_seek_frame() support */
-    int64_t data_offset; /**< offset of the first packet */
-#endif
-
-#if FF_API_MUXRATE
-    /**
-     * use mpeg muxer private options instead
-     */
-    attribute_deprecated int mux_rate;
-#endif
-    unsigned int packet_size;
-#if FF_API_PRELOAD
-    attribute_deprecated int preload;
-#endif
-    int max_delay;
-
-#if FF_API_LOOP_OUTPUT
-#define AVFMT_NOOUTPUTLOOP -1
-#define AVFMT_INFINITEOUTPUTLOOP 0
-    /**
-     * number of times to loop output in formats that support it
-     *
-     * @deprecated use the 'loop' private option in the gif muxer.
-     */
-    attribute_deprecated int loop_output;
-#endif
-
-    int flags;
-#define AVFMT_FLAG_GENPTS       0x0001 ///< Generate missing pts even if it requires parsing future frames.
-#define AVFMT_FLAG_IGNIDX       0x0002 ///< Ignore index.
-#define AVFMT_FLAG_NONBLOCK     0x0004 ///< Do not block when reading packets from input.
-#define AVFMT_FLAG_IGNDTS       0x0008 ///< Ignore DTS on frames that contain both DTS & PTS
-#define AVFMT_FLAG_NOFILLIN     0x0010 ///< Do not infer any values from other values, just return what is stored in the container
-#define AVFMT_FLAG_NOPARSE      0x0020 ///< Do not use AVParsers, you also must set AVFMT_FLAG_NOFILLIN as the fillin code works on frames and no parsing -> no frames. Also seeking to frames can not work if parsing to find frame boundaries has been disabled
-#if FF_API_FLAG_RTP_HINT
-#define AVFMT_FLAG_RTP_HINT     0x0040 ///< Deprecated, use the -movflags rtphint muxer specific AVOption instead
-#endif
-#define AVFMT_FLAG_CUSTOM_IO    0x0080 ///< The caller has supplied a custom AVIOContext, don't avio_close() it.
-#define AVFMT_FLAG_DISCARD_CORRUPT  0x0100 ///< Discard frames marked corrupted
-#define AVFMT_FLAG_MP4A_LATM    0x8000 ///< Enable RTP MP4A-LATM payload
-#define AVFMT_FLAG_SORT_DTS    0x10000 ///< try to interleave outputted packets by dts (using this flag can slow demuxing down)
-#define AVFMT_FLAG_PRIV_OPT    0x20000 ///< Enable use of private options by delaying codec open (this could be made default once all code is converted)
-#define AVFMT_FLAG_KEEP_SIDE_DATA 0x40000 ///< Dont merge side data but keep it seperate.
-
-#if FF_API_LOOP_INPUT
-    /**
-     * @deprecated, use the 'loop' img2 demuxer private option.
-     */
-    attribute_deprecated int loop_input;
-#endif
-
-    /**
-     * decoding: size of data to probe; encoding: unused.
-     */
-    unsigned int probesize;
-
-    /**
-     * decoding: maximum time (in AV_TIME_BASE units) during which the input should
-     * be analyzed in avformat_find_stream_info().
-     */
-    int max_analyze_duration;
-
-    const uint8_t *key;
-    int keylen;
-
-    unsigned int nb_programs;
-    AVProgram **programs;
-
-    /**
-     * Forced video codec_id.
-     * Demuxing: Set by user.
-     */
-    enum CodecID video_codec_id;
-
-    /**
-     * Forced audio codec_id.
-     * Demuxing: Set by user.
-     */
-    enum CodecID audio_codec_id;
-
-    /**
-     * Forced subtitle codec_id.
-     * Demuxing: Set by user.
-     */
-    enum CodecID subtitle_codec_id;
-
-    /**
-     * Maximum amount of memory in bytes to use for the index of each stream.
-     * If the index exceeds this size, entries will be discarded as
-     * needed to maintain a smaller size. This can lead to slower or less
-     * accurate seeking (depends on demuxer).
-     * Demuxers for which a full in-memory index is mandatory will ignore
-     * this.
-     * muxing  : unused
-     * demuxing: set by user
-     */
-    unsigned int max_index_size;
-
-    /**
-     * Maximum amount of memory in bytes to use for buffering frames
-     * obtained from realtime capture devices.
-     */
-    unsigned int max_picture_buffer;
-
-    unsigned int nb_chapters;
-    AVChapter **chapters;
-
-    /**
-     * Flags to enable debugging.
-     */
-    int debug;
-#define FF_FDEBUG_TS        0x0001
-
-#if FF_API_REORDER_PRIVATE
-    /**
-     * Raw packets from the demuxer, prior to parsing and decoding.
-     * This buffer is used for buffering packets until the codec can
-     * be identified, as parsing cannot be done without knowing the
-     * codec.
-     */
-    struct AVPacketList *raw_packet_buffer;
-    struct AVPacketList *raw_packet_buffer_end;
-
-    struct AVPacketList *packet_buffer_end;
-#endif
-
-    AVDictionary *metadata;
-
-#if FF_API_REORDER_PRIVATE
-    /**
-     * Remaining size available for raw_packet_buffer, in bytes.
-     * NOT PART OF PUBLIC API
-     */
-#define RAW_PACKET_BUFFER_SIZE 2500000
-    int raw_packet_buffer_remaining_size;
-#endif
-
-    /**
-     * Start time of the stream in real world time, in microseconds
-     * since the unix epoch (00:00 1st January 1970). That is, pts=0
-     * in the stream was captured at this real world time.
-     * - encoding: Set by user.
-     * - decoding: Unused.
-     */
-    int64_t start_time_realtime;
-
-    /**
-     * decoding: number of frames used to probe fps
-     */
-    int fps_probe_size;
-
-    /**
-     * Error recognition; higher values will detect more errors but may
-     * misdetect some more or less valid parts as errors.
-     * - encoding: unused
-     * - decoding: Set by user.
-     */
-    int error_recognition;
-
-    /**
-     * Custom interrupt callbacks for the I/O layer.
-     *
-     * decoding: set by the user before avformat_open_input().
-     * encoding: set by the user before avformat_write_header()
-     * (mainly useful for AVFMT_NOFILE formats). The callback
-     * should also be passed to avio_open2() if it's used to
-     * open the file.
-     */
-    AVIOInterruptCB interrupt_callback;
-
-    /**
-     * Transport stream id.
-     * This will be moved into demuxer private options. Thus no API/ABI compatibility
-     */
-    int ts_id;
-
-    /**
-     * Audio preload in microseconds.
-     * Note, not all formats support this and unpredictable things may happen if it is used when not supported.
-     * - encoding: Set by user via AVOptions (NO direct access)
-     * - decoding: unused
-     */
-    int audio_preload;
-
-    /**
-     * Max chunk time in microseconds.
-     * Note, not all formats support this and unpredictable things may happen if it is used when not supported.
-     * - encoding: Set by user via AVOptions (NO direct access)
-     * - decoding: unused
-     */
-    int max_chunk_duration;
-
-    /**
-     * Max chunk size in bytes
-     * Note, not all formats support this and unpredictable things may happen if it is used when not supported.
-     * - encoding: Set by user via AVOptions (NO direct access)
-     * - decoding: unused
-     */
-    int max_chunk_size;
-
-    /*****************************************************************
-     * All fields below this line are not part of the public API. They
-     * may not be used outside of libavformat and can be changed and
-     * removed at will.
-     * New public fields should be added right above.
-     *****************************************************************
-     */
-#if !FF_API_REORDER_PRIVATE
-    /**
-     * Raw packets from the demuxer, prior to parsing and decoding.
-     * This buffer is used for buffering packets until the codec can
-     * be identified, as parsing cannot be done without knowing the
-     * codec.
-     */
-    struct AVPacketList *raw_packet_buffer;
-    struct AVPacketList *raw_packet_buffer_end;
-    /**
-     * Remaining size available for raw_packet_buffer, in bytes.
-     */
-#define RAW_PACKET_BUFFER_SIZE 2500000
-    int raw_packet_buffer_remaining_size;
-
-    /**
-     * This buffer is only needed when packets were already buffered but
-     * not decoded, for example to get the codec parameters in MPEG
-     * streams.
-     */
-    struct AVPacketList *packet_buffer;
-    struct AVPacketList *packet_buffer_end;
-
-    /* av_read_frame() support */
-    AVStream *cur_st;
-
-    /* av_seek_frame() support */
-    int64_t data_offset; /**< offset of the first packet */
-#endif
-} AVFormatContext;
-
-typedef struct AVPacketList {
-    AVPacket pkt;
-    struct AVPacketList *next;
-} AVPacketList;
-
-/**
- * If f is NULL, returns the first registered input format,
- * if f is non-NULL, returns the next registered input format after f
- * or NULL if f is the last one.
- */
-AVInputFormat  *av_iformat_next(AVInputFormat  *f);
-
-/**
- * If f is NULL, returns the first registered output format,
- * if f is non-NULL, returns the next registered output format after f
- * or NULL if f is the last one.
- */
-AVOutputFormat *av_oformat_next(AVOutputFormat *f);
-
-#if FF_API_GUESS_IMG2_CODEC
-attribute_deprecated enum CodecID av_guess_image2_codec(const char *filename);
-#endif
-
-/* XXX: Use automatic init with either ELF sections or C file parser */
-/* modules. */
-
-/* utils.c */
-void av_register_input_format(AVInputFormat *format);
-void av_register_output_format(AVOutputFormat *format);
-
-/**
- * Return the output format in the list of registered output formats
- * which best matches the provided parameters, or return NULL if
- * there is no match.
- *
- * @param short_name if non-NULL checks if short_name matches with the
- * names of the registered formats
- * @param filename if non-NULL checks if filename terminates with the
- * extensions of the registered formats
- * @param mime_type if non-NULL checks if mime_type matches with the
- * MIME type of the registered formats
- */
-AVOutputFormat *av_guess_format(const char *short_name,
-                                const char *filename,
-                                const char *mime_type);
-
-/**
- * Guess the codec ID based upon muxer and filename.
- */
-enum CodecID av_guess_codec(AVOutputFormat *fmt, const char *short_name,
-                            const char *filename, const char *mime_type,
-                            enum AVMediaType type);
-
-/**
- * Send a nice hexadecimal dump of a buffer to the specified file stream.
- *
- * @param f The file stream pointer where the dump should be sent to.
- * @param buf buffer
- * @param size buffer size
- *
- * @see av_hex_dump_log, av_pkt_dump2, av_pkt_dump_log2
- */
-void av_hex_dump(FILE *f, uint8_t *buf, int size);
-
-/**
- * Send a nice hexadecimal dump of a buffer to the log.
- *
- * @param avcl A pointer to an arbitrary struct of which the first field is a
- * pointer to an AVClass struct.
- * @param level The importance level of the message, lower values signifying
- * higher importance.
- * @param buf buffer
- * @param size buffer size
- *
- * @see av_hex_dump, av_pkt_dump2, av_pkt_dump_log2
- */
-void av_hex_dump_log(void *avcl, int level, uint8_t *buf, int size);
-
-/**
- * Send a nice dump of a packet to the specified file stream.
- *
- * @param f The file stream pointer where the dump should be sent to.
- * @param pkt packet to dump
- * @param dump_payload True if the payload must be displayed, too.
- * @param st AVStream that the packet belongs to
- */
-void av_pkt_dump2(FILE *f, AVPacket *pkt, int dump_payload, AVStream *st);
-
-
-/**
- * Send a nice dump of a packet to the log.
- *
- * @param avcl A pointer to an arbitrary struct of which the first field is a
- * pointer to an AVClass struct.
- * @param level The importance level of the message, lower values signifying
- * higher importance.
- * @param pkt packet to dump
- * @param dump_payload True if the payload must be displayed, too.
- * @param st AVStream that the packet belongs to
- */
-void av_pkt_dump_log2(void *avcl, int level, AVPacket *pkt, int dump_payload,
-                      AVStream *st);
-
-#if FF_API_PKT_DUMP
-attribute_deprecated void av_pkt_dump(FILE *f, AVPacket *pkt, int dump_payload);
-attribute_deprecated void av_pkt_dump_log(void *avcl, int level, AVPacket *pkt,
-                                          int dump_payload);
-#endif
-
-/**
- * Initialize libavformat and register all the muxers, demuxers and
- * protocols. If you do not call this function, then you can select
- * exactly which formats you want to support.
- *
- * @see av_register_input_format()
- * @see av_register_output_format()
- * @see av_register_protocol()
- */
-void av_register_all(void);
-
-/**
- * Get the CodecID for the given codec tag tag.
- * If no codec id is found returns CODEC_ID_NONE.
- *
- * @param tags list of supported codec_id-codec_tag pairs, as stored
- * in AVInputFormat.codec_tag and AVOutputFormat.codec_tag
- */
-enum CodecID av_codec_get_id(const struct AVCodecTag * const *tags, unsigned int tag);
-
-/**
- * Get the codec tag for the given codec id id.
- * If no codec tag is found returns 0.
- *
- * @param tags list of supported codec_id-codec_tag pairs, as stored
- * in AVInputFormat.codec_tag and AVOutputFormat.codec_tag
- */
-unsigned int av_codec_get_tag(const struct AVCodecTag * const *tags, enum CodecID id);
-
-/* media file input */
-
-/**
- * Find AVInputFormat based on the short name of the input format.
- */
-AVInputFormat *av_find_input_format(const char *short_name);
-
-/**
- * Guess the file format.
- *
- * @param is_opened Whether the file is already opened; determines whether
- *                  demuxers with or without AVFMT_NOFILE are probed.
- */
-AVInputFormat *av_probe_input_format(AVProbeData *pd, int is_opened);
-
-/**
- * Guess the file format.
- *
- * @param is_opened Whether the file is already opened; determines whether
- *                  demuxers with or without AVFMT_NOFILE are probed.
- * @param score_max A probe score larger that this is required to accept a
- *                  detection, the variable is set to the actual detection
- *                  score afterwards.
- *                  If the score is <= AVPROBE_SCORE_MAX / 4 it is recommended
- *                  to retry with a larger probe buffer.
- */
-AVInputFormat *av_probe_input_format2(AVProbeData *pd, int is_opened, int *score_max);
-
-/**
- * Guess the file format.
- *
- * @param is_opened Whether the file is already opened; determines whether
- *                  demuxers with or without AVFMT_NOFILE are probed.
- * @param score_ret The score of the best detection.
- */
-AVInputFormat *av_probe_input_format3(AVProbeData *pd, int is_opened, int *score_ret);
-
-/**
- * Probe a bytestream to determine the input format. Each time a probe returns
- * with a score that is too low, the probe buffer size is increased and another
- * attempt is made. When the maximum probe size is reached, the input format
- * with the highest score is returned.
- *
- * @param pb the bytestream to probe
- * @param fmt the input format is put here
- * @param filename the filename of the stream
- * @param logctx the log context
- * @param offset the offset within the bytestream to probe from
- * @param max_probe_size the maximum probe buffer size (zero for default)
- * @return 0 in case of success, a negative value corresponding to an
- * AVERROR code otherwise
- */
-int av_probe_input_buffer(AVIOContext *pb, AVInputFormat **fmt,
-                          const char *filename, void *logctx,
-                          unsigned int offset, unsigned int max_probe_size);
-
-#if FF_API_FORMAT_PARAMETERS
-/**
- * Allocate all the structures needed to read an input stream.
- *        This does not open the needed codecs for decoding the stream[s].
- * @deprecated use avformat_open_input instead.
- */
-attribute_deprecated int av_open_input_stream(AVFormatContext **ic_ptr,
-                         AVIOContext *pb, const char *filename,
-                         AVInputFormat *fmt, AVFormatParameters *ap);
-
-/**
- * Open a media file as input. The codecs are not opened. Only the file
- * header (if present) is read.
- *
- * @param ic_ptr The opened media file handle is put here.
- * @param filename filename to open
- * @param fmt If non-NULL, force the file format to use.
- * @param buf_size optional buffer size (zero if default is OK)
- * @param ap Additional parameters needed when opening the file
- *           (NULL if default).
- * @return 0 if OK, AVERROR_xxx otherwise
- *
- * @deprecated use avformat_open_input instead.
- */
-attribute_deprecated int av_open_input_file(AVFormatContext **ic_ptr, const char *filename,
-                       AVInputFormat *fmt,
-                       int buf_size,
-                       AVFormatParameters *ap);
-#endif
-
-/**
- * Open an input stream and read the header. The codecs are not opened.
- * The stream must be closed with av_close_input_file().
- *
- * @param ps Pointer to user-supplied AVFormatContext (allocated by avformat_alloc_context).
- *           May be a pointer to NULL, in which case an AVFormatContext is allocated by this
- *           function and written into ps.
- *           Note that a user-supplied AVFormatContext will be freed on failure.
- * @param filename Name of the stream to open.
- * @param fmt If non-NULL, this parameter forces a specific input format.
- *            Otherwise the format is autodetected.
- * @param options  A dictionary filled with AVFormatContext and demuxer-private options.
- *                 On return this parameter will be destroyed and replaced with a dict containing
- *                 options that were not found. May be NULL.
- *
- * @return 0 on success, a negative AVERROR on failure.
- *
- * @note If you want to use custom IO, preallocate the format context and set its pb field.
- */
-int avformat_open_input(AVFormatContext **ps, const char *filename, AVInputFormat *fmt, AVDictionary **options);
-
-int av_demuxer_open(AVFormatContext *ic, AVFormatParameters *ap);
-
-/**
- * Allocate an AVFormatContext.
- * avformat_free_context() can be used to free the context and everything
- * allocated by the framework within it.
- */
-AVFormatContext *avformat_alloc_context(void);
-
-#if FF_API_ALLOC_OUTPUT_CONTEXT
-/**
- * @deprecated deprecated in favor of avformat_alloc_output_context2()
- */
-attribute_deprecated
-AVFormatContext *avformat_alloc_output_context(const char *format,
-                                               AVOutputFormat *oformat,
-                                               const char *filename);
-#endif
-
-/**
- * Allocate an AVFormatContext for an output format.
- * avformat_free_context() can be used to free the context and
- * everything allocated by the framework within it.
- *
- * @param *ctx is set to the created format context, or to NULL in
- * case of failure
- * @param oformat format to use for allocating the context, if NULL
- * format_name and filename are used instead
- * @param format_name the name of output format to use for allocating the
- * context, if NULL filename is used instead
- * @param filename the name of the filename to use for allocating the
- * context, may be NULL
- * @return >= 0 in case of success, a negative AVERROR code in case of
- * failure
- */
-int avformat_alloc_output_context2(AVFormatContext **ctx, AVOutputFormat *oformat,
-                                   const char *format_name, const char *filename);
-
-#if FF_API_FORMAT_PARAMETERS
-/**
- * Read packets of a media file to get stream information. This
- * is useful for file formats with no headers such as MPEG. This
- * function also computes the real framerate in case of MPEG-2 repeat
- * frame mode.
- * The logical file position is not changed by this function;
- * examined packets may be buffered for later processing.
- *
- * @param ic media file handle
- * @return >=0 if OK, AVERROR_xxx on error
- * @todo Let the user decide somehow what information is needed so that
- *       we do not waste time getting stuff the user does not need.
- *
- * @deprecated use avformat_find_stream_info.
- */
-attribute_deprecated
-int av_find_stream_info(AVFormatContext *ic);
-#endif
-
-/**
- * Read packets of a media file to get stream information. This
- * is useful for file formats with no headers such as MPEG. This
- * function also computes the real framerate in case of MPEG-2 repeat
- * frame mode.
- * The logical file position is not changed by this function;
- * examined packets may be buffered for later processing.
- *
- * @param ic media file handle
- * @param options  If non-NULL, an ic.nb_streams long array of pointers to
- *                 dictionaries, where i-th member contains options for
- *                 codec corresponding to i-th stream.
- *                 On return each dictionary will be filled with options that were not found.
- * @return >=0 if OK, AVERROR_xxx on error
- *
- * @note this function isn't guaranteed to open all the codecs, so
- *       options being non-empty at return is a perfectly normal behavior.
- *
- * @todo Let the user decide somehow what information is needed so that
- *       we do not waste time getting stuff the user does not need.
- */
-int avformat_find_stream_info(AVFormatContext *ic, AVDictionary **options);
-
-/**
- * Find the programs which belong to a given stream.
- *
- * @param ic    media file handle
- * @param last  the last found program, the search will start after this
- *              program, or from the beginning if it is NULL
- * @param s     stream index
- * @return the next program which belongs to s, NULL if no program is found or
- *         the last program is not among the programs of ic.
- */
-AVProgram *av_find_program_from_stream(AVFormatContext *ic, AVProgram *last, int s);
-
-/**
- * Find the "best" stream in the file.
- * The best stream is determined according to various heuristics as the most
- * likely to be what the user expects.
- * If the decoder parameter is non-NULL, av_find_best_stream will find the
- * default decoder for the stream's codec; streams for which no decoder can
- * be found are ignored.
- *
- * @param ic                media file handle
- * @param type              stream type: video, audio, subtitles, etc.
- * @param wanted_stream_nb  user-requested stream number,
- *                          or -1 for automatic selection
- * @param related_stream    try to find a stream related (eg. in the same
- *                          program) to this one, or -1 if none
- * @param decoder_ret       if non-NULL, returns the decoder for the
- *                          selected stream
- * @param flags             flags; none are currently defined
- * @return  the non-negative stream number in case of success,
- *          AVERROR_STREAM_NOT_FOUND if no stream with the requested type
- *          could be found,
- *          AVERROR_DECODER_NOT_FOUND if streams were found but no decoder
- * @note  If av_find_best_stream returns successfully and decoder_ret is not
- *        NULL, then *decoder_ret is guaranteed to be set to a valid AVCodec.
- */
-int av_find_best_stream(AVFormatContext *ic,
-                        enum AVMediaType type,
-                        int wanted_stream_nb,
-                        int related_stream,
-                        AVCodec **decoder_ret,
-                        int flags);
-
-/**
- * Read a transport packet from a media file.
- *
- * This function is obsolete and should never be used.
- * Use av_read_frame() instead.
- *
- * @param s media file handle
- * @param pkt is filled
- * @return 0 if OK, AVERROR_xxx on error
- */
-int av_read_packet(AVFormatContext *s, AVPacket *pkt);
-
-/**
- * Return the next frame of a stream.
- * This function returns what is stored in the file, and does not validate
- * that what is there are valid frames for the decoder. It will split what is
- * stored in the file into frames and return one for each call. It will not
- * omit invalid data between valid frames so as to give the decoder the maximum
- * information possible for decoding.
- *
- * The returned packet is valid
- * until the next av_read_frame() or until av_close_input_file() and
- * must be freed with av_free_packet. For video, the packet contains
- * exactly one frame. For audio, it contains an integer number of
- * frames if each frame has a known fixed size (e.g. PCM or ADPCM
- * data). If the audio frames have a variable size (e.g. MPEG audio),
- * then it contains one frame.
- *
- * pkt->pts, pkt->dts and pkt->duration are always set to correct
- * values in AVStream.time_base units (and guessed if the format cannot
- * provide them). pkt->pts can be AV_NOPTS_VALUE if the video format
- * has B-frames, so it is better to rely on pkt->dts if you do not
- * decompress the payload.
- *
- * @return 0 if OK, < 0 on error or end of file
- */
-int av_read_frame(AVFormatContext *s, AVPacket *pkt);
-
-/**
- * Seek to the keyframe at timestamp.
- * 'timestamp' in 'stream_index'.
- * @param stream_index If stream_index is (-1), a default
- * stream is selected, and timestamp is automatically converted
- * from AV_TIME_BASE units to the stream specific time_base.
- * @param timestamp Timestamp in AVStream.time_base units
- *        or, if no stream is specified, in AV_TIME_BASE units.
- * @param flags flags which select direction and seeking mode
- * @return >= 0 on success
- */
-int av_seek_frame(AVFormatContext *s, int stream_index, int64_t timestamp,
-                  int flags);
-
-/**
- * Seek to timestamp ts.
- * Seeking will be done so that the point from which all active streams
- * can be presented successfully will be closest to ts and within min/max_ts.
- * Active streams are all streams that have AVStream.discard < AVDISCARD_ALL.
- *
- * If flags contain AVSEEK_FLAG_BYTE, then all timestamps are in bytes and
- * are the file position (this may not be supported by all demuxers).
- * If flags contain AVSEEK_FLAG_FRAME, then all timestamps are in frames
- * in the stream with stream_index (this may not be supported by all demuxers).
- * Otherwise all timestamps are in units of the stream selected by stream_index
- * or if stream_index is -1, in AV_TIME_BASE units.
- * If flags contain AVSEEK_FLAG_ANY, then non-keyframes are treated as
- * keyframes (this may not be supported by all demuxers).
- *
- * @param stream_index index of the stream which is used as time base reference
- * @param min_ts smallest acceptable timestamp
- * @param ts target timestamp
- * @param max_ts largest acceptable timestamp
- * @param flags flags
- * @return >=0 on success, error code otherwise
- *
- * @note This is part of the new seek API which is still under construction.
- *       Thus do not use this yet. It may change at any time, do not expect
- *       ABI compatibility yet!
- */
-int avformat_seek_file(AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags);
-
-/**
- * Start playing a network-based stream (e.g. RTSP stream) at the
- * current position.
- */
-int av_read_play(AVFormatContext *s);
-
-/**
- * Pause a network-based stream (e.g. RTSP stream).
- *
- * Use av_read_play() to resume it.
- */
-int av_read_pause(AVFormatContext *s);
-
-/**
- * Free a AVFormatContext allocated by av_open_input_stream.
- * @param s context to free
- */
-void av_close_input_stream(AVFormatContext *s);
-
-/**
- * Close a media file (but not its codecs).
- *
- * @param s media file handle
- */
-void av_close_input_file(AVFormatContext *s);
-
-/**
- * Free an AVFormatContext and all its streams.
- * @param s context to free
- */
-void avformat_free_context(AVFormatContext *s);
-
-#if FF_API_NEW_STREAM
-/**
- * Add a new stream to a media file.
- *
- * Can only be called in the read_header() function. If the flag
- * AVFMTCTX_NOHEADER is in the format context, then new streams
- * can be added in read_packet too.
- *
- * @param s media file handle
- * @param id file-format-dependent stream ID
- */
-attribute_deprecated
-AVStream *av_new_stream(AVFormatContext *s, int id);
-#endif
-
-/**
- * Add a new stream to a media file.
- *
- * When demuxing, it is called by the demuxer in read_header(). If the
- * flag AVFMTCTX_NOHEADER is set in s.ctx_flags, then it may also
- * be called in read_packet().
- *
- * When muxing, should be called by the user before avformat_write_header().
- *
- * @param c If non-NULL, the AVCodecContext corresponding to the new stream
- * will be initialized to use this codec. This is needed for e.g. codec-specific
- * defaults to be set, so codec should be provided if it is known.
- *
- * @return newly created stream or NULL on error.
- */
-AVStream *avformat_new_stream(AVFormatContext *s, AVCodec *c);
-
-AVProgram *av_new_program(AVFormatContext *s, int id);
-
-#if FF_API_SET_PTS_INFO
-/**
- * @deprecated this function is not supposed to be called outside of lavf
- */
-attribute_deprecated
-void av_set_pts_info(AVStream *s, int pts_wrap_bits,
-                     unsigned int pts_num, unsigned int pts_den);
-#endif
-
-#define AVSEEK_FLAG_BACKWARD 1 ///< seek backward
-#define AVSEEK_FLAG_BYTE     2 ///< seeking based on position in bytes
-#define AVSEEK_FLAG_ANY      4 ///< seek to any frame, even non-keyframes
-#define AVSEEK_FLAG_FRAME    8 ///< seeking based on frame number
-
-int av_find_default_stream_index(AVFormatContext *s);
-
-/**
- * Get the index for a specific timestamp.
- * @param flags if AVSEEK_FLAG_BACKWARD then the returned index will correspond
- *                 to the timestamp which is <= the requested one, if backward
- *                 is 0, then it will be >=
- *              if AVSEEK_FLAG_ANY seek to any frame, only keyframes otherwise
- * @return < 0 if no such timestamp could be found
- */
-int av_index_search_timestamp(AVStream *st, int64_t timestamp, int flags);
-
-/**
- * Add an index entry into a sorted list. Update the entry if the list
- * already contains it.
- *
- * @param timestamp timestamp in the time base of the given stream
- */
-int av_add_index_entry(AVStream *st, int64_t pos, int64_t timestamp,
-                       int size, int distance, int flags);
-
-#if FF_API_SEEK_PUBLIC
-attribute_deprecated
-int av_seek_frame_binary(AVFormatContext *s, int stream_index,
-                         int64_t target_ts, int flags);
-attribute_deprecated
-void av_update_cur_dts(AVFormatContext *s, AVStream *ref_st, int64_t timestamp);
-attribute_deprecated
-int64_t av_gen_search(AVFormatContext *s, int stream_index,
-                      int64_t target_ts, int64_t pos_min,
-                      int64_t pos_max, int64_t pos_limit,
-                      int64_t ts_min, int64_t ts_max,
-                      int flags, int64_t *ts_ret,
-                      int64_t (*read_timestamp)(struct AVFormatContext *, int , int64_t *, int64_t ));
-#endif
-
-/**
- * media file output
- */
-#if FF_API_FORMAT_PARAMETERS
-/**
- * @deprecated pass the options to avformat_write_header directly.
- */
-attribute_deprecated int av_set_parameters(AVFormatContext *s, AVFormatParameters *ap);
-#endif
-
-/**
- * Split a URL string into components.
- *
- * The pointers to buffers for storing individual components may be null,
- * in order to ignore that component. Buffers for components not found are
- * set to empty strings. If the port is not found, it is set to a negative
- * value.
- *
- * @param proto the buffer for the protocol
- * @param proto_size the size of the proto buffer
- * @param authorization the buffer for the authorization
- * @param authorization_size the size of the authorization buffer
- * @param hostname the buffer for the host name
- * @param hostname_size the size of the hostname buffer
- * @param port_ptr a pointer to store the port number in
- * @param path the buffer for the path
- * @param path_size the size of the path buffer
- * @param url the URL to split
- */
-void av_url_split(char *proto,         int proto_size,
-                  char *authorization, int authorization_size,
-                  char *hostname,      int hostname_size,
-                  int *port_ptr,
-                  char *path,          int path_size,
-                  const char *url);
-
-/**
- * Allocate the stream private data and write the stream header to
- * an output media file.
- *
- * @param s Media file handle, must be allocated with avformat_alloc_context().
- *          Its oformat field must be set to the desired output format;
- *          Its pb field must be set to an already openened AVIOContext.
- * @param options  An AVDictionary filled with AVFormatContext and muxer-private options.
- *                 On return this parameter will be destroyed and replaced with a dict containing
- *                 options that were not found. May be NULL.
- *
- * @return 0 on success, negative AVERROR on failure.
- *
- * @see av_opt_find, av_dict_set, avio_open, av_oformat_next.
- */
-int avformat_write_header(AVFormatContext *s, AVDictionary **options);
-
-#if FF_API_FORMAT_PARAMETERS
-/**
- * Allocate the stream private data and write the stream header to an
- * output media file.
- * @note: this sets stream time-bases, if possible to stream->codec->time_base
- * but for some formats it might also be some other time base
- *
- * @param s media file handle
- * @return 0 if OK, AVERROR_xxx on error
- *
- * @deprecated use avformat_write_header.
- */
-attribute_deprecated int av_write_header(AVFormatContext *s);
-#endif
-
-/**
- * Write a packet to an output media file.
- *
- * The packet shall contain one audio or video frame.
- * The packet must be correctly interleaved according to the container
- * specification, if not then av_interleaved_write_frame must be used.
- *
- * @param s media file handle
- * @param pkt The packet, which contains the stream_index, buf/buf_size,
-              dts/pts, ...
- * @return < 0 on error, = 0 if OK, 1 if end of stream wanted
- */
-int av_write_frame(AVFormatContext *s, AVPacket *pkt);
-
-/**
- * Write a packet to an output media file ensuring correct interleaving.
- *
- * The packet must contain one audio or video frame.
- * If the packets are already correctly interleaved, the application should
- * call av_write_frame() instead as it is slightly faster. It is also important
- * to keep in mind that completely non-interleaved input will need huge amounts
- * of memory to interleave with this, so it is preferable to interleave at the
- * demuxer level.
- *
- * @param s media file handle
- * @param pkt The packet, which contains the stream_index, buf/buf_size,
-              dts/pts, ...
- * @return < 0 on error, = 0 if OK, 1 if end of stream wanted
- */
-int av_interleaved_write_frame(AVFormatContext *s, AVPacket *pkt);
-
-/**
- * Interleave a packet per dts in an output media file.
- *
- * Packets with pkt->destruct == av_destruct_packet will be freed inside this
- * function, so they cannot be used after it. Note that calling av_free_packet()
- * on them is still safe.
- *
- * @param s media file handle
- * @param out the interleaved packet will be output here
- * @param pkt the input packet
- * @param flush 1 if no further packets are available as input and all
- *              remaining packets should be output
- * @return 1 if a packet was output, 0 if no packet could be output,
- *         < 0 if an error occurred
- */
-int av_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out,
-                                 AVPacket *pkt, int flush);
-
-/**
- * Write the stream trailer to an output media file and free the
- * file private data.
- *
- * May only be called after a successful call to av_write_header.
- *
- * @param s media file handle
- * @return 0 if OK, AVERROR_xxx on error
- */
-int av_write_trailer(AVFormatContext *s);
-
-/**
- * Get timing information for the data currently output.
- * The exact meaning of "currently output" depends on the format.
- * It is mostly relevant for devices that have an internal buffer and/or
- * work in real time.
- * @param s          media file handle
- * @param stream     stream in the media file
- * @param dts[out]   DTS of the last packet output for the stream, in stream
- *                   time_base units
- * @param wall[out]  absolute time when that packet whas output,
- *                   in microsecond
- * @return  0 if OK, AVERROR(ENOSYS) if the format does not support it
- * Note: some formats or devices may not allow to measure dts and wall
- * atomically.
- */
-int av_get_output_timestamp(struct AVFormatContext *s, int stream,
-                            int64_t *dts, int64_t *wall);
-
-#if FF_API_DUMP_FORMAT
-/**
- * @deprecated Deprecated in favor of av_dump_format().
- */
-attribute_deprecated void dump_format(AVFormatContext *ic,
-                                      int index,
-                                      const char *url,
-                                      int is_output);
-#endif
-
-void av_dump_format(AVFormatContext *ic,
-                    int index,
-                    const char *url,
-                    int is_output);
-
-#if FF_API_PARSE_DATE
-/**
- * Parse datestr and return a corresponding number of microseconds.
- *
- * @param datestr String representing a date or a duration.
- * See av_parse_time() for the syntax of the provided string.
- * @deprecated in favor of av_parse_time()
- */
-attribute_deprecated
-int64_t parse_date(const char *datestr, int duration);
-#endif
-
-/**
- * Get the current time in microseconds.
- */
-int64_t av_gettime(void);
-
-#if FF_API_FIND_INFO_TAG
-/**
- * @deprecated use av_find_info_tag in libavutil instead.
- */
-attribute_deprecated int find_info_tag(char *arg, int arg_size, const char *tag1, const char *info);
-#endif
-
-/**
- * Return in 'buf' the path with '%d' replaced by a number.
- *
- * Also handles the '%0nd' format where 'n' is the total number
- * of digits and '%%'.
- *
- * @param buf destination buffer
- * @param buf_size destination buffer size
- * @param path numbered sequence string
- * @param number frame number
- * @return 0 if OK, -1 on format error
- */
-int av_get_frame_filename(char *buf, int buf_size,
-                          const char *path, int number);
-
-/**
- * Check whether filename actually is a numbered sequence generator.
- *
- * @param filename possible numbered sequence string
- * @return 1 if a valid numbered sequence string, 0 otherwise
- */
-int av_filename_number_test(const char *filename);
-
-/**
- * Generate an SDP for an RTP session.
- *
- * @param ac array of AVFormatContexts describing the RTP streams. If the
- *           array is composed by only one context, such context can contain
- *           multiple AVStreams (one AVStream per RTP stream). Otherwise,
- *           all the contexts in the array (an AVCodecContext per RTP stream)
- *           must contain only one AVStream.
- * @param n_files number of AVCodecContexts contained in ac
- * @param buf buffer where the SDP will be stored (must be allocated by
- *            the caller)
- * @param size the size of the buffer
- * @return 0 if OK, AVERROR_xxx on error
- */
-int av_sdp_create(AVFormatContext *ac[], int n_files, char *buf, int size);
-
-#if FF_API_SDP_CREATE
-attribute_deprecated int avf_sdp_create(AVFormatContext *ac[], int n_files, char *buff, int size);
-#endif
-
-/**
- * Return a positive value if the given filename has one of the given
- * extensions, 0 otherwise.
- *
- * @param extensions a comma-separated list of filename extensions
- */
-int av_match_ext(const char *filename, const char *extensions);
-
-/**
- * Test if the given container can store a codec.
- *
- * @param std_compliance standards compliance level, one of FF_COMPLIANCE_*
- *
- * @return 1 if codec with ID codec_id can be stored in ofmt, 0 if it cannot.
- *         A negative number if this information is not available.
- */
-int avformat_query_codec(AVOutputFormat *ofmt, enum CodecID codec_id, int std_compliance);
-
-/**
- * Get the AVClass for AVFormatContext. It can be used in combination with
- * AV_OPT_SEARCH_FAKE_OBJ for examining options.
- *
- * @see av_opt_find().
- */
-const AVClass *avformat_get_class(void);
-
-/**
- * Do global initialization of network components. This is optional,
- * but recommended, since it avoids the overhead of implicitly
- * doing the setup for each session.
- *
- * Calling this function will become mandatory if using network
- * protocols at some major version bump.
- */
-int avformat_network_init(void);
-
-/**
- * Undo the initialization done by avformat_network_init.
- */
-int avformat_network_deinit(void);
-
-#endif /* AVFORMAT_AVFORMAT_H */
diff --git a/dependencies64/ffmpeg/include/libavformat/avio.h b/dependencies64/ffmpeg/include/libavformat/avio.h
deleted file mode 100644 (file)
index 88fe157..0000000
+++ /dev/null
@@ -1,684 +0,0 @@
-/*
- * copyright (c) 2001 Fabrice Bellard
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-#ifndef AVFORMAT_AVIO_H
-#define AVFORMAT_AVIO_H
-
-/**
- * @file
- * Buffered I/O operations
- */
-
-#include <stdint.h>
-
-#include "libavutil/common.h"
-#include "libavutil/dict.h"
-#include "libavutil/log.h"
-
-#include "libavformat/version.h"
-
-
-#define AVIO_SEEKABLE_NORMAL 0x0001 /**< Seeking works like for a local file */
-
-/**
- * Callback for checking whether to abort blocking functions.
- * AVERROR_EXIT is returned in this case by the interrupted
- * function. During blocking operations, callback is called with
- * opaque as parameter. If the callback returns 1, the
- * blocking operation will be aborted.
- *
- * No members can be added to this struct without a major bump, if
- * new elements have been added after this struct in AVFormatContext
- * or AVIOContext.
- */
-typedef struct {
-    int (*callback)(void*);
-    void *opaque;
-} AVIOInterruptCB;
-
-/**
- * Bytestream IO Context.
- * New fields can be added to the end with minor version bumps.
- * Removal, reordering and changes to existing fields require a major
- * version bump.
- * sizeof(AVIOContext) must not be used outside libav*.
- *
- * @note None of the function pointers in AVIOContext should be called
- *       directly, they should only be set by the client application
- *       when implementing custom I/O. Normally these are set to the
- *       function pointers specified in avio_alloc_context()
- */
-typedef struct {
-#if !FF_API_OLD_AVIO
-    /**
-     * A class for private options.
-     *
-     * If this AVIOContext is created by avio_open2(), av_class is set and
-     * passes the options down to protocols.
-     *
-     * If this AVIOContext is manually allocated, then av_class may be set by
-     * the caller.
-     *
-     * warning -- this field can be NULL, be sure to not pass this AVIOContext
-     * to any av_opt_* functions in that case.
-     */
-    AVClass *av_class;
-#endif
-    unsigned char *buffer;  /**< Start of the buffer. */
-    int buffer_size;        /**< Maximum buffer size */
-    unsigned char *buf_ptr; /**< Current position in the buffer */
-    unsigned char *buf_end; /**< End of the data, may be less than
-                                 buffer+buffer_size if the read function returned
-                                 less data than requested, e.g. for streams where
-                                 no more data has been received yet. */
-    void *opaque;           /**< A private pointer, passed to the read/write/seek/...
-                                 functions. */
-    int (*read_packet)(void *opaque, uint8_t *buf, int buf_size);
-    int (*write_packet)(void *opaque, uint8_t *buf, int buf_size);
-    int64_t (*seek)(void *opaque, int64_t offset, int whence);
-    int64_t pos;            /**< position in the file of the current buffer */
-    int must_flush;         /**< true if the next seek should flush */
-    int eof_reached;        /**< true if eof reached */
-    int write_flag;         /**< true if open for writing */
-#if FF_API_OLD_AVIO
-    attribute_deprecated int is_streamed;
-#endif
-    int max_packet_size;
-    unsigned long checksum;
-    unsigned char *checksum_ptr;
-    unsigned long (*update_checksum)(unsigned long checksum, const uint8_t *buf, unsigned int size);
-    int error;              /**< contains the error code or 0 if no error happened */
-    /**
-     * Pause or resume playback for network streaming protocols - e.g. MMS.
-     */
-    int (*read_pause)(void *opaque, int pause);
-    /**
-     * Seek to a given timestamp in stream with the specified stream_index.
-     * Needed for some network streaming protocols which don't support seeking
-     * to byte position.
-     */
-    int64_t (*read_seek)(void *opaque, int stream_index,
-                         int64_t timestamp, int flags);
-    /**
-     * A combination of AVIO_SEEKABLE_ flags or 0 when the stream is not seekable.
-     */
-    int seekable;
-} AVIOContext;
-
-/* unbuffered I/O */
-
-#if FF_API_OLD_AVIO
-/**
- * URL Context.
- * New fields can be added to the end with minor version bumps.
- * Removal, reordering and changes to existing fields require a major
- * version bump.
- * sizeof(URLContext) must not be used outside libav*.
- * @deprecated This struct will be made private
- */
-typedef struct URLContext {
-    const AVClass *av_class; ///< information for av_log(). Set by url_open().
-    struct URLProtocol *prot;
-    int flags;
-    int is_streamed;  /**< true if streamed (no seek possible), default = false */
-    int max_packet_size;  /**< if non zero, the stream is packetized with this max packet size */
-    void *priv_data;
-    char *filename; /**< specified URL */
-    int is_connected;
-    AVIOInterruptCB interrupt_callback;
-} URLContext;
-
-#define URL_PROTOCOL_FLAG_NESTED_SCHEME 1 /*< The protocol name can be the first part of a nested protocol scheme */
-
-/**
- * @deprecated This struct is to be made private. Use the higher-level
- *             AVIOContext-based API instead.
- */
-typedef struct URLProtocol {
-    const char *name;
-    int (*url_open)(URLContext *h, const char *url, int flags);
-    int (*url_read)(URLContext *h, unsigned char *buf, int size);
-    int (*url_write)(URLContext *h, const unsigned char *buf, int size);
-    int64_t (*url_seek)(URLContext *h, int64_t pos, int whence);
-    int (*url_close)(URLContext *h);
-    struct URLProtocol *next;
-    int (*url_read_pause)(URLContext *h, int pause);
-    int64_t (*url_read_seek)(URLContext *h, int stream_index,
-                             int64_t timestamp, int flags);
-    int (*url_get_file_handle)(URLContext *h);
-    int priv_data_size;
-    const AVClass *priv_data_class;
-    int flags;
-    int (*url_check)(URLContext *h, int mask);
-} URLProtocol;
-
-typedef struct URLPollEntry {
-    URLContext *handle;
-    int events;
-    int revents;
-} URLPollEntry;
-
-/* not implemented */
-attribute_deprecated int url_poll(URLPollEntry *poll_table, int n, int timeout);
-
-/**
- * @name URL open modes
- * The flags argument to url_open and cosins must be one of the following
- * constants, optionally ORed with other flags.
- * @{
- */
-#define URL_RDONLY 1  /**< read-only */
-#define URL_WRONLY 2  /**< write-only */
-#define URL_RDWR   (URL_RDONLY|URL_WRONLY)  /**< read-write */
-/**
- * @}
- */
-
-/**
- * Use non-blocking mode.
- * If this flag is set, operations on the context will return
- * AVERROR(EAGAIN) if they can not be performed immediately.
- * If this flag is not set, operations on the context will never return
- * AVERROR(EAGAIN).
- * Note that this flag does not affect the opening/connecting of the
- * context. Connecting a protocol will always block if necessary (e.g. on
- * network protocols) but never hang (e.g. on busy devices).
- * Warning: non-blocking protocols is work-in-progress; this flag may be
- * silently ignored.
- */
-#define URL_FLAG_NONBLOCK 4
-
-typedef int URLInterruptCB(void);
-extern URLInterruptCB *url_interrupt_cb;
-
-/**
- * @defgroup old_url_funcs Old url_* functions
- * The following functions are deprecated. Use the buffered API based on #AVIOContext instead.
- * @{
- */
-attribute_deprecated int url_open_protocol (URLContext **puc, struct URLProtocol *up,
-                                            const char *url, int flags);
-attribute_deprecated int url_alloc(URLContext **h, const char *url, int flags);
-attribute_deprecated int url_connect(URLContext *h);
-attribute_deprecated int url_open(URLContext **h, const char *url, int flags);
-attribute_deprecated int url_read(URLContext *h, unsigned char *buf, int size);
-attribute_deprecated int url_read_complete(URLContext *h, unsigned char *buf, int size);
-attribute_deprecated int url_write(URLContext *h, const unsigned char *buf, int size);
-attribute_deprecated int64_t url_seek(URLContext *h, int64_t pos, int whence);
-attribute_deprecated int url_close(URLContext *h);
-attribute_deprecated int64_t url_filesize(URLContext *h);
-attribute_deprecated int url_get_file_handle(URLContext *h);
-attribute_deprecated int url_get_max_packet_size(URLContext *h);
-attribute_deprecated void url_get_filename(URLContext *h, char *buf, int buf_size);
-attribute_deprecated int av_url_read_pause(URLContext *h, int pause);
-attribute_deprecated int64_t av_url_read_seek(URLContext *h, int stream_index,
-                                              int64_t timestamp, int flags);
-attribute_deprecated void url_set_interrupt_cb(int (*interrupt_cb)(void));
-
-/**
- * returns the next registered protocol after the given protocol (the first if
- * NULL is given), or NULL if protocol is the last one.
- */
-URLProtocol *av_protocol_next(URLProtocol *p);
-
-/**
- * Register the URLProtocol protocol.
- *
- * @param size the size of the URLProtocol struct referenced
- */
-attribute_deprecated int av_register_protocol2(URLProtocol *protocol, int size);
-/**
- * @}
- */
-
-
-typedef attribute_deprecated AVIOContext ByteIOContext;
-
-attribute_deprecated int init_put_byte(AVIOContext *s,
-                  unsigned char *buffer,
-                  int buffer_size,
-                  int write_flag,
-                  void *opaque,
-                  int (*read_packet)(void *opaque, uint8_t *buf, int buf_size),
-                  int (*write_packet)(void *opaque, uint8_t *buf, int buf_size),
-                  int64_t (*seek)(void *opaque, int64_t offset, int whence));
-attribute_deprecated AVIOContext *av_alloc_put_byte(
-                  unsigned char *buffer,
-                  int buffer_size,
-                  int write_flag,
-                  void *opaque,
-                  int (*read_packet)(void *opaque, uint8_t *buf, int buf_size),
-                  int (*write_packet)(void *opaque, uint8_t *buf, int buf_size),
-                  int64_t (*seek)(void *opaque, int64_t offset, int whence));
-
-/**
- * @defgroup old_avio_funcs Old put_/get_*() functions
- * The following functions are deprecated. Use the "avio_"-prefixed functions instead.
- * @{
- */
-attribute_deprecated int          get_buffer(AVIOContext *s, unsigned char *buf, int size);
-attribute_deprecated int          get_partial_buffer(AVIOContext *s, unsigned char *buf, int size);
-attribute_deprecated int          get_byte(AVIOContext *s);
-attribute_deprecated unsigned int get_le16(AVIOContext *s);
-attribute_deprecated unsigned int get_le24(AVIOContext *s);
-attribute_deprecated unsigned int get_le32(AVIOContext *s);
-attribute_deprecated uint64_t     get_le64(AVIOContext *s);
-attribute_deprecated unsigned int get_be16(AVIOContext *s);
-attribute_deprecated unsigned int get_be24(AVIOContext *s);
-attribute_deprecated unsigned int get_be32(AVIOContext *s);
-attribute_deprecated uint64_t     get_be64(AVIOContext *s);
-
-attribute_deprecated void         put_byte(AVIOContext *s, int b);
-attribute_deprecated void         put_nbyte(AVIOContext *s, int b, int count);
-attribute_deprecated void         put_buffer(AVIOContext *s, const unsigned char *buf, int size);
-attribute_deprecated void         put_le64(AVIOContext *s, uint64_t val);
-attribute_deprecated void         put_be64(AVIOContext *s, uint64_t val);
-attribute_deprecated void         put_le32(AVIOContext *s, unsigned int val);
-attribute_deprecated void         put_be32(AVIOContext *s, unsigned int val);
-attribute_deprecated void         put_le24(AVIOContext *s, unsigned int val);
-attribute_deprecated void         put_be24(AVIOContext *s, unsigned int val);
-attribute_deprecated void         put_le16(AVIOContext *s, unsigned int val);
-attribute_deprecated void         put_be16(AVIOContext *s, unsigned int val);
-attribute_deprecated void         put_tag(AVIOContext *s, const char *tag);
-/**
- * @}
- */
-
-attribute_deprecated int     av_url_read_fpause(AVIOContext *h,    int pause);
-attribute_deprecated int64_t av_url_read_fseek (AVIOContext *h,    int stream_index,
-                                                int64_t timestamp, int flags);
-
-/**
- * @defgroup old_url_f_funcs Old url_f* functions
- * The following functions are deprecated, use the "avio_"-prefixed functions instead.
- * @{
- */
-attribute_deprecated int url_fopen( AVIOContext **s, const char *url, int flags);
-attribute_deprecated int url_fclose(AVIOContext *s);
-attribute_deprecated int64_t url_fseek(AVIOContext *s, int64_t offset, int whence);
-attribute_deprecated int url_fskip(AVIOContext *s, int64_t offset);
-attribute_deprecated int64_t url_ftell(AVIOContext *s);
-attribute_deprecated int64_t url_fsize(AVIOContext *s);
-#define URL_EOF (-1)
-attribute_deprecated int url_fgetc(AVIOContext *s);
-attribute_deprecated int url_setbufsize(AVIOContext *s, int buf_size);
-attribute_deprecated int url_fprintf(AVIOContext *s, const char *fmt, ...) av_printf_format(2, 3);
-attribute_deprecated void put_flush_packet(AVIOContext *s);
-attribute_deprecated int url_open_dyn_buf(AVIOContext **s);
-attribute_deprecated int url_open_dyn_packet_buf(AVIOContext **s, int max_packet_size);
-attribute_deprecated int url_close_dyn_buf(AVIOContext *s, uint8_t **pbuffer);
-attribute_deprecated int url_fdopen(AVIOContext **s, URLContext *h);
-/**
- * @}
- */
-
-attribute_deprecated int url_ferror(AVIOContext *s);
-
-attribute_deprecated int udp_set_remote_url(URLContext *h, const char *uri);
-attribute_deprecated int udp_get_local_port(URLContext *h);
-
-attribute_deprecated void init_checksum(AVIOContext *s,
-                   unsigned long (*update_checksum)(unsigned long c, const uint8_t *p, unsigned int len),
-                   unsigned long checksum);
-attribute_deprecated unsigned long get_checksum(AVIOContext *s);
-attribute_deprecated void put_strz(AVIOContext *s, const char *buf);
-/** @note unlike fgets, the EOL character is not returned and a whole
-    line is parsed. return NULL if first char read was EOF */
-attribute_deprecated char *url_fgets(AVIOContext *s, char *buf, int buf_size);
-/**
- * @deprecated use avio_get_str instead
- */
-attribute_deprecated char *get_strz(AVIOContext *s, char *buf, int maxlen);
-/**
- * @deprecated Use AVIOContext.seekable field directly.
- */
-attribute_deprecated static inline int url_is_streamed(AVIOContext *s)
-{
-    return !s->seekable;
-}
-attribute_deprecated URLContext *url_fileno(AVIOContext *s);
-
-/**
- * @deprecated use AVIOContext.max_packet_size directly.
- */
-attribute_deprecated int url_fget_max_packet_size(AVIOContext *s);
-
-attribute_deprecated int url_open_buf(AVIOContext **s, uint8_t *buf, int buf_size, int flags);
-
-/** return the written or read size */
-attribute_deprecated int url_close_buf(AVIOContext *s);
-
-/**
- * Return a non-zero value if the resource indicated by url
- * exists, 0 otherwise.
- * @deprecated Use avio_check instead.
- */
-attribute_deprecated int url_exist(const char *url);
-#endif // FF_API_OLD_AVIO
-
-/**
- * Return AVIO_FLAG_* access flags corresponding to the access permissions
- * of the resource in url, or a negative value corresponding to an
- * AVERROR code in case of failure. The returned access flags are
- * masked by the value in flags.
- *
- * @note This function is intrinsically unsafe, in the sense that the
- * checked resource may change its existence or permission status from
- * one call to another. Thus you should not trust the returned value,
- * unless you are sure that no other processes are accessing the
- * checked resource.
- */
-int avio_check(const char *url, int flags);
-
-#if FF_API_OLD_INTERRUPT_CB
-/**
- * The callback is called in blocking functions to test regulary if
- * asynchronous interruption is needed. AVERROR_EXIT is returned
- * in this case by the interrupted function. 'NULL' means no interrupt
- * callback is given.
- * @deprecated Use interrupt_callback in AVFormatContext/avio_open2
- *             instead.
- */
-attribute_deprecated void avio_set_interrupt_cb(int (*interrupt_cb)(void));
-#endif
-
-/**
- * Allocate and initialize an AVIOContext for buffered I/O. It must be later
- * freed with av_free().
- *
- * @param buffer Memory block for input/output operations via AVIOContext.
- *        The buffer must be allocated with av_malloc() and friends.
- * @param buffer_size The buffer size is very important for performance.
- *        For protocols with fixed blocksize it should be set to this blocksize.
- *        For others a typical size is a cache page, e.g. 4kb.
- * @param write_flag Set to 1 if the buffer should be writable, 0 otherwise.
- * @param opaque An opaque pointer to user-specific data.
- * @param read_packet  A function for refilling the buffer, may be NULL.
- * @param write_packet A function for writing the buffer contents, may be NULL.
- * @param seek A function for seeking to specified byte position, may be NULL.
- *
- * @return Allocated AVIOContext or NULL on failure.
- */
-AVIOContext *avio_alloc_context(
-                  unsigned char *buffer,
-                  int buffer_size,
-                  int write_flag,
-                  void *opaque,
-                  int (*read_packet)(void *opaque, uint8_t *buf, int buf_size),
-                  int (*write_packet)(void *opaque, uint8_t *buf, int buf_size),
-                  int64_t (*seek)(void *opaque, int64_t offset, int whence));
-
-void avio_w8(AVIOContext *s, int b);
-void avio_write(AVIOContext *s, const unsigned char *buf, int size);
-void avio_wl64(AVIOContext *s, uint64_t val);
-void avio_wb64(AVIOContext *s, uint64_t val);
-void avio_wl32(AVIOContext *s, unsigned int val);
-void avio_wb32(AVIOContext *s, unsigned int val);
-void avio_wl24(AVIOContext *s, unsigned int val);
-void avio_wb24(AVIOContext *s, unsigned int val);
-void avio_wl16(AVIOContext *s, unsigned int val);
-void avio_wb16(AVIOContext *s, unsigned int val);
-
-/**
- * Write a NULL-terminated string.
- * @return number of bytes written.
- */
-int avio_put_str(AVIOContext *s, const char *str);
-
-/**
- * Convert an UTF-8 string to UTF-16LE and write it.
- * @return number of bytes written.
- */
-int avio_put_str16le(AVIOContext *s, const char *str);
-
-/**
- * Passing this as the "whence" parameter to a seek function causes it to
- * return the filesize without seeking anywhere. Supporting this is optional.
- * If it is not supported then the seek function will return <0.
- */
-#define AVSEEK_SIZE 0x10000
-
-/**
- * Oring this flag as into the "whence" parameter to a seek function causes it to
- * seek by any means (like reopening and linear reading) or other normally unreasonble
- * means that can be extreemly slow.
- * This may be ignored by the seek code.
- */
-#define AVSEEK_FORCE 0x20000
-
-/**
- * fseek() equivalent for AVIOContext.
- * @return new position or AVERROR.
- */
-int64_t avio_seek(AVIOContext *s, int64_t offset, int whence);
-
-/**
- * Skip given number of bytes forward
- * @return new position or AVERROR.
- */
-int64_t avio_skip(AVIOContext *s, int64_t offset);
-
-/**
- * ftell() equivalent for AVIOContext.
- * @return position or AVERROR.
- */
-static av_always_inline int64_t avio_tell(AVIOContext *s)
-{
-    return avio_seek(s, 0, SEEK_CUR);
-}
-
-/**
- * Get the filesize.
- * @return filesize or AVERROR
- */
-int64_t avio_size(AVIOContext *s);
-
-/**
- * feof() equivalent for AVIOContext.
- * @return non zero if and only if end of file
- */
-int url_feof(AVIOContext *s);
-
-/** @warning currently size is limited */
-int avio_printf(AVIOContext *s, const char *fmt, ...) av_printf_format(2, 3);
-
-void avio_flush(AVIOContext *s);
-
-
-/**
- * Read size bytes from AVIOContext into buf.
- * @return number of bytes read or AVERROR
- */
-int avio_read(AVIOContext *s, unsigned char *buf, int size);
-
-/**
- * @name Functions for reading from AVIOContext
- * @{
- *
- * @note return 0 if EOF, so you cannot use it if EOF handling is
- *       necessary
- */
-int          avio_r8  (AVIOContext *s);
-unsigned int avio_rl16(AVIOContext *s);
-unsigned int avio_rl24(AVIOContext *s);
-unsigned int avio_rl32(AVIOContext *s);
-uint64_t     avio_rl64(AVIOContext *s);
-unsigned int avio_rb16(AVIOContext *s);
-unsigned int avio_rb24(AVIOContext *s);
-unsigned int avio_rb32(AVIOContext *s);
-uint64_t     avio_rb64(AVIOContext *s);
-/**
- * @}
- */
-
-/**
- * Read a string from pb into buf. The reading will terminate when either
- * a NULL character was encountered, maxlen bytes have been read, or nothing
- * more can be read from pb. The result is guaranteed to be NULL-terminated, it
- * will be truncated if buf is too small.
- * Note that the string is not interpreted or validated in any way, it
- * might get truncated in the middle of a sequence for multi-byte encodings.
- *
- * @return number of bytes read (is always <= maxlen).
- * If reading ends on EOF or error, the return value will be one more than
- * bytes actually read.
- */
-int avio_get_str(AVIOContext *pb, int maxlen, char *buf, int buflen);
-
-/**
- * Read a UTF-16 string from pb and convert it to UTF-8.
- * The reading will terminate when either a null or invalid character was
- * encountered or maxlen bytes have been read.
- * @return number of bytes read (is always <= maxlen)
- */
-int avio_get_str16le(AVIOContext *pb, int maxlen, char *buf, int buflen);
-int avio_get_str16be(AVIOContext *pb, int maxlen, char *buf, int buflen);
-
-
-/**
- * @name URL open modes
- * The flags argument to avio_open must be one of the following
- * constants, optionally ORed with other flags.
- * @{
- */
-#define AVIO_FLAG_READ  1                                      /**< read-only */
-#define AVIO_FLAG_WRITE 2                                      /**< write-only */
-#define AVIO_FLAG_READ_WRITE (AVIO_FLAG_READ|AVIO_FLAG_WRITE)  /**< read-write pseudo flag */
-/**
- * @}
- */
-
-/**
- * Use non-blocking mode.
- * If this flag is set, operations on the context will return
- * AVERROR(EAGAIN) if they can not be performed immediately.
- * If this flag is not set, operations on the context will never return
- * AVERROR(EAGAIN).
- * Note that this flag does not affect the opening/connecting of the
- * context. Connecting a protocol will always block if necessary (e.g. on
- * network protocols) but never hang (e.g. on busy devices).
- * Warning: non-blocking protocols is work-in-progress; this flag may be
- * silently ignored.
- */
-#define AVIO_FLAG_NONBLOCK 8
-
-/**
- * Create and initialize a AVIOContext for accessing the
- * resource indicated by url.
- * @note When the resource indicated by url has been opened in
- * read+write mode, the AVIOContext can be used only for writing.
- *
- * @param s Used to return the pointer to the created AVIOContext.
- * In case of failure the pointed to value is set to NULL.
- * @param flags flags which control how the resource indicated by url
- * is to be opened
- * @return 0 in case of success, a negative value corresponding to an
- * AVERROR code in case of failure
- */
-int avio_open(AVIOContext **s, const char *url, int flags);
-
-/**
- * Create and initialize a AVIOContext for accessing the
- * resource indicated by url.
- * @note When the resource indicated by url has been opened in
- * read+write mode, the AVIOContext can be used only for writing.
- *
- * @param s Used to return the pointer to the created AVIOContext.
- * In case of failure the pointed to value is set to NULL.
- * @param flags flags which control how the resource indicated by url
- * is to be opened
- * @param int_cb an interrupt callback to be used at the protocols level
- * @param options  A dictionary filled with protocol-private options. On return
- * this parameter will be destroyed and replaced with a dict containing options
- * that were not found. May be NULL.
- * @return 0 in case of success, a negative value corresponding to an
- * AVERROR code in case of failure
- */
-int avio_open2(AVIOContext **s, const char *url, int flags,
-               const AVIOInterruptCB *int_cb, AVDictionary **options);
-
-/**
- * Close the resource accessed by the AVIOContext s and free it.
- * This function can only be used if s was opened by avio_open().
- *
- * @return 0 on success, an AVERROR < 0 on error.
- */
-int avio_close(AVIOContext *s);
-
-/**
- * Open a write only memory stream.
- *
- * @param s new IO context
- * @return zero if no error.
- */
-int avio_open_dyn_buf(AVIOContext **s);
-
-/**
- * Return the written size and a pointer to the buffer. The buffer
- * must be freed with av_free().
- * Padding of FF_INPUT_BUFFER_PADDING_SIZE is added to the buffer.
- *
- * @param s IO context
- * @param pbuffer pointer to a byte buffer
- * @return the length of the byte buffer
- */
-int avio_close_dyn_buf(AVIOContext *s, uint8_t **pbuffer);
-
-/**
- * Iterate through names of available protocols.
- * @note it is recommanded to use av_protocol_next() instead of this
- *
- * @param opaque A private pointer representing current protocol.
- *        It must be a pointer to NULL on first iteration and will
- *        be updated by successive calls to avio_enum_protocols.
- * @param output If set to 1, iterate over output protocols,
- *               otherwise over input protocols.
- *
- * @return A static string containing the name of current protocol or NULL
- */
-const char *avio_enum_protocols(void **opaque, int output);
-
-/**
- * Pause and resume playing - only meaningful if using a network streaming
- * protocol (e.g. MMS).
- * @param pause 1 for pause, 0 for resume
- */
-int     avio_pause(AVIOContext *h, int pause);
-
-/**
- * Seek to a given timestamp relative to some component stream.
- * Only meaningful if using a network streaming protocol (e.g. MMS.).
- * @param stream_index The stream index that the timestamp is relative to.
- *        If stream_index is (-1) the timestamp should be in AV_TIME_BASE
- *        units from the beginning of the presentation.
- *        If a stream_index >= 0 is used and the protocol does not support
- *        seeking based on component streams, the call will fail with ENOTSUP.
- * @param timestamp timestamp in AVStream.time_base units
- *        or if there is no stream specified then in AV_TIME_BASE units.
- * @param flags Optional combination of AVSEEK_FLAG_BACKWARD, AVSEEK_FLAG_BYTE
- *        and AVSEEK_FLAG_ANY. The protocol may silently ignore
- *        AVSEEK_FLAG_BACKWARD and AVSEEK_FLAG_ANY, but AVSEEK_FLAG_BYTE will
- *        fail with ENOTSUP if used and not supported.
- * @return >= 0 on success
- * @see AVInputFormat::read_seek
- */
-int64_t avio_seek_time(AVIOContext *h, int stream_index,
-                       int64_t timestamp, int flags);
-
-#endif /* AVFORMAT_AVIO_H */
diff --git a/dependencies64/ffmpeg/include/libavformat/version.h b/dependencies64/ffmpeg/include/libavformat/version.h
deleted file mode 100644 (file)
index 844cd64..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Version macros.
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVFORMAT_VERSION_H
-#define AVFORMAT_VERSION_H
-
-#include "libavutil/avutil.h"
-
-#define LIBAVFORMAT_VERSION_MAJOR 53
-#define LIBAVFORMAT_VERSION_MINOR 24
-#define LIBAVFORMAT_VERSION_MICRO  0
-
-#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
-                                               LIBAVFORMAT_VERSION_MINOR, \
-                                               LIBAVFORMAT_VERSION_MICRO)
-#define LIBAVFORMAT_VERSION     AV_VERSION(LIBAVFORMAT_VERSION_MAJOR,   \
-                                           LIBAVFORMAT_VERSION_MINOR,   \
-                                           LIBAVFORMAT_VERSION_MICRO)
-#define LIBAVFORMAT_BUILD       LIBAVFORMAT_VERSION_INT
-
-#define LIBAVFORMAT_IDENT       "Lavf" AV_STRINGIFY(LIBAVFORMAT_VERSION)
-
-/**
- * Those FF_API_* defines are not part of public API.
- * They may change, break or disappear at any time.
- */
-#ifndef FF_API_OLD_METADATA2
-#define FF_API_OLD_METADATA2           (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_READ_SEEK
-#define FF_API_READ_SEEK               (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_OLD_AVIO
-#define FF_API_OLD_AVIO                (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_DUMP_FORMAT
-#define FF_API_DUMP_FORMAT             (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_PARSE_DATE
-#define FF_API_PARSE_DATE              (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_FIND_INFO_TAG
-#define FF_API_FIND_INFO_TAG           (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_PKT_DUMP
-#define FF_API_PKT_DUMP                (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_GUESS_IMG2_CODEC
-#define FF_API_GUESS_IMG2_CODEC        (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_SDP_CREATE
-#define FF_API_SDP_CREATE              (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_ALLOC_OUTPUT_CONTEXT
-#define FF_API_ALLOC_OUTPUT_CONTEXT    (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_FORMAT_PARAMETERS
-#define FF_API_FORMAT_PARAMETERS       (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_FLAG_RTP_HINT
-#define FF_API_FLAG_RTP_HINT           (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_AVSTREAM_QUALITY
-#define FF_API_AVSTREAM_QUALITY        (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_LOOP_INPUT
-#define FF_API_LOOP_INPUT              (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_LOOP_OUTPUT
-#define FF_API_LOOP_OUTPUT             (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_TIMESTAMP
-#define FF_API_TIMESTAMP               (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_FILESIZE
-#define FF_API_FILESIZE                (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_MUXRATE
-#define FF_API_MUXRATE                 (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_RTSP_URL_OPTIONS
-#define FF_API_RTSP_URL_OPTIONS        (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_NEW_STREAM
-#define FF_API_NEW_STREAM              (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_PRELOAD
-#define FF_API_PRELOAD                 (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_STREAM_COPY
-#define FF_API_STREAM_COPY             (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_SEEK_PUBLIC
-#define FF_API_SEEK_PUBLIC             (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_REORDER_PRIVATE
-#define FF_API_REORDER_PRIVATE         (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_OLD_INTERRUPT_CB
-#define FF_API_OLD_INTERRUPT_CB        (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-#ifndef FF_API_SET_PTS_INFO
-#define FF_API_SET_PTS_INFO            (LIBAVFORMAT_VERSION_MAJOR < 54)
-#endif
-
-#endif /* AVFORMAT_VERSION_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/adler32.h b/dependencies64/ffmpeg/include/libavutil/adler32.h
deleted file mode 100644 (file)
index e926ef6..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * copyright (c) 2006 Mans Rullgard
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_ADLER32_H
-#define AVUTIL_ADLER32_H
-
-#include <stdint.h>
-#include "attributes.h"
-
-/**
- * @ingroup lavu_crypto
- * Calculate the Adler32 checksum of a buffer.
- *
- * Passing the return value to a subsequent av_adler32_update() call
- * allows the checksum of multiple buffers to be calculated as though
- * they were concatenated.
- *
- * @param adler initial checksum value
- * @param buf   pointer to input buffer
- * @param len   size of input buffer
- * @return      updated checksum
- */
-unsigned long av_adler32_update(unsigned long adler, const uint8_t *buf,
-                                unsigned int len) av_pure;
-
-#endif /* AVUTIL_ADLER32_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/aes.h b/dependencies64/ffmpeg/include/libavutil/aes.h
deleted file mode 100644 (file)
index bafa4cc..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * copyright (c) 2007 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_AES_H
-#define AVUTIL_AES_H
-
-#include <stdint.h>
-
-/**
- * @defgroup lavu_aes AES
- * @ingroup lavu_crypto
- * @{
- */
-
-extern const int av_aes_size;
-
-struct AVAES;
-
-/**
- * Initialize an AVAES context.
- * @param key_bits 128, 192 or 256
- * @param decrypt 0 for encryption, 1 for decryption
- */
-int av_aes_init(struct AVAES *a, const uint8_t *key, int key_bits, int decrypt);
-
-/**
- * Encrypt or decrypt a buffer using a previously initialized context.
- * @param count number of 16 byte blocks
- * @param dst destination array, can be equal to src
- * @param src source array, can be equal to dst
- * @param iv initialization vector for CBC mode, if NULL then ECB will be used
- * @param decrypt 0 for encryption, 1 for decryption
- */
-void av_aes_crypt(struct AVAES *a, uint8_t *dst, const uint8_t *src, int count, uint8_t *iv, int decrypt);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_AES_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/attributes.h b/dependencies64/ffmpeg/include/libavutil/attributes.h
deleted file mode 100644 (file)
index 0a6fda1..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * Macro definitions for various function/variable attributes
- */
-
-#ifndef AVUTIL_ATTRIBUTES_H
-#define AVUTIL_ATTRIBUTES_H
-
-#ifdef __GNUC__
-#    define AV_GCC_VERSION_AT_LEAST(x,y) (__GNUC__ > x || __GNUC__ == x && __GNUC_MINOR__ >= y)
-#else
-#    define AV_GCC_VERSION_AT_LEAST(x,y) 0
-#endif
-
-#ifndef av_always_inline
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-#    define av_always_inline __attribute__((always_inline)) inline
-#else
-#    define av_always_inline inline
-#endif
-#endif
-
-#ifndef av_noreturn
-#if AV_GCC_VERSION_AT_LEAST(2,5)
-#    define av_noreturn __attribute__((noreturn))
-#else
-#    define av_noreturn
-#endif
-#endif
-
-#ifndef av_noinline
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-#    define av_noinline __attribute__((noinline))
-#else
-#    define av_noinline
-#endif
-#endif
-
-#ifndef av_pure
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-#    define av_pure __attribute__((pure))
-#else
-#    define av_pure
-#endif
-#endif
-
-#ifndef av_const
-#if AV_GCC_VERSION_AT_LEAST(2,6)
-#    define av_const __attribute__((const))
-#else
-#    define av_const
-#endif
-#endif
-
-#ifndef av_cold
-#if AV_GCC_VERSION_AT_LEAST(4,3)
-#    define av_cold __attribute__((cold))
-#else
-#    define av_cold
-#endif
-#endif
-
-#ifndef av_flatten
-#if AV_GCC_VERSION_AT_LEAST(4,1)
-#    define av_flatten __attribute__((flatten))
-#else
-#    define av_flatten
-#endif
-#endif
-
-#ifndef attribute_deprecated
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-#    define attribute_deprecated __attribute__((deprecated))
-#else
-#    define attribute_deprecated
-#endif
-#endif
-
-/**
- * Disable warnings about deprecated features
- * This is useful for sections of code kept for backward compatibility and
- * scheduled for removal.
- */
-#ifndef AV_NOWARN_DEPRECATED
-#if AV_GCC_VERSION_AT_LEAST(4,6)
-#    define AV_NOWARN_DEPRECATED(code) \
-        _Pragma("GCC diagnostic push") \
-        _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") \
-        code \
-        _Pragma("GCC diagnostic pop")
-#else
-#    define AV_NOWARN_DEPRECATED(code) code
-#endif
-#endif
-
-
-#ifndef av_unused
-#if defined(__GNUC__)
-#    define av_unused __attribute__((unused))
-#else
-#    define av_unused
-#endif
-#endif
-
-/**
- * Mark a variable as used and prevent the compiler from optimizing it
- * away.  This is useful for variables accessed only from inline
- * assembler without the compiler being aware.
- */
-#ifndef av_used
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-#    define av_used __attribute__((used))
-#else
-#    define av_used
-#endif
-#endif
-
-#ifndef av_alias
-#if AV_GCC_VERSION_AT_LEAST(3,3)
-#   define av_alias __attribute__((may_alias))
-#else
-#   define av_alias
-#endif
-#endif
-
-#ifndef av_uninit
-#if defined(__GNUC__) && !defined(__INTEL_COMPILER)
-#    define av_uninit(x) x=x
-#else
-#    define av_uninit(x) x
-#endif
-#endif
-
-#ifdef __GNUC__
-#    define av_builtin_constant_p __builtin_constant_p
-#    define av_printf_format(fmtpos, attrpos) __attribute__((__format__(__printf__, fmtpos, attrpos)))
-#else
-#    define av_builtin_constant_p(x) 0
-#    define av_printf_format(fmtpos, attrpos)
-#endif
-
-#endif /* AVUTIL_ATTRIBUTES_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/audioconvert.h b/dependencies64/ffmpeg/include/libavutil/audioconvert.h
deleted file mode 100644 (file)
index d0232d2..0000000
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- * Copyright (c) 2008 Peter Ross
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_AUDIOCONVERT_H
-#define AVUTIL_AUDIOCONVERT_H
-
-#include <stdint.h>
-
-/**
- * @file
- * audio conversion routines
- */
-
-/**
- * @addtogroup lavu_audio
- * @{
- */
-
-/**
- * @defgroup channel_masks Audio channel masks
- * @{
- */
-#define AV_CH_FRONT_LEFT             0x00000001
-#define AV_CH_FRONT_RIGHT            0x00000002
-#define AV_CH_FRONT_CENTER           0x00000004
-#define AV_CH_LOW_FREQUENCY          0x00000008
-#define AV_CH_BACK_LEFT              0x00000010
-#define AV_CH_BACK_RIGHT             0x00000020
-#define AV_CH_FRONT_LEFT_OF_CENTER   0x00000040
-#define AV_CH_FRONT_RIGHT_OF_CENTER  0x00000080
-#define AV_CH_BACK_CENTER            0x00000100
-#define AV_CH_SIDE_LEFT              0x00000200
-#define AV_CH_SIDE_RIGHT             0x00000400
-#define AV_CH_TOP_CENTER             0x00000800
-#define AV_CH_TOP_FRONT_LEFT         0x00001000
-#define AV_CH_TOP_FRONT_CENTER       0x00002000
-#define AV_CH_TOP_FRONT_RIGHT        0x00004000
-#define AV_CH_TOP_BACK_LEFT          0x00008000
-#define AV_CH_TOP_BACK_CENTER        0x00010000
-#define AV_CH_TOP_BACK_RIGHT         0x00020000
-#define AV_CH_STEREO_LEFT            0x20000000  ///< Stereo downmix.
-#define AV_CH_STEREO_RIGHT           0x40000000  ///< See AV_CH_STEREO_LEFT.
-
-/** Channel mask value used for AVCodecContext.request_channel_layout
-    to indicate that the user requests the channel order of the decoder output
-    to be the native codec channel order. */
-#define AV_CH_LAYOUT_NATIVE          0x8000000000000000ULL
-
-/**
- * @}
- * @defgroup channel_mask_c Audio channel convenience macros
- * @{
- * */
-#define AV_CH_LAYOUT_MONO              (AV_CH_FRONT_CENTER)
-#define AV_CH_LAYOUT_STEREO            (AV_CH_FRONT_LEFT|AV_CH_FRONT_RIGHT)
-#define AV_CH_LAYOUT_2_1               (AV_CH_LAYOUT_STEREO|AV_CH_BACK_CENTER)
-#define AV_CH_LAYOUT_SURROUND          (AV_CH_LAYOUT_STEREO|AV_CH_FRONT_CENTER)
-#define AV_CH_LAYOUT_4POINT0           (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_CENTER)
-#define AV_CH_LAYOUT_2_2               (AV_CH_LAYOUT_STEREO|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT)
-#define AV_CH_LAYOUT_QUAD              (AV_CH_LAYOUT_STEREO|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
-#define AV_CH_LAYOUT_5POINT0           (AV_CH_LAYOUT_SURROUND|AV_CH_SIDE_LEFT|AV_CH_SIDE_RIGHT)
-#define AV_CH_LAYOUT_5POINT1           (AV_CH_LAYOUT_5POINT0|AV_CH_LOW_FREQUENCY)
-#define AV_CH_LAYOUT_5POINT0_BACK      (AV_CH_LAYOUT_SURROUND|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
-#define AV_CH_LAYOUT_5POINT1_BACK      (AV_CH_LAYOUT_5POINT0_BACK|AV_CH_LOW_FREQUENCY)
-#define AV_CH_LAYOUT_7POINT0           (AV_CH_LAYOUT_5POINT0|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
-#define AV_CH_LAYOUT_7POINT1           (AV_CH_LAYOUT_5POINT1|AV_CH_BACK_LEFT|AV_CH_BACK_RIGHT)
-#define AV_CH_LAYOUT_7POINT1_WIDE      (AV_CH_LAYOUT_5POINT1_BACK|AV_CH_FRONT_LEFT_OF_CENTER|AV_CH_FRONT_RIGHT_OF_CENTER)
-#define AV_CH_LAYOUT_STEREO_DOWNMIX    (AV_CH_STEREO_LEFT|AV_CH_STEREO_RIGHT)
-
-/**
- * @}
- */
-
-/**
- * Return a channel layout id that matches name, 0 if no match.
- * name can be one or several of the following notations,
- * separated by '+' or '|':
- * - the name of an usual channel layout (mono, stereo, 4.0, quad, 5.0,
- *   5.0(side), 5.1, 5.1(side), 7.1, 7.1(wide), downmix);
- * - the name of a single channel (FL, FR, FC, LFE, BL, BR, FLC, FRC, BC,
- *   SL, SR, TC, TFL, TFC, TFR, TBL, TBC, TBR, DL, DR);
- * - a number of channels, in decimal, optionnally followed by 'c', yielding
- *   the default channel layout for that number of channels (@see
- *   av_get_default_channel_layout);
- * - a channel layout mask, in hexadecimal starting with "0x" (see the
- *   AV_CH_* macros).
- + Example: "stereo+FC" = "2+FC" = "2c+1c" = "0x7"
- */
-uint64_t av_get_channel_layout(const char *name);
-
-/**
- * Return a description of a channel layout.
- * If nb_channels is <= 0, it is guessed from the channel_layout.
- *
- * @param buf put here the string containing the channel layout
- * @param buf_size size in bytes of the buffer
- */
-void av_get_channel_layout_string(char *buf, int buf_size, int nb_channels, uint64_t channel_layout);
-
-/**
- * Return the number of channels in the channel layout.
- */
-int av_get_channel_layout_nb_channels(uint64_t channel_layout);
-
-/**
- * Return default channel layout for a given number of channels.
- */
-int64_t av_get_default_channel_layout(int nb_channels);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_AUDIOCONVERT_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/avassert.h b/dependencies64/ffmpeg/include/libavutil/avassert.h
deleted file mode 100644 (file)
index e100d0b..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * copyright (c) 2010 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * simple assert() macros that are a bit more flexible than ISO C assert().
- * @author Michael Niedermayer <michaelni@gmx.at>
- */
-
-#ifndef AVUTIL_AVASSERT_H
-#define AVUTIL_AVASSERT_H
-
-#include <stdlib.h>
-#include "avutil.h"
-#include "log.h"
-
-/**
- * assert() equivalent, that is always enabled.
- */
-#define av_assert0(cond) do {                                           \
-    if (!(cond)) {                                                      \
-        av_log(NULL, AV_LOG_FATAL, "Assertion %s failed at %s:%d\n",    \
-               AV_STRINGIFY(cond), __FILE__, __LINE__);                 \
-        abort();                                                        \
-    }                                                                   \
-} while (0)
-
-
-/**
- * assert() equivalent, that does not lie in speed critical code.
- * These asserts() thus can be enabled without fearing speedloss.
- */
-#if defined(ASSERT_LEVEL) && ASSERT_LEVEL > 0
-#define av_assert1(cond) av_assert0(cond)
-#else
-#define av_assert1(cond) ((void)0)
-#endif
-
-
-/**
- * assert() equivalent, that does lie in speed critical code.
- */
-#if defined(ASSERT_LEVEL) && ASSERT_LEVEL > 1
-#define av_assert2(cond) av_assert0(cond)
-#else
-#define av_assert2(cond) ((void)0)
-#endif
-
-#endif /* AVUTIL_AVASSERT_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/avconfig.h b/dependencies64/ffmpeg/include/libavutil/avconfig.h
deleted file mode 100644 (file)
index f10aa61..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-/* Generated by ffconf */
-#ifndef AVUTIL_AVCONFIG_H
-#define AVUTIL_AVCONFIG_H
-#define AV_HAVE_BIGENDIAN 0
-#define AV_HAVE_FAST_UNALIGNED 1
-#endif /* AVUTIL_AVCONFIG_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/avstring.h b/dependencies64/ffmpeg/include/libavutil/avstring.h
deleted file mode 100644 (file)
index 147d7ac..0000000
+++ /dev/null
@@ -1,209 +0,0 @@
-/*
- * Copyright (c) 2007 Mans Rullgard
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_AVSTRING_H
-#define AVUTIL_AVSTRING_H
-
-#include <stddef.h>
-#include "attributes.h"
-
-/**
- * @addtogroup lavu_string
- * @{
- */
-
-/**
- * Return non-zero if pfx is a prefix of str. If it is, *ptr is set to
- * the address of the first character in str after the prefix.
- *
- * @param str input string
- * @param pfx prefix to test
- * @param ptr updated if the prefix is matched inside str
- * @return non-zero if the prefix matches, zero otherwise
- */
-int av_strstart(const char *str, const char *pfx, const char **ptr);
-
-/**
- * Return non-zero if pfx is a prefix of str independent of case. If
- * it is, *ptr is set to the address of the first character in str
- * after the prefix.
- *
- * @param str input string
- * @param pfx prefix to test
- * @param ptr updated if the prefix is matched inside str
- * @return non-zero if the prefix matches, zero otherwise
- */
-int av_stristart(const char *str, const char *pfx, const char **ptr);
-
-/**
- * Locate the first case-independent occurrence in the string haystack
- * of the string needle.  A zero-length string needle is considered to
- * match at the start of haystack.
- *
- * This function is a case-insensitive version of the standard strstr().
- *
- * @param haystack string to search in
- * @param needle   string to search for
- * @return         pointer to the located match within haystack
- *                 or a null pointer if no match
- */
-char *av_stristr(const char *haystack, const char *needle);
-
-/**
- * Copy the string src to dst, but no more than size - 1 bytes, and
- * null-terminate dst.
- *
- * This function is the same as BSD strlcpy().
- *
- * @param dst destination buffer
- * @param src source string
- * @param size size of destination buffer
- * @return the length of src
- *
- * @warning since the return value is the length of src, src absolutely
- * _must_ be a properly 0-terminated string, otherwise this will read beyond
- * the end of the buffer and possibly crash.
- */
-size_t av_strlcpy(char *dst, const char *src, size_t size);
-
-/**
- * Append the string src to the string dst, but to a total length of
- * no more than size - 1 bytes, and null-terminate dst.
- *
- * This function is similar to BSD strlcat(), but differs when
- * size <= strlen(dst).
- *
- * @param dst destination buffer
- * @param src source string
- * @param size size of destination buffer
- * @return the total length of src and dst
- *
- * @warning since the return value use the length of src and dst, these
- * absolutely _must_ be a properly 0-terminated strings, otherwise this
- * will read beyond the end of the buffer and possibly crash.
- */
-size_t av_strlcat(char *dst, const char *src, size_t size);
-
-/**
- * Append output to a string, according to a format. Never write out of
- * the destination buffer, and always put a terminating 0 within
- * the buffer.
- * @param dst destination buffer (string to which the output is
- *  appended)
- * @param size total size of the destination buffer
- * @param fmt printf-compatible format string, specifying how the
- *  following parameters are used
- * @return the length of the string that would have been generated
- *  if enough space had been available
- */
-size_t av_strlcatf(char *dst, size_t size, const char *fmt, ...) av_printf_format(3, 4);
-
-/**
- * Print arguments following specified format into a large enough auto
- * allocated buffer. It is similar to GNU asprintf().
- * @param fmt printf-compatible format string, specifying how the
- *            following parameters are used.
- * @return the allocated string
- * @note You have to free the string yourself with av_free().
- */
-char *av_asprintf(const char *fmt, ...) av_printf_format(1, 2);
-
-/**
- * Convert a number to a av_malloced string.
- */
-char *av_d2str(double d);
-
-/**
- * Unescape the given string until a non escaped terminating char,
- * and return the token corresponding to the unescaped string.
- *
- * The normal \ and ' escaping is supported. Leading and trailing
- * whitespaces are removed, unless they are escaped with '\' or are
- * enclosed between ''.
- *
- * @param buf the buffer to parse, buf will be updated to point to the
- * terminating char
- * @param term a 0-terminated list of terminating chars
- * @return the malloced unescaped string, which must be av_freed by
- * the user, NULL in case of allocation failure
- */
-char *av_get_token(const char **buf, const char *term);
-
-/**
- * Split the string into several tokens which can be accessed by
- * successive calls to av_strtok().
- *
- * A token is defined as a sequence of characters not belonging to the
- * set specified in delim.
- *
- * On the first call to av_strtok(), s should point to the string to
- * parse, and the value of saveptr is ignored. In subsequent calls, s
- * should be NULL, and saveptr should be unchanged since the previous
- * call.
- *
- * This function is similar to strtok_r() defined in POSIX.1.
- *
- * @param s the string to parse, may be NULL
- * @param delim 0-terminated list of token delimiters, must be non-NULL
- * @param saveptr user-provided pointer which points to stored
- * information necessary for av_strtok() to continue scanning the same
- * string. saveptr is updated to point to the next character after the
- * first delimiter found, or to NULL if the string was terminated
- * @return the found token, or NULL when no token is found
- */
-char *av_strtok(char *s, const char *delim, char **saveptr);
-
-/**
- * Locale independent conversion of ASCII characters to upper case.
- */
-static inline int av_toupper(int c)
-{
-    if (c >= 'a' && c <= 'z')
-        c ^= 0x20;
-    return c;
-}
-
-/**
- * Locale independent conversion of ASCII characters to lower case.
- */
-static inline int av_tolower(int c)
-{
-    if (c >= 'A' && c <= 'Z')
-        c ^= 0x20;
-    return c;
-}
-
-/**
- * Locale independent case-insensitive compare.
- * @note This means only ASCII-range characters are case-insensitive
- */
-int av_strcasecmp(const char *a, const char *b);
-
-/**
- * Locale independent case-insensitive compare.
- * @note This means only ASCII-range characters are case-insensitive
- */
-int av_strncasecmp(const char *a, const char *b, size_t n);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_AVSTRING_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/avutil.h b/dependencies64/ffmpeg/include/libavutil/avutil.h
deleted file mode 100644 (file)
index af43cc5..0000000
+++ /dev/null
@@ -1,348 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_AVUTIL_H
-#define AVUTIL_AVUTIL_H
-
-/**
- * @file
- * external API header
- */
-
-/**
- * @mainpage
- *
- * @section libav_intro Introduction
- *
- * This document describe the usage of the different libraries
- * provided by FFmpeg.
- *
- * @li @ref libavc "libavcodec" encoding/decoding library
- * @li @subpage libavfilter graph based frame editing library
- * @li @ref libavf "libavformat" I/O and muxing/demuxing library
- * @li @ref lavu "libavutil" common utility library
- * @li @subpage libpostproc post processing library
- * @li @subpage libswscale  color conversion and scaling library
- *
- */
-
-/**
- * @defgroup lavu Common utility functions
- *
- * @brief
- * libavutil contains the code shared across all the other FFmpeg
- * libraries
- *
- * @note In order to use the functions provided by avutil you must include
- * the specific header.
- *
- * @{
- *
- * @defgroup lavu_crypto Crypto and Hashing
- *
- * @{
- * @}
- *
- * @defgroup lavu_math Maths
- * @{
- *
- * @}
- *
- * @defgroup lavu_string String Manipulation
- *
- * @{
- *
- * @}
- *
- * @defgroup lavu_mem Memory Management
- *
- * @{
- *
- * @}
- *
- * @defgroup lavu_data Data Structures
- * @{
- *
- * @}
- *
- * @defgroup lavu_audio Audio related
- *
- * @{
- *
- * @}
- *
- * @defgroup lavu_error Error Codes
- *
- * @{
- *
- * @}
- *
- * @defgroup lavu_misc Other
- *
- * @{
- *
- * @defgroup lavu_internal Internal
- *
- * Not exported functions, for internal usage only
- *
- * @{
- *
- * @}
- */
-
-
-/**
- * @defgroup preproc_misc Preprocessor String Macros
- *
- * String manipulation macros
- *
- * @{
- */
-
-#define AV_STRINGIFY(s)         AV_TOSTRING(s)
-#define AV_TOSTRING(s) #s
-
-#define AV_GLUE(a, b) a ## b
-#define AV_JOIN(a, b) AV_GLUE(a, b)
-
-#define AV_PRAGMA(s) _Pragma(#s)
-
-/**
- * @}
- */
-
-/**
- * @defgroup version_utils Library Version Macros
- *
- * Useful to check and match library version in order to maintain
- * backward compatibility.
- *
- * @{
- */
-
-#define AV_VERSION_INT(a, b, c) (a<<16 | b<<8 | c)
-#define AV_VERSION_DOT(a, b, c) a ##.## b ##.## c
-#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
-
-/**
- * @}
- *
- * @defgroup lavu_ver Version and Build diagnostics
- *
- * Macros and function useful to check at compiletime and at runtime
- * which version of libavutil is in use.
- *
- * @{
- */
-
-#define LIBAVUTIL_VERSION_MAJOR 51
-#define LIBAVUTIL_VERSION_MINOR 30
-#define LIBAVUTIL_VERSION_MICRO  0
-
-#define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
-                                               LIBAVUTIL_VERSION_MINOR, \
-                                               LIBAVUTIL_VERSION_MICRO)
-#define LIBAVUTIL_VERSION       AV_VERSION(LIBAVUTIL_VERSION_MAJOR,     \
-                                           LIBAVUTIL_VERSION_MINOR,     \
-                                           LIBAVUTIL_VERSION_MICRO)
-#define LIBAVUTIL_BUILD         LIBAVUTIL_VERSION_INT
-
-#define LIBAVUTIL_IDENT         "Lavu" AV_STRINGIFY(LIBAVUTIL_VERSION)
-
-/**
- * @}
- *
- * @defgroup depr_guards Deprecation guards
- * Those FF_API_* defines are not part of public API.
- * They may change, break or disappear at any time.
- *
- * They are used mostly internally to mark code that will be removed
- * on the next major version.
- *
- * @{
- */
-#ifndef FF_API_OLD_EVAL_NAMES
-#define FF_API_OLD_EVAL_NAMES (LIBAVUTIL_VERSION_MAJOR < 52)
-#endif
-#ifndef FF_API_GET_BITS_PER_SAMPLE_FMT
-#define FF_API_GET_BITS_PER_SAMPLE_FMT (LIBAVUTIL_VERSION_MAJOR < 52)
-#endif
-#ifndef FF_API_FIND_OPT
-#define FF_API_FIND_OPT                 (LIBAVUTIL_VERSION_MAJOR < 52)
-#endif
-#ifndef FF_API_AV_FIFO_PEEK
-#define FF_API_AV_FIFO_PEEK             (LIBAVUTIL_VERSION_MAJOR < 52)
-#endif
-#ifndef FF_API_OLD_AVOPTIONS
-#define FF_API_OLD_AVOPTIONS            (LIBAVUTIL_VERSION_MAJOR < 52)
-#endif
-
-/**
- * @}
- */
-
-/**
- * @addtogroup lavu_ver
- * @{
- */
-
-/**
- * Return the LIBAVUTIL_VERSION_INT constant.
- */
-unsigned avutil_version(void);
-
-/**
- * Return the libavutil build-time configuration.
- */
-const char *avutil_configuration(void);
-
-/**
- * Return the libavutil license.
- */
-const char *avutil_license(void);
-
-/**
- * @}
- */
-
-/**
- * @addtogroup lavu_media Media Type
- * @brief Media Type
- */
-
-enum AVMediaType {
-    AVMEDIA_TYPE_UNKNOWN = -1,  ///< Usually treated as AVMEDIA_TYPE_DATA
-    AVMEDIA_TYPE_VIDEO,
-    AVMEDIA_TYPE_AUDIO,
-    AVMEDIA_TYPE_DATA,          ///< Opaque data information usually continuous
-    AVMEDIA_TYPE_SUBTITLE,
-    AVMEDIA_TYPE_ATTACHMENT,    ///< Opaque data information usually sparse
-    AVMEDIA_TYPE_NB
-};
-
-/**
- * Return a string describing the media_type enum, NULL if media_type
- * is unknown.
- */
-const char *av_get_media_type_string(enum AVMediaType media_type);
-
-/**
- * @defgroup lavu_const Constants
- * @{
- *
- * @defgroup lavu_enc Encoding specific
- *
- * @note those definition should move to avcodec
- * @{
- */
-
-#define FF_LAMBDA_SHIFT 7
-#define FF_LAMBDA_SCALE (1<<FF_LAMBDA_SHIFT)
-#define FF_QP2LAMBDA 118 ///< factor to convert from H.263 QP to lambda
-#define FF_LAMBDA_MAX (256*128-1)
-
-#define FF_QUALITY_SCALE FF_LAMBDA_SCALE //FIXME maybe remove
-
-/**
- * @}
- * @defgroup lavu_time Timestamp specific
- *
- * FFmpeg internal timebase and timestamp definitions
- *
- * @{
- */
-
-/**
- * @brief Undefined timestamp value
- *
- * Usually reported by demuxer that work on containers that do not provide
- * either pts or dts.
- */
-
-#define AV_NOPTS_VALUE          INT64_C(0x8000000000000000)
-
-/**
- * Internal time base represented as integer
- */
-
-#define AV_TIME_BASE            1000000
-
-/**
- * Internal time base represented as fractional value
- */
-
-#define AV_TIME_BASE_Q          (AVRational){1, AV_TIME_BASE}
-
-/**
- * @}
- * @}
- * @defgroup lavu_picture Image related
- *
- * AVPicture types, pixel formats and basic image planes manipulation.
- *
- * @{
- */
-
-enum AVPictureType {
-    AV_PICTURE_TYPE_NONE = 0, ///< Undefined
-    AV_PICTURE_TYPE_I,     ///< Intra
-    AV_PICTURE_TYPE_P,     ///< Predicted
-    AV_PICTURE_TYPE_B,     ///< Bi-dir predicted
-    AV_PICTURE_TYPE_S,     ///< S(GMC)-VOP MPEG4
-    AV_PICTURE_TYPE_SI,    ///< Switching Intra
-    AV_PICTURE_TYPE_SP,    ///< Switching Predicted
-    AV_PICTURE_TYPE_BI,    ///< BI type
-};
-
-/**
- * Return a single letter to describe the given picture type
- * pict_type.
- *
- * @param[in] pict_type the picture type @return a single character
- * representing the picture type, '?' if pict_type is unknown
- */
-char av_get_picture_type_char(enum AVPictureType pict_type);
-
-/**
- * @}
- */
-
-#include "common.h"
-#include "error.h"
-#include "mathematics.h"
-#include "rational.h"
-#include "intfloat_readwrite.h"
-#include "log.h"
-#include "pixfmt.h"
-
-/**
- * Return x default pointer in case p is NULL.
- */
-static inline void *av_x_if_null(const void *p, const void *x)
-{
-    return (void *)(intptr_t)(p ? p : x);
-}
-
-/**
- * @}
- * @}
- */
-
-#endif /* AVUTIL_AVUTIL_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/base64.h b/dependencies64/ffmpeg/include/libavutil/base64.h
deleted file mode 100644 (file)
index b095576..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright (c) 2006 Ryan Martell. (rdm4@martellventures.com)
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_BASE64_H
-#define AVUTIL_BASE64_H
-
-#include <stdint.h>
-
-/**
- * @defgroup lavu_base64 Base64
- * @ingroup lavu_crypto
- * @{
- */
-
-
-/**
- * Decode a base64-encoded string.
- *
- * @param out      buffer for decoded data
- * @param in       null-terminated input string
- * @param out_size size in bytes of the out buffer, must be at
- *                 least 3/4 of the length of in
- * @return         number of bytes written, or a negative value in case of
- *                 invalid input
- */
-int av_base64_decode(uint8_t *out, const char *in, int out_size);
-
-/**
- * Encode data to base64 and null-terminate.
- *
- * @param out      buffer for encoded data
- * @param out_size size in bytes of the output buffer, must be at
- *                 least AV_BASE64_SIZE(in_size)
- * @param in_size  size in bytes of the 'in' buffer
- * @return         'out' or NULL in case of error
- */
-char *av_base64_encode(char *out, int out_size, const uint8_t *in, int in_size);
-
-/**
- * Calculate the output size needed to base64-encode x bytes.
- */
-#define AV_BASE64_SIZE(x)  (((x)+2) / 3 * 4 + 1)
-
- /**
-  * @}
-  */
-
-#endif /* AVUTIL_BASE64_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/bswap.h b/dependencies64/ffmpeg/include/libavutil/bswap.h
deleted file mode 100644 (file)
index 303bcf3..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * byte swapping routines
- */
-
-#ifndef AVUTIL_BSWAP_H
-#define AVUTIL_BSWAP_H
-
-#include <stdint.h>
-#include "libavutil/avconfig.h"
-#include "attributes.h"
-
-#ifdef HAVE_AV_CONFIG_H
-
-#include "config.h"
-
-#if   ARCH_ARM
-#   include "arm/bswap.h"
-#elif ARCH_AVR32
-#   include "avr32/bswap.h"
-#elif ARCH_BFIN
-#   include "bfin/bswap.h"
-#elif ARCH_SH4
-#   include "sh4/bswap.h"
-#elif ARCH_X86
-#   include "x86/bswap.h"
-#endif
-
-#endif /* HAVE_AV_CONFIG_H */
-
-#define AV_BSWAP16C(x) (((x) << 8 & 0xff00)  | ((x) >> 8 & 0x00ff))
-#define AV_BSWAP32C(x) (AV_BSWAP16C(x) << 16 | AV_BSWAP16C((x) >> 16))
-#define AV_BSWAP64C(x) (AV_BSWAP32C(x) << 32 | AV_BSWAP32C((x) >> 32))
-
-#define AV_BSWAPC(s, x) AV_BSWAP##s##C(x)
-
-#ifndef av_bswap16
-static av_always_inline av_const uint16_t av_bswap16(uint16_t x)
-{
-    x= (x>>8) | (x<<8);
-    return x;
-}
-#endif
-
-#ifndef av_bswap32
-static av_always_inline av_const uint32_t av_bswap32(uint32_t x)
-{
-    x= ((x<<8)&0xFF00FF00) | ((x>>8)&0x00FF00FF);
-    x= (x>>16) | (x<<16);
-    return x;
-}
-#endif
-
-#ifndef av_bswap64
-static inline uint64_t av_const av_bswap64(uint64_t x)
-{
-#if 0
-    x= ((x<< 8)&0xFF00FF00FF00FF00ULL) | ((x>> 8)&0x00FF00FF00FF00FFULL);
-    x= ((x<<16)&0xFFFF0000FFFF0000ULL) | ((x>>16)&0x0000FFFF0000FFFFULL);
-    return (x>>32) | (x<<32);
-#else
-    union {
-        uint64_t ll;
-        uint32_t l[2];
-    } w, r;
-    w.ll = x;
-    r.l[0] = av_bswap32 (w.l[1]);
-    r.l[1] = av_bswap32 (w.l[0]);
-    return r.ll;
-#endif
-}
-#endif
-
-// be2ne ... big-endian to native-endian
-// le2ne ... little-endian to native-endian
-
-#if AV_HAVE_BIGENDIAN
-#define av_be2ne16(x) (x)
-#define av_be2ne32(x) (x)
-#define av_be2ne64(x) (x)
-#define av_le2ne16(x) av_bswap16(x)
-#define av_le2ne32(x) av_bswap32(x)
-#define av_le2ne64(x) av_bswap64(x)
-#define AV_BE2NEC(s, x) (x)
-#define AV_LE2NEC(s, x) AV_BSWAPC(s, x)
-#else
-#define av_be2ne16(x) av_bswap16(x)
-#define av_be2ne32(x) av_bswap32(x)
-#define av_be2ne64(x) av_bswap64(x)
-#define av_le2ne16(x) (x)
-#define av_le2ne32(x) (x)
-#define av_le2ne64(x) (x)
-#define AV_BE2NEC(s, x) AV_BSWAPC(s, x)
-#define AV_LE2NEC(s, x) (x)
-#endif
-
-#define AV_BE2NE16C(x) AV_BE2NEC(16, x)
-#define AV_BE2NE32C(x) AV_BE2NEC(32, x)
-#define AV_BE2NE64C(x) AV_BE2NEC(64, x)
-#define AV_LE2NE16C(x) AV_LE2NEC(16, x)
-#define AV_LE2NE32C(x) AV_LE2NEC(32, x)
-#define AV_LE2NE64C(x) AV_LE2NEC(64, x)
-
-#endif /* AVUTIL_BSWAP_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/common.h b/dependencies64/ffmpeg/include/libavutil/common.h
deleted file mode 100644 (file)
index 90979d3..0000000
+++ /dev/null
@@ -1,387 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * common internal and external API header
- */
-
-#ifndef AVUTIL_COMMON_H
-#define AVUTIL_COMMON_H
-
-#include <ctype.h>
-#include <errno.h>
-#include <cstdint>
-#include <limits.h>
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "attributes.h"
-#include "libavutil/avconfig.h"
-
-#if AV_HAVE_BIGENDIAN
-#   define AV_NE(be, le) (be)
-#else
-#   define AV_NE(be, le) (le)
-#endif
-
-//rounded division & shift
-#define RSHIFT(a,b) ((a) > 0 ? ((a) + ((1<<(b))>>1))>>(b) : ((a) + ((1<<(b))>>1)-1)>>(b))
-/* assume b>0 */
-#define ROUNDED_DIV(a,b) (((a)>0 ? (a) + ((b)>>1) : (a) - ((b)>>1))/(b))
-#define FFUDIV(a,b) (((a)>0 ?(a):(a)-(b)+1) / (b))
-#define FFUMOD(a,b) ((a)-(b)*FFUDIV(a,b))
-#define FFABS(a) ((a) >= 0 ? (a) : (-(a)))
-#define FFSIGN(a) ((a) > 0 ? 1 : -1)
-
-#define FFMAX(a,b) ((a) > (b) ? (a) : (b))
-#define FFMAX3(a,b,c) FFMAX(FFMAX(a,b),c)
-#define FFMIN(a,b) ((a) > (b) ? (b) : (a))
-#define FFMIN3(a,b,c) FFMIN(FFMIN(a,b),c)
-
-#define FFSWAP(type,a,b) do{type SWAP_tmp= b; b= a; a= SWAP_tmp;}while(0)
-#define FF_ARRAY_ELEMS(a) (sizeof(a) / sizeof((a)[0]))
-#define FFALIGN(x, a) (((x)+(a)-1)&~((a)-1))
-
-/* misc math functions */
-extern const uint8_t ff_log2_tab[256];
-
-extern const uint8_t av_reverse[256];
-
-static av_always_inline av_const int av_log2_c(unsigned int v)
-{
-    int n = 0;
-    if (v & 0xffff0000) {
-        v >>= 16;
-        n += 16;
-    }
-    if (v & 0xff00) {
-        v >>= 8;
-        n += 8;
-    }
-    n += ff_log2_tab[v];
-
-    return n;
-}
-
-static av_always_inline av_const int av_log2_16bit_c(unsigned int v)
-{
-    int n = 0;
-    if (v & 0xff00) {
-        v >>= 8;
-        n += 8;
-    }
-    n += ff_log2_tab[v];
-
-    return n;
-}
-
-#ifdef HAVE_AV_CONFIG_H
-#   include "config.h"
-#   include "intmath.h"
-#endif
-
-/* Pull in unguarded fallback defines at the end of this file. */
-#include "common.h"
-
-/**
- * Clip a signed integer value into the amin-amax range.
- * @param a value to clip
- * @param amin minimum value of the clip range
- * @param amax maximum value of the clip range
- * @return clipped value
- */
-static av_always_inline av_const int av_clip_c(int a, int amin, int amax)
-{
-    if      (a < amin) return amin;
-    else if (a > amax) return amax;
-    else               return a;
-}
-
-/**
- * Clip a signed integer value into the 0-255 range.
- * @param a value to clip
- * @return clipped value
- */
-static av_always_inline av_const uint8_t av_clip_uint8_c(int a)
-{
-    if (a&(~0xFF)) return (-a)>>31;
-    else           return a;
-}
-
-/**
- * Clip a signed integer value into the -128,127 range.
- * @param a value to clip
- * @return clipped value
- */
-static av_always_inline av_const int8_t av_clip_int8_c(int a)
-{
-    if ((a+0x80) & ~0xFF) return (a>>31) ^ 0x7F;
-    else                  return a;
-}
-
-/**
- * Clip a signed integer value into the 0-65535 range.
- * @param a value to clip
- * @return clipped value
- */
-static av_always_inline av_const uint16_t av_clip_uint16_c(int a)
-{
-    if (a&(~0xFFFF)) return (-a)>>31;
-    else             return a;
-}
-
-/**
- * Clip a signed integer value into the -32768,32767 range.
- * @param a value to clip
- * @return clipped value
- */
-static av_always_inline av_const int16_t av_clip_int16_c(int a)
-{
-    if ((a+0x8000) & ~0xFFFF) return (a>>31) ^ 0x7FFF;
-    else                      return a;
-}
-
-/**
- * Clip a signed 64-bit integer value into the -2147483648,2147483647 range.
- * @param a value to clip
- * @return clipped value
- */
-static av_always_inline av_const int32_t av_clipl_int32_c(int64_t a)
-{
-    if ((a+0x80000000u) & ~UINT64_C(0xFFFFFFFF)) return (a>>63) ^ 0x7FFFFFFF;
-    else                                         return a;
-}
-
-/**
- * Clip a signed integer to an unsigned power of two range.
- * @param  a value to clip
- * @param  p bit position to clip at
- * @return clipped value
- */
-static av_always_inline av_const unsigned av_clip_uintp2_c(int a, int p)
-{
-    if (a & ~((1<<p) - 1)) return -a >> 31 & ((1<<p) - 1);
-    else                   return  a;
-}
-
-/**
- * Clip a float value into the amin-amax range.
- * @param a value to clip
- * @param amin minimum value of the clip range
- * @param amax maximum value of the clip range
- * @return clipped value
- */
-static av_always_inline av_const float av_clipf_c(float a, float amin, float amax)
-{
-    if      (a < amin) return amin;
-    else if (a > amax) return amax;
-    else               return a;
-}
-
-/** Compute ceil(log2(x)).
- * @param x value used to compute ceil(log2(x))
- * @return computed ceiling of log2(x)
- */
-static av_always_inline av_const int av_ceil_log2_c(int x)
-{
-    return av_log2((x - 1) << 1);
-}
-
-/**
- * Count number of bits set to one in x
- * @param x value to count bits of
- * @return the number of bits set to one in x
- */
-static av_always_inline av_const int av_popcount_c(uint32_t x)
-{
-    x -= (x >> 1) & 0x55555555;
-    x = (x & 0x33333333) + ((x >> 2) & 0x33333333);
-    x = (x + (x >> 4)) & 0x0F0F0F0F;
-    x += x >> 8;
-    return (x + (x >> 16)) & 0x3F;
-}
-
-#define MKTAG(a,b,c,d) ((a) | ((b) << 8) | ((c) << 16) | ((unsigned)(d) << 24))
-#define MKBETAG(a,b,c,d) ((d) | ((c) << 8) | ((b) << 16) | ((unsigned)(a) << 24))
-
-/**
- * Convert a UTF-8 character (up to 4 bytes) to its 32-bit UCS-4 encoded form.
- *
- * @param val      Output value, must be an lvalue of type uint32_t.
- * @param GET_BYTE Expression reading one byte from the input.
- *                 Evaluated up to 7 times (4 for the currently
- *                 assigned Unicode range).  With a memory buffer
- *                 input, this could be *ptr++.
- * @param ERROR    Expression to be evaluated on invalid input,
- *                 typically a goto statement.
- */
-#define GET_UTF8(val, GET_BYTE, ERROR)\
-    val= GET_BYTE;\
-    {\
-        int ones= 7 - av_log2(val ^ 255);\
-        if(ones==1)\
-            ERROR\
-        val&= 127>>ones;\
-        while(--ones > 0){\
-            int tmp= GET_BYTE - 128;\
-            if(tmp>>6)\
-                ERROR\
-            val= (val<<6) + tmp;\
-        }\
-    }
-
-/**
- * Convert a UTF-16 character (2 or 4 bytes) to its 32-bit UCS-4 encoded form.
- *
- * @param val       Output value, must be an lvalue of type uint32_t.
- * @param GET_16BIT Expression returning two bytes of UTF-16 data converted
- *                  to native byte order.  Evaluated one or two times.
- * @param ERROR     Expression to be evaluated on invalid input,
- *                  typically a goto statement.
- */
-#define GET_UTF16(val, GET_16BIT, ERROR)\
-    val = GET_16BIT;\
-    {\
-        unsigned int hi = val - 0xD800;\
-        if (hi < 0x800) {\
-            val = GET_16BIT - 0xDC00;\
-            if (val > 0x3FFU || hi > 0x3FFU)\
-                ERROR\
-            val += (hi<<10) + 0x10000;\
-        }\
-    }\
-
-/**
- * @def PUT_UTF8(val, tmp, PUT_BYTE)
- * Convert a 32-bit Unicode character to its UTF-8 encoded form (up to 4 bytes long).
- * @param val is an input-only argument and should be of type uint32_t. It holds
- * a UCS-4 encoded Unicode character that is to be converted to UTF-8. If
- * val is given as a function it is executed only once.
- * @param tmp is a temporary variable and should be of type uint8_t. It
- * represents an intermediate value during conversion that is to be
- * output by PUT_BYTE.
- * @param PUT_BYTE writes the converted UTF-8 bytes to any proper destination.
- * It could be a function or a statement, and uses tmp as the input byte.
- * For example, PUT_BYTE could be "*output++ = tmp;" PUT_BYTE will be
- * executed up to 4 times for values in the valid UTF-8 range and up to
- * 7 times in the general case, depending on the length of the converted
- * Unicode character.
- */
-#define PUT_UTF8(val, tmp, PUT_BYTE)\
-    {\
-        int bytes, shift;\
-        uint32_t in = val;\
-        if (in < 0x80) {\
-            tmp = in;\
-            PUT_BYTE\
-        } else {\
-            bytes = (av_log2(in) + 4) / 5;\
-            shift = (bytes - 1) * 6;\
-            tmp = (256 - (256 >> bytes)) | (in >> shift);\
-            PUT_BYTE\
-            while (shift >= 6) {\
-                shift -= 6;\
-                tmp = 0x80 | ((in >> shift) & 0x3f);\
-                PUT_BYTE\
-            }\
-        }\
-    }
-
-/**
- * @def PUT_UTF16(val, tmp, PUT_16BIT)
- * Convert a 32-bit Unicode character to its UTF-16 encoded form (2 or 4 bytes).
- * @param val is an input-only argument and should be of type uint32_t. It holds
- * a UCS-4 encoded Unicode character that is to be converted to UTF-16. If
- * val is given as a function it is executed only once.
- * @param tmp is a temporary variable and should be of type uint16_t. It
- * represents an intermediate value during conversion that is to be
- * output by PUT_16BIT.
- * @param PUT_16BIT writes the converted UTF-16 data to any proper destination
- * in desired endianness. It could be a function or a statement, and uses tmp
- * as the input byte.  For example, PUT_BYTE could be "*output++ = tmp;"
- * PUT_BYTE will be executed 1 or 2 times depending on input character.
- */
-#define PUT_UTF16(val, tmp, PUT_16BIT)\
-    {\
-        uint32_t in = val;\
-        if (in < 0x10000) {\
-            tmp = in;\
-            PUT_16BIT\
-        } else {\
-            tmp = 0xD800 | ((in - 0x10000) >> 10);\
-            PUT_16BIT\
-            tmp = 0xDC00 | ((in - 0x10000) & 0x3FF);\
-            PUT_16BIT\
-        }\
-    }\
-
-
-
-#include "mem.h"
-
-#ifdef HAVE_AV_CONFIG_H
-#    include "internal.h"
-#endif /* HAVE_AV_CONFIG_H */
-
-#endif /* AVUTIL_COMMON_H */
-
-/*
- * The following definitions are outside the multiple inclusion guard
- * to ensure they are immediately available in intmath.h.
- */
-
-#ifndef av_log2
-#   define av_log2       av_log2_c
-#endif
-#ifndef av_log2_16bit
-#   define av_log2_16bit av_log2_16bit_c
-#endif
-#ifndef av_ceil_log2
-#   define av_ceil_log2     av_ceil_log2_c
-#endif
-#ifndef av_clip
-#   define av_clip          av_clip_c
-#endif
-#ifndef av_clip_uint8
-#   define av_clip_uint8    av_clip_uint8_c
-#endif
-#ifndef av_clip_int8
-#   define av_clip_int8     av_clip_int8_c
-#endif
-#ifndef av_clip_uint16
-#   define av_clip_uint16   av_clip_uint16_c
-#endif
-#ifndef av_clip_int16
-#   define av_clip_int16    av_clip_int16_c
-#endif
-#ifndef av_clipl_int32
-#   define av_clipl_int32   av_clipl_int32_c
-#endif
-#ifndef av_clip_uintp2
-#   define av_clip_uintp2   av_clip_uintp2_c
-#endif
-#ifndef av_clipf
-#   define av_clipf         av_clipf_c
-#endif
-#ifndef av_popcount
-#   define av_popcount      av_popcount_c
-#endif
diff --git a/dependencies64/ffmpeg/include/libavutil/cpu.h b/dependencies64/ffmpeg/include/libavutil/cpu.h
deleted file mode 100644 (file)
index 5f7eed2..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (c) 2000, 2001, 2002 Fabrice Bellard
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_CPU_H
-#define AVUTIL_CPU_H
-
-#define AV_CPU_FLAG_FORCE    0x80000000 /* force usage of selected flags (OR) */
-
-    /* lower 16 bits - CPU features */
-#define AV_CPU_FLAG_MMX          0x0001 ///< standard MMX
-#define AV_CPU_FLAG_MMX2         0x0002 ///< SSE integer functions or AMD MMX ext
-#define AV_CPU_FLAG_3DNOW        0x0004 ///< AMD 3DNOW
-#define AV_CPU_FLAG_SSE          0x0008 ///< SSE functions
-#define AV_CPU_FLAG_SSE2         0x0010 ///< PIV SSE2 functions
-#define AV_CPU_FLAG_SSE2SLOW 0x40000000 ///< SSE2 supported, but usually not faster
-#define AV_CPU_FLAG_3DNOWEXT     0x0020 ///< AMD 3DNowExt
-#define AV_CPU_FLAG_SSE3         0x0040 ///< Prescott SSE3 functions
-#define AV_CPU_FLAG_SSE3SLOW 0x20000000 ///< SSE3 supported, but usually not faster
-#define AV_CPU_FLAG_SSSE3        0x0080 ///< Conroe SSSE3 functions
-#define AV_CPU_FLAG_ATOM     0x10000000 ///< Atom processor, some SSSE3 instructions are slower
-#define AV_CPU_FLAG_SSE4         0x0100 ///< Penryn SSE4.1 functions
-#define AV_CPU_FLAG_SSE42        0x0200 ///< Nehalem SSE4.2 functions
-#define AV_CPU_FLAG_AVX          0x4000 ///< AVX functions: requires OS support even if YMM registers aren't used
-#define AV_CPU_FLAG_XOP          0x0400 ///< Bulldozer XOP functions
-#define AV_CPU_FLAG_FMA4         0x0800 ///< Bulldozer FMA4 functions
-#define AV_CPU_FLAG_IWMMXT       0x0100 ///< XScale IWMMXT
-#define AV_CPU_FLAG_ALTIVEC      0x0001 ///< standard
-
-/**
- * Return the flags which specify extensions supported by the CPU.
- */
-int av_get_cpu_flags(void);
-
-
-/**
- * Disables cpu detection and forces the specified flags.
- */
-void av_force_cpu_flags(int flags);
-
-
-/* The following CPU-specific functions shall not be called directly. */
-int ff_get_cpu_flags_arm(void);
-int ff_get_cpu_flags_ppc(void);
-int ff_get_cpu_flags_x86(void);
-
-#endif /* AVUTIL_CPU_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/crc.h b/dependencies64/ffmpeg/include/libavutil/crc.h
deleted file mode 100644 (file)
index 6c0baab..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_CRC_H
-#define AVUTIL_CRC_H
-
-#include <stdint.h>
-#include <stddef.h>
-#include "attributes.h"
-
-typedef uint32_t AVCRC;
-
-typedef enum {
-    AV_CRC_8_ATM,
-    AV_CRC_16_ANSI,
-    AV_CRC_16_CCITT,
-    AV_CRC_32_IEEE,
-    AV_CRC_32_IEEE_LE,  /*< reversed bitorder version of AV_CRC_32_IEEE */
-    AV_CRC_MAX,         /*< Not part of public API! Do not use outside libavutil. */
-}AVCRCId;
-
-int av_crc_init(AVCRC *ctx, int le, int bits, uint32_t poly, int ctx_size);
-const AVCRC *av_crc_get_table(AVCRCId crc_id);
-uint32_t av_crc(const AVCRC *ctx, uint32_t start_crc, const uint8_t *buffer, size_t length) av_pure;
-
-#endif /* AVUTIL_CRC_H */
-
diff --git a/dependencies64/ffmpeg/include/libavutil/dict.h b/dependencies64/ffmpeg/include/libavutil/dict.h
deleted file mode 100644 (file)
index 2adf28c..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-/*
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * Public dictionary API.
- * @deprecated
- *  AVDictionary is provided for compatibility with libav. It is both in
- *  implementation as well as API inefficient. It does not scale and is
- *  extremely slow with large dictionaries.
- *  It is recommended that new code uses our tree container from tree.c/h
- *  where applicable, which uses AVL trees to achieve O(log n) performance.
- */
-
-#ifndef AVUTIL_DICT_H
-#define AVUTIL_DICT_H
-
-/**
- * @addtogroup lavu_dict AVDictionary
- * @ingroup lavu_data
- *
- * @brief Simple key:value store
- *
- * @{
- * Dictionaries are used for storing key:value pairs. To create
- * an AVDictionary, simply pass an address of a NULL pointer to
- * av_dict_set(). NULL can be used as an empty dictionary wherever
- * a pointer to an AVDictionary is required.
- * Use av_dict_get() to retrieve an entry or iterate over all
- * entries and finally av_dict_free() to free the dictionary
- * and all its contents.
- *
- * @code
- * AVDictionary *d = NULL;                // "create" an empty dictionary
- * av_dict_set(&d, "foo", "bar", 0);      // add an entry
- *
- * char *k = av_strdup("key");            // if your strings are already allocated,
- * char *v = av_strdup("value");          // you can avoid copying them like this
- * av_dict_set(&d, k, v, AV_DICT_DONT_STRDUP_KEY | AV_DICT_DONT_STRDUP_VAL);
- *
- * AVDictionaryEntry *t = NULL;
- * while (t = av_dict_get(d, "", t, AV_DICT_IGNORE_SUFFIX)) {
- *     <....>                             // iterate over all entries in d
- * }
- *
- * av_dict_free(&d);
- * @endcode
- *
- */
-
-#define AV_DICT_MATCH_CASE      1
-#define AV_DICT_IGNORE_SUFFIX   2
-#define AV_DICT_DONT_STRDUP_KEY 4   /**< Take ownership of a key that's been
-                                         allocated with av_malloc() and children. */
-#define AV_DICT_DONT_STRDUP_VAL 8   /**< Take ownership of a value that's been
-                                         allocated with av_malloc() and chilren. */
-#define AV_DICT_DONT_OVERWRITE 16   ///< Don't overwrite existing entries.
-#define AV_DICT_APPEND         32   /**< If the entry already exists, append to it.  Note that no
-                                      delimiter is added, the strings are simply concatenated. */
-
-typedef struct {
-    char *key;
-    char *value;
-} AVDictionaryEntry;
-
-typedef struct AVDictionary AVDictionary;
-
-/**
- * Get a dictionary entry with matching key.
- *
- * @param prev Set to the previous matching element to find the next.
- *             If set to NULL the first matching element is returned.
- * @param flags Allows case as well as suffix-insensitive comparisons.
- * @return Found entry or NULL, changing key or value leads to undefined behavior.
- */
-AVDictionaryEntry *
-av_dict_get(AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags);
-
-/**
- * Set the given entry in *pm, overwriting an existing entry.
- *
- * @param pm pointer to a pointer to a dictionary struct. If *pm is NULL
- * a dictionary struct is allocated and put in *pm.
- * @param key entry key to add to *pm (will be av_strduped depending on flags)
- * @param value entry value to add to *pm (will be av_strduped depending on flags).
- *        Passing a NULL value will cause an existing tag to be deleted.
- * @return >= 0 on success otherwise an error code <0
- */
-int av_dict_set(AVDictionary **pm, const char *key, const char *value, int flags);
-
-/**
- * Copy entries from one AVDictionary struct into another.
- * @param dst pointer to a pointer to a AVDictionary struct. If *dst is NULL,
- *            this function will allocate a struct for you and put it in *dst
- * @param src pointer to source AVDictionary struct
- * @param flags flags to use when setting entries in *dst
- * @note metadata is read using the AV_DICT_IGNORE_SUFFIX flag
- */
-void av_dict_copy(AVDictionary **dst, AVDictionary *src, int flags);
-
-/**
- * Free all the memory allocated for an AVDictionary struct
- * and all keys and values.
- */
-void av_dict_free(AVDictionary **m);
-
-/**
- * @}
- */
-
-#endif // AVUTIL_DICT_H
diff --git a/dependencies64/ffmpeg/include/libavutil/error.h b/dependencies64/ffmpeg/include/libavutil/error.h
deleted file mode 100644 (file)
index d3c1465..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * error code definitions
- */
-
-#ifndef AVUTIL_ERROR_H
-#define AVUTIL_ERROR_H
-
-#include <errno.h>
-#include "avutil.h"
-
-/**
- * @addtogroup lavu_error
- *
- * @{
- */
-
-
-/* error handling */
-#if EDOM > 0
-#define AVERROR(e) (-(e))   ///< Returns a negative error code from a POSIX error code, to return from library functions.
-#define AVUNERROR(e) (-(e)) ///< Returns a POSIX error code from a library function error return value.
-#else
-/* Some platforms have E* and errno already negated. */
-#define AVERROR(e) (e)
-#define AVUNERROR(e) (e)
-#endif
-
-#define AVERROR_BSF_NOT_FOUND      (-MKTAG(0xF8,'B','S','F')) ///< Bitstream filter not found
-#define AVERROR_BUG                (-MKTAG( 'B','U','G','!')) ///< Internal bug
-#define AVERROR_DECODER_NOT_FOUND  (-MKTAG(0xF8,'D','E','C')) ///< Decoder not found
-#define AVERROR_DEMUXER_NOT_FOUND  (-MKTAG(0xF8,'D','E','M')) ///< Demuxer not found
-#define AVERROR_ENCODER_NOT_FOUND  (-MKTAG(0xF8,'E','N','C')) ///< Encoder not found
-#define AVERROR_EOF                (-MKTAG( 'E','O','F',' ')) ///< End of file
-#define AVERROR_EXIT               (-MKTAG( 'E','X','I','T')) ///< Immediate exit was requested; the called function should not be restarted
-#define AVERROR_FILTER_NOT_FOUND   (-MKTAG(0xF8,'F','I','L')) ///< Filter not found
-#define AVERROR_INVALIDDATA        (-MKTAG( 'I','N','D','A')) ///< Invalid data found when processing input
-#define AVERROR_MUXER_NOT_FOUND    (-MKTAG(0xF8,'M','U','X')) ///< Muxer not found
-#define AVERROR_OPTION_NOT_FOUND   (-MKTAG(0xF8,'O','P','T')) ///< Option not found
-#define AVERROR_PATCHWELCOME       (-MKTAG( 'P','A','W','E')) ///< Not yet implemented in FFmpeg, patches welcome
-#define AVERROR_PROTOCOL_NOT_FOUND (-MKTAG(0xF8,'P','R','O')) ///< Protocol not found
-#define AVERROR_STREAM_NOT_FOUND   (-MKTAG(0xF8,'S','T','R')) ///< Stream not found
-
-/**
- * Put a description of the AVERROR code errnum in errbuf.
- * In case of failure the global variable errno is set to indicate the
- * error. Even in case of failure av_strerror() will print a generic
- * error message indicating the errnum provided to errbuf.
- *
- * @param errnum      error code to describe
- * @param errbuf      buffer to which description is written
- * @param errbuf_size the size in bytes of errbuf
- * @return 0 on success, a negative value if a description for errnum
- * cannot be found
- */
-int av_strerror(int errnum, char *errbuf, size_t errbuf_size);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_ERROR_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/eval.h b/dependencies64/ffmpeg/include/libavutil/eval.h
deleted file mode 100644 (file)
index ee378a2..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * Copyright (c) 2002 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * simple arithmetic expression evaluator
- */
-
-#ifndef AVUTIL_EVAL_H
-#define AVUTIL_EVAL_H
-
-#include "avutil.h"
-
-typedef struct AVExpr AVExpr;
-
-/**
- * Parse and evaluate an expression.
- * Note, this is significantly slower than av_expr_eval().
- *
- * @param res a pointer to a double where is put the result value of
- * the expression, or NAN in case of error
- * @param s expression as a zero terminated string, for example "1+2^3+5*5+sin(2/3)"
- * @param const_names NULL terminated array of zero terminated strings of constant identifiers, for example {"PI", "E", 0}
- * @param const_values a zero terminated array of values for the identifiers from const_names
- * @param func1_names NULL terminated array of zero terminated strings of funcs1 identifiers
- * @param funcs1 NULL terminated array of function pointers for functions which take 1 argument
- * @param func2_names NULL terminated array of zero terminated strings of funcs2 identifiers
- * @param funcs2 NULL terminated array of function pointers for functions which take 2 arguments
- * @param opaque a pointer which will be passed to all functions from funcs1 and funcs2
- * @param log_ctx parent logging context
- * @return 0 in case of success, a negative value corresponding to an
- * AVERROR code otherwise
- */
-int av_expr_parse_and_eval(double *res, const char *s,
-                           const char * const *const_names, const double *const_values,
-                           const char * const *func1_names, double (* const *funcs1)(void *, double),
-                           const char * const *func2_names, double (* const *funcs2)(void *, double, double),
-                           void *opaque, int log_offset, void *log_ctx);
-
-/**
- * Parse an expression.
- *
- * @param expr a pointer where is put an AVExpr containing the parsed
- * value in case of successfull parsing, or NULL otherwise.
- * The pointed to AVExpr must be freed with av_expr_free() by the user
- * when it is not needed anymore.
- * @param s expression as a zero terminated string, for example "1+2^3+5*5+sin(2/3)"
- * @param const_names NULL terminated array of zero terminated strings of constant identifiers, for example {"PI", "E", 0}
- * @param func1_names NULL terminated array of zero terminated strings of funcs1 identifiers
- * @param funcs1 NULL terminated array of function pointers for functions which take 1 argument
- * @param func2_names NULL terminated array of zero terminated strings of funcs2 identifiers
- * @param funcs2 NULL terminated array of function pointers for functions which take 2 arguments
- * @param log_ctx parent logging context
- * @return 0 in case of success, a negative value corresponding to an
- * AVERROR code otherwise
- */
-int av_expr_parse(AVExpr **expr, const char *s,
-                  const char * const *const_names,
-                  const char * const *func1_names, double (* const *funcs1)(void *, double),
-                  const char * const *func2_names, double (* const *funcs2)(void *, double, double),
-                  int log_offset, void *log_ctx);
-
-/**
- * Evaluate a previously parsed expression.
- *
- * @param const_values a zero terminated array of values for the identifiers from av_expr_parse() const_names
- * @param opaque a pointer which will be passed to all functions from funcs1 and funcs2
- * @return the value of the expression
- */
-double av_expr_eval(AVExpr *e, const double *const_values, void *opaque);
-
-/**
- * Free a parsed expression previously created with av_expr_parse().
- */
-void av_expr_free(AVExpr *e);
-
-#if FF_API_OLD_EVAL_NAMES
-/**
- * @deprecated Deprecated in favor of av_expr_parse_and_eval().
- */
-attribute_deprecated
-int av_parse_and_eval_expr(double *res, const char *s,
-                           const char * const *const_names, const double *const_values,
-                           const char * const *func1_names, double (* const *funcs1)(void *, double),
-                           const char * const *func2_names, double (* const *funcs2)(void *, double, double),
-                           void *opaque, int log_offset, void *log_ctx);
-
-/**
- * @deprecated Deprecated in favor of av_expr_parse().
- */
-attribute_deprecated
-int av_parse_expr(AVExpr **expr, const char *s,
-                  const char * const *const_names,
-                  const char * const *func1_names, double (* const *funcs1)(void *, double),
-                  const char * const *func2_names, double (* const *funcs2)(void *, double, double),
-                  int log_offset, void *log_ctx);
-/**
- * @deprecated Deprecated in favor of av_expr_eval().
- */
-attribute_deprecated
-double av_eval_expr(AVExpr *e, const double *const_values, void *opaque);
-
-/**
- * @deprecated Deprecated in favor of av_expr_free().
- */
-attribute_deprecated
-void av_free_expr(AVExpr *e);
-#endif /* FF_API_OLD_EVAL_NAMES */
-
-/**
- * Parse the string in numstr and return its value as a double. If
- * the string is empty, contains only whitespaces, or does not contain
- * an initial substring that has the expected syntax for a
- * floating-point number, no conversion is performed. In this case,
- * returns a value of zero and the value returned in tail is the value
- * of numstr.
- *
- * @param numstr a string representing a number, may contain one of
- * the International System number postfixes, for example 'K', 'M',
- * 'G'. If 'i' is appended after the postfix, powers of 2 are used
- * instead of powers of 10. The 'B' postfix multiplies the value for
- * 8, and can be appended after another postfix or used alone. This
- * allows using for example 'KB', 'MiB', 'G' and 'B' as postfix.
- * @param tail if non-NULL puts here the pointer to the char next
- * after the last parsed character
- */
-double av_strtod(const char *numstr, char **tail);
-
-#endif /* AVUTIL_EVAL_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/fifo.h b/dependencies64/ffmpeg/include/libavutil/fifo.h
deleted file mode 100644 (file)
index 22a9aa5..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * a very simple circular buffer FIFO implementation
- */
-
-#ifndef AVUTIL_FIFO_H
-#define AVUTIL_FIFO_H
-
-#include <stdint.h>
-#include "avutil.h"
-
-typedef struct AVFifoBuffer {
-    uint8_t *buffer;
-    uint8_t *rptr, *wptr, *end;
-    uint32_t rndx, wndx;
-} AVFifoBuffer;
-
-/**
- * Initialize an AVFifoBuffer.
- * @param size of FIFO
- * @return AVFifoBuffer or NULL in case of memory allocation failure
- */
-AVFifoBuffer *av_fifo_alloc(unsigned int size);
-
-/**
- * Free an AVFifoBuffer.
- * @param f AVFifoBuffer to free
- */
-void av_fifo_free(AVFifoBuffer *f);
-
-/**
- * Reset the AVFifoBuffer to the state right after av_fifo_alloc, in particular it is emptied.
- * @param f AVFifoBuffer to reset
- */
-void av_fifo_reset(AVFifoBuffer *f);
-
-/**
- * Return the amount of data in bytes in the AVFifoBuffer, that is the
- * amount of data you can read from it.
- * @param f AVFifoBuffer to read from
- * @return size
- */
-int av_fifo_size(AVFifoBuffer *f);
-
-/**
- * Return the amount of space in bytes in the AVFifoBuffer, that is the
- * amount of data you can write into it.
- * @param f AVFifoBuffer to write into
- * @return size
- */
-int av_fifo_space(AVFifoBuffer *f);
-
-/**
- * Feed data from an AVFifoBuffer to a user-supplied callback.
- * @param f AVFifoBuffer to read from
- * @param buf_size number of bytes to read
- * @param func generic read function
- * @param dest data destination
- */
-int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int));
-
-/**
- * Feed data from a user-supplied callback to an AVFifoBuffer.
- * @param f AVFifoBuffer to write to
- * @param src data source; non-const since it may be used as a
- * modifiable context by the function defined in func
- * @param size number of bytes to write
- * @param func generic write function; the first parameter is src,
- * the second is dest_buf, the third is dest_buf_size.
- * func must return the number of bytes written to dest_buf, or <= 0 to
- * indicate no more data available to write.
- * If func is NULL, src is interpreted as a simple byte array for source data.
- * @return the number of bytes written to the FIFO
- */
-int av_fifo_generic_write(AVFifoBuffer *f, void *src, int size, int (*func)(void*, void*, int));
-
-/**
- * Resize an AVFifoBuffer.
- * In case of reallocation failure, the old FIFO is kept unchanged.
- *
- * @param f AVFifoBuffer to resize
- * @param size new AVFifoBuffer size in bytes
- * @return <0 for failure, >=0 otherwise
- */
-int av_fifo_realloc2(AVFifoBuffer *f, unsigned int size);
-
-/**
- * Read and discard the specified amount of data from an AVFifoBuffer.
- * @param f AVFifoBuffer to read from
- * @param size amount of data to read in bytes
- */
-void av_fifo_drain(AVFifoBuffer *f, int size);
-
-/**
- * Return a pointer to the data stored in a FIFO buffer at a certain offset.
- * The FIFO buffer is not modified.
- *
- * @param f    AVFifoBuffer to peek at, f must be non-NULL
- * @param offs an offset in bytes, its absolute value must be less
- *             than the used buffer size or the returned pointer will
- *             point outside to the buffer data.
- *             The used buffer size can be checked with av_fifo_size().
- */
-static inline uint8_t *av_fifo_peek2(const AVFifoBuffer *f, int offs)
-{
-    uint8_t *ptr = f->rptr + offs;
-    if (ptr >= f->end)
-        ptr = f->buffer + (ptr - f->end);
-    else if (ptr < f->buffer)
-        ptr = f->end - (f->buffer - ptr);
-    return ptr;
-}
-
-#if FF_API_AV_FIFO_PEEK
-/**
- * @deprecated Use av_fifo_peek2() instead.
- */
-attribute_deprecated
-static inline uint8_t av_fifo_peek(AVFifoBuffer *f, int offs)
-{
-    return *av_fifo_peek2(f, offs);
-}
-#endif
-
-#endif /* AVUTIL_FIFO_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/file.h b/dependencies64/ffmpeg/include/libavutil/file.h
deleted file mode 100644 (file)
index f3af9ef..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_FILE_H
-#define AVUTIL_FILE_H
-
-#include "avutil.h"
-
-/**
- * @file
- * Misc file utilities.
- */
-
-/**
- * Read the file with name filename, and put its content in a newly
- * allocated buffer or map it with mmap() when available.
- * In case of success set *bufptr to the read or mmapped buffer, and
- * *size to the size in bytes of the buffer in *bufptr.
- * The returned buffer must be released with av_file_unmap().
- *
- * @param log_offset loglevel offset used for logging
- * @param log_ctx context used for logging
- * @return a non negative number in case of success, a negative value
- * corresponding to an AVERROR error code in case of failure
- */
-int av_file_map(const char *filename, uint8_t **bufptr, size_t *size,
-                int log_offset, void *log_ctx);
-
-/**
- * Unmap or free the buffer bufptr created by av_file_map().
- *
- * @param size size in bytes of bufptr, must be the same as returned
- * by av_file_map()
- */
-void av_file_unmap(uint8_t *bufptr, size_t size);
-
-/**
- * Wrapper to work around the lack of mkstemp() on mingw.
- * Also, tries to create file in /tmp first, if possible.
- * *prefix can be a character constant; *filename will be allocated internally.
- * @return file descriptor of opened file (or -1 on error)
- * and opened file name in **filename.
- */
-int av_tempfile(const char *prefix, char **filename, int log_offset, void *log_ctx);
-
-#endif /* AVUTIL_FILE_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/imgutils.h b/dependencies64/ffmpeg/include/libavutil/imgutils.h
deleted file mode 100644 (file)
index 9b53815..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_IMGUTILS_H
-#define AVUTIL_IMGUTILS_H
-
-/**
- * @file
- * misc image utilities
- *
- * @addtogroup lavu_picture
- * @{
- */
-
-#include "avutil.h"
-#include "pixdesc.h"
-
-/**
- * Compute the max pixel step for each plane of an image with a
- * format described by pixdesc.
- *
- * The pixel step is the distance in bytes between the first byte of
- * the group of bytes which describe a pixel component and the first
- * byte of the successive group in the same plane for the same
- * component.
- *
- * @param max_pixsteps an array which is filled with the max pixel step
- * for each plane. Since a plane may contain different pixel
- * components, the computed max_pixsteps[plane] is relative to the
- * component in the plane with the max pixel step.
- * @param max_pixstep_comps an array which is filled with the component
- * for each plane which has the max pixel step. May be NULL.
- */
-void av_image_fill_max_pixsteps(int max_pixsteps[4], int max_pixstep_comps[4],
-                                const AVPixFmtDescriptor *pixdesc);
-
-/**
- * Compute the size of an image line with format pix_fmt and width
- * width for the plane plane.
- *
- * @return the computed size in bytes
- */
-int av_image_get_linesize(enum PixelFormat pix_fmt, int width, int plane);
-
-/**
- * Fill plane linesizes for an image with pixel format pix_fmt and
- * width width.
- *
- * @param linesizes array to be filled with the linesize for each plane
- * @return >= 0 in case of success, a negative error code otherwise
- */
-int av_image_fill_linesizes(int linesizes[4], enum PixelFormat pix_fmt, int width);
-
-/**
- * Fill plane data pointers for an image with pixel format pix_fmt and
- * height height.
- *
- * @param data pointers array to be filled with the pointer for each image plane
- * @param ptr the pointer to a buffer which will contain the image
- * @param linesizes the array containing the linesize for each
- * plane, should be filled by av_image_fill_linesizes()
- * @return the size in bytes required for the image buffer, a negative
- * error code in case of failure
- */
-int av_image_fill_pointers(uint8_t *data[4], enum PixelFormat pix_fmt, int height,
-                           uint8_t *ptr, const int linesizes[4]);
-
-/**
- * Allocate an image with size w and h and pixel format pix_fmt, and
- * fill pointers and linesizes accordingly.
- * The allocated image buffer has to be freed by using
- * av_freep(&pointers[0]).
- *
- * @param align the value to use for buffer size alignment
- * @return the size in bytes required for the image buffer, a negative
- * error code in case of failure
- */
-int av_image_alloc(uint8_t *pointers[4], int linesizes[4],
-                   int w, int h, enum PixelFormat pix_fmt, int align);
-
-/**
- * Copy image plane from src to dst.
- * That is, copy "height" number of lines of "bytewidth" bytes each.
- * The first byte of each successive line is separated by *_linesize
- * bytes.
- *
- * @param dst_linesize linesize for the image plane in dst
- * @param src_linesize linesize for the image plane in src
- */
-void av_image_copy_plane(uint8_t       *dst, int dst_linesize,
-                         const uint8_t *src, int src_linesize,
-                         int bytewidth, int height);
-
-/**
- * Copy image in src_data to dst_data.
- *
- * @param dst_linesizes linesizes for the image in dst_data
- * @param src_linesizes linesizes for the image in src_data
- */
-void av_image_copy(uint8_t *dst_data[4], int dst_linesizes[4],
-                   const uint8_t *src_data[4], const int src_linesizes[4],
-                   enum PixelFormat pix_fmt, int width, int height);
-
-/**
- * Check if the given dimension of an image is valid, meaning that all
- * bytes of the image can be addressed with a signed int.
- *
- * @param w the width of the picture
- * @param h the height of the picture
- * @param log_offset the offset to sum to the log level for logging with log_ctx
- * @param log_ctx the parent logging context, it may be NULL
- * @return >= 0 if valid, a negative error code otherwise
- */
-int av_image_check_size(unsigned int w, unsigned int h, int log_offset, void *log_ctx);
-
-int ff_set_systematic_pal2(uint32_t pal[256], enum PixelFormat pix_fmt);
-
-/**
- * @}
- */
-
-
-#endif /* AVUTIL_IMGUTILS_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/intfloat_readwrite.h b/dependencies64/ffmpeg/include/libavutil/intfloat_readwrite.h
deleted file mode 100644 (file)
index 1b80fc6..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * copyright (c) 2005 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_INTFLOAT_READWRITE_H
-#define AVUTIL_INTFLOAT_READWRITE_H
-
-#include <stdint.h>
-#include "attributes.h"
-
-/* IEEE 80 bits extended float */
-typedef struct AVExtFloat  {
-    uint8_t exponent[2];
-    uint8_t mantissa[8];
-} AVExtFloat;
-
-double av_int2dbl(int64_t v) av_const;
-float av_int2flt(int32_t v) av_const;
-double av_ext2dbl(const AVExtFloat ext) av_const;
-int64_t av_dbl2int(double d) av_const;
-int32_t av_flt2int(float d) av_const;
-AVExtFloat av_dbl2ext(double d) av_const;
-
-#endif /* AVUTIL_INTFLOAT_READWRITE_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/intreadwrite.h b/dependencies64/ffmpeg/include/libavutil/intreadwrite.h
deleted file mode 100644 (file)
index 09d796c..0000000
+++ /dev/null
@@ -1,522 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_INTREADWRITE_H
-#define AVUTIL_INTREADWRITE_H
-
-#include <stdint.h>
-#include "libavutil/avconfig.h"
-#include "attributes.h"
-#include "bswap.h"
-
-typedef union {
-    uint64_t u64;
-    uint32_t u32[2];
-    uint16_t u16[4];
-    uint8_t  u8 [8];
-    double   f64;
-    float    f32[2];
-} av_alias av_alias64;
-
-typedef union {
-    uint32_t u32;
-    uint16_t u16[2];
-    uint8_t  u8 [4];
-    float    f32;
-} av_alias av_alias32;
-
-typedef union {
-    uint16_t u16;
-    uint8_t  u8 [2];
-} av_alias av_alias16;
-
-/*
- * Arch-specific headers can provide any combination of
- * AV_[RW][BLN](16|24|32|64) and AV_(COPY|SWAP|ZERO)(64|128) macros.
- * Preprocessor symbols must be defined, even if these are implemented
- * as inline functions.
- */
-
-#ifdef HAVE_AV_CONFIG_H
-
-#include "config.h"
-
-#if   ARCH_ARM
-#   include "arm/intreadwrite.h"
-#elif ARCH_AVR32
-#   include "avr32/intreadwrite.h"
-#elif ARCH_MIPS
-#   include "mips/intreadwrite.h"
-#elif ARCH_PPC
-#   include "ppc/intreadwrite.h"
-#elif ARCH_TOMI
-#   include "tomi/intreadwrite.h"
-#elif ARCH_X86
-#   include "x86/intreadwrite.h"
-#endif
-
-#endif /* HAVE_AV_CONFIG_H */
-
-/*
- * Map AV_RNXX <-> AV_R[BL]XX for all variants provided by per-arch headers.
- */
-
-#if AV_HAVE_BIGENDIAN
-
-#   if    defined(AV_RN16) && !defined(AV_RB16)
-#       define AV_RB16(p) AV_RN16(p)
-#   elif !defined(AV_RN16) &&  defined(AV_RB16)
-#       define AV_RN16(p) AV_RB16(p)
-#   endif
-
-#   if    defined(AV_WN16) && !defined(AV_WB16)
-#       define AV_WB16(p, v) AV_WN16(p, v)
-#   elif !defined(AV_WN16) &&  defined(AV_WB16)
-#       define AV_WN16(p, v) AV_WB16(p, v)
-#   endif
-
-#   if    defined(AV_RN24) && !defined(AV_RB24)
-#       define AV_RB24(p) AV_RN24(p)
-#   elif !defined(AV_RN24) &&  defined(AV_RB24)
-#       define AV_RN24(p) AV_RB24(p)
-#   endif
-
-#   if    defined(AV_WN24) && !defined(AV_WB24)
-#       define AV_WB24(p, v) AV_WN24(p, v)
-#   elif !defined(AV_WN24) &&  defined(AV_WB24)
-#       define AV_WN24(p, v) AV_WB24(p, v)
-#   endif
-
-#   if    defined(AV_RN32) && !defined(AV_RB32)
-#       define AV_RB32(p) AV_RN32(p)
-#   elif !defined(AV_RN32) &&  defined(AV_RB32)
-#       define AV_RN32(p) AV_RB32(p)
-#   endif
-
-#   if    defined(AV_WN32) && !defined(AV_WB32)
-#       define AV_WB32(p, v) AV_WN32(p, v)
-#   elif !defined(AV_WN32) &&  defined(AV_WB32)
-#       define AV_WN32(p, v) AV_WB32(p, v)
-#   endif
-
-#   if    defined(AV_RN64) && !defined(AV_RB64)
-#       define AV_RB64(p) AV_RN64(p)
-#   elif !defined(AV_RN64) &&  defined(AV_RB64)
-#       define AV_RN64(p) AV_RB64(p)
-#   endif
-
-#   if    defined(AV_WN64) && !defined(AV_WB64)
-#       define AV_WB64(p, v) AV_WN64(p, v)
-#   elif !defined(AV_WN64) &&  defined(AV_WB64)
-#       define AV_WN64(p, v) AV_WB64(p, v)
-#   endif
-
-#else /* AV_HAVE_BIGENDIAN */
-
-#   if    defined(AV_RN16) && !defined(AV_RL16)
-#       define AV_RL16(p) AV_RN16(p)
-#   elif !defined(AV_RN16) &&  defined(AV_RL16)
-#       define AV_RN16(p) AV_RL16(p)
-#   endif
-
-#   if    defined(AV_WN16) && !defined(AV_WL16)
-#       define AV_WL16(p, v) AV_WN16(p, v)
-#   elif !defined(AV_WN16) &&  defined(AV_WL16)
-#       define AV_WN16(p, v) AV_WL16(p, v)
-#   endif
-
-#   if    defined(AV_RN24) && !defined(AV_RL24)
-#       define AV_RL24(p) AV_RN24(p)
-#   elif !defined(AV_RN24) &&  defined(AV_RL24)
-#       define AV_RN24(p) AV_RL24(p)
-#   endif
-
-#   if    defined(AV_WN24) && !defined(AV_WL24)
-#       define AV_WL24(p, v) AV_WN24(p, v)
-#   elif !defined(AV_WN24) &&  defined(AV_WL24)
-#       define AV_WN24(p, v) AV_WL24(p, v)
-#   endif
-
-#   if    defined(AV_RN32) && !defined(AV_RL32)
-#       define AV_RL32(p) AV_RN32(p)
-#   elif !defined(AV_RN32) &&  defined(AV_RL32)
-#       define AV_RN32(p) AV_RL32(p)
-#   endif
-
-#   if    defined(AV_WN32) && !defined(AV_WL32)
-#       define AV_WL32(p, v) AV_WN32(p, v)
-#   elif !defined(AV_WN32) &&  defined(AV_WL32)
-#       define AV_WN32(p, v) AV_WL32(p, v)
-#   endif
-
-#   if    defined(AV_RN64) && !defined(AV_RL64)
-#       define AV_RL64(p) AV_RN64(p)
-#   elif !defined(AV_RN64) &&  defined(AV_RL64)
-#       define AV_RN64(p) AV_RL64(p)
-#   endif
-
-#   if    defined(AV_WN64) && !defined(AV_WL64)
-#       define AV_WL64(p, v) AV_WN64(p, v)
-#   elif !defined(AV_WN64) &&  defined(AV_WL64)
-#       define AV_WN64(p, v) AV_WL64(p, v)
-#   endif
-
-#endif /* !AV_HAVE_BIGENDIAN */
-
-/*
- * Define AV_[RW]N helper macros to simplify definitions not provided
- * by per-arch headers.
- */
-
-#if defined(__GNUC__) && !defined(__TI_COMPILER_VERSION__)
-
-union unaligned_64 { uint64_t l; } __attribute__((packed)) av_alias;
-union unaligned_32 { uint32_t l; } __attribute__((packed)) av_alias;
-union unaligned_16 { uint16_t l; } __attribute__((packed)) av_alias;
-
-#   define AV_RN(s, p) (((const union unaligned_##s *) (p))->l)
-#   define AV_WN(s, p, v) ((((union unaligned_##s *) (p))->l) = (v))
-
-#elif defined(__DECC)
-
-#   define AV_RN(s, p) (*((const __unaligned uint##s##_t*)(p)))
-#   define AV_WN(s, p, v) (*((__unaligned uint##s##_t*)(p)) = (v))
-
-#elif AV_HAVE_FAST_UNALIGNED
-
-#   define AV_RN(s, p) (((const av_alias##s*)(p))->u##s)
-#   define AV_WN(s, p, v) (((av_alias##s*)(p))->u##s = (v))
-
-#else
-
-#ifndef AV_RB16
-#   define AV_RB16(x)                           \
-    ((((const uint8_t*)(x))[0] << 8) |          \
-      ((const uint8_t*)(x))[1])
-#endif
-#ifndef AV_WB16
-#   define AV_WB16(p, d) do {                   \
-        ((uint8_t*)(p))[1] = (d);               \
-        ((uint8_t*)(p))[0] = (d)>>8;            \
-    } while(0)
-#endif
-
-#ifndef AV_RL16
-#   define AV_RL16(x)                           \
-    ((((const uint8_t*)(x))[1] << 8) |          \
-      ((const uint8_t*)(x))[0])
-#endif
-#ifndef AV_WL16
-#   define AV_WL16(p, d) do {                   \
-        ((uint8_t*)(p))[0] = (d);               \
-        ((uint8_t*)(p))[1] = (d)>>8;            \
-    } while(0)
-#endif
-
-#ifndef AV_RB32
-#   define AV_RB32(x)                                \
-    (((uint32_t)((const uint8_t*)(x))[0] << 24) |    \
-               (((const uint8_t*)(x))[1] << 16) |    \
-               (((const uint8_t*)(x))[2] <<  8) |    \
-                ((const uint8_t*)(x))[3])
-#endif
-#ifndef AV_WB32
-#   define AV_WB32(p, d) do {                   \
-        ((uint8_t*)(p))[3] = (d);               \
-        ((uint8_t*)(p))[2] = (d)>>8;            \
-        ((uint8_t*)(p))[1] = (d)>>16;           \
-        ((uint8_t*)(p))[0] = (d)>>24;           \
-    } while(0)
-#endif
-
-#ifndef AV_RL32
-#   define AV_RL32(x)                                \
-    (((uint32_t)((const uint8_t*)(x))[3] << 24) |    \
-               (((const uint8_t*)(x))[2] << 16) |    \
-               (((const uint8_t*)(x))[1] <<  8) |    \
-                ((const uint8_t*)(x))[0])
-#endif
-#ifndef AV_WL32
-#   define AV_WL32(p, d) do {                   \
-        ((uint8_t*)(p))[0] = (d);               \
-        ((uint8_t*)(p))[1] = (d)>>8;            \
-        ((uint8_t*)(p))[2] = (d)>>16;           \
-        ((uint8_t*)(p))[3] = (d)>>24;           \
-    } while(0)
-#endif
-
-#ifndef AV_RB64
-#   define AV_RB64(x)                                   \
-    (((uint64_t)((const uint8_t*)(x))[0] << 56) |       \
-     ((uint64_t)((const uint8_t*)(x))[1] << 48) |       \
-     ((uint64_t)((const uint8_t*)(x))[2] << 40) |       \
-     ((uint64_t)((const uint8_t*)(x))[3] << 32) |       \
-     ((uint64_t)((const uint8_t*)(x))[4] << 24) |       \
-     ((uint64_t)((const uint8_t*)(x))[5] << 16) |       \
-     ((uint64_t)((const uint8_t*)(x))[6] <<  8) |       \
-      (uint64_t)((const uint8_t*)(x))[7])
-#endif
-#ifndef AV_WB64
-#   define AV_WB64(p, d) do {                   \
-        ((uint8_t*)(p))[7] = (d);               \
-        ((uint8_t*)(p))[6] = (d)>>8;            \
-        ((uint8_t*)(p))[5] = (d)>>16;           \
-        ((uint8_t*)(p))[4] = (d)>>24;           \
-        ((uint8_t*)(p))[3] = (d)>>32;           \
-        ((uint8_t*)(p))[2] = (d)>>40;           \
-        ((uint8_t*)(p))[1] = (d)>>48;           \
-        ((uint8_t*)(p))[0] = (d)>>56;           \
-    } while(0)
-#endif
-
-#ifndef AV_RL64
-#   define AV_RL64(x)                                   \
-    (((uint64_t)((const uint8_t*)(x))[7] << 56) |       \
-     ((uint64_t)((const uint8_t*)(x))[6] << 48) |       \
-     ((uint64_t)((const uint8_t*)(x))[5] << 40) |       \
-     ((uint64_t)((const uint8_t*)(x))[4] << 32) |       \
-     ((uint64_t)((const uint8_t*)(x))[3] << 24) |       \
-     ((uint64_t)((const uint8_t*)(x))[2] << 16) |       \
-     ((uint64_t)((const uint8_t*)(x))[1] <<  8) |       \
-      (uint64_t)((const uint8_t*)(x))[0])
-#endif
-#ifndef AV_WL64
-#   define AV_WL64(p, d) do {                   \
-        ((uint8_t*)(p))[0] = (d);               \
-        ((uint8_t*)(p))[1] = (d)>>8;            \
-        ((uint8_t*)(p))[2] = (d)>>16;           \
-        ((uint8_t*)(p))[3] = (d)>>24;           \
-        ((uint8_t*)(p))[4] = (d)>>32;           \
-        ((uint8_t*)(p))[5] = (d)>>40;           \
-        ((uint8_t*)(p))[6] = (d)>>48;           \
-        ((uint8_t*)(p))[7] = (d)>>56;           \
-    } while(0)
-#endif
-
-#if AV_HAVE_BIGENDIAN
-#   define AV_RN(s, p)    AV_RB##s(p)
-#   define AV_WN(s, p, v) AV_WB##s(p, v)
-#else
-#   define AV_RN(s, p)    AV_RL##s(p)
-#   define AV_WN(s, p, v) AV_WL##s(p, v)
-#endif
-
-#endif /* HAVE_FAST_UNALIGNED */
-
-#ifndef AV_RN16
-#   define AV_RN16(p) AV_RN(16, p)
-#endif
-
-#ifndef AV_RN32
-#   define AV_RN32(p) AV_RN(32, p)
-#endif
-
-#ifndef AV_RN64
-#   define AV_RN64(p) AV_RN(64, p)
-#endif
-
-#ifndef AV_WN16
-#   define AV_WN16(p, v) AV_WN(16, p, v)
-#endif
-
-#ifndef AV_WN32
-#   define AV_WN32(p, v) AV_WN(32, p, v)
-#endif
-
-#ifndef AV_WN64
-#   define AV_WN64(p, v) AV_WN(64, p, v)
-#endif
-
-#if AV_HAVE_BIGENDIAN
-#   define AV_RB(s, p)    AV_RN##s(p)
-#   define AV_WB(s, p, v) AV_WN##s(p, v)
-#   define AV_RL(s, p)    av_bswap##s(AV_RN##s(p))
-#   define AV_WL(s, p, v) AV_WN##s(p, av_bswap##s(v))
-#else
-#   define AV_RB(s, p)    av_bswap##s(AV_RN##s(p))
-#   define AV_WB(s, p, v) AV_WN##s(p, av_bswap##s(v))
-#   define AV_RL(s, p)    AV_RN##s(p)
-#   define AV_WL(s, p, v) AV_WN##s(p, v)
-#endif
-
-#define AV_RB8(x)     (((const uint8_t*)(x))[0])
-#define AV_WB8(p, d)  do { ((uint8_t*)(p))[0] = (d); } while(0)
-
-#define AV_RL8(x)     AV_RB8(x)
-#define AV_WL8(p, d)  AV_WB8(p, d)
-
-#ifndef AV_RB16
-#   define AV_RB16(p)    AV_RB(16, p)
-#endif
-#ifndef AV_WB16
-#   define AV_WB16(p, v) AV_WB(16, p, v)
-#endif
-
-#ifndef AV_RL16
-#   define AV_RL16(p)    AV_RL(16, p)
-#endif
-#ifndef AV_WL16
-#   define AV_WL16(p, v) AV_WL(16, p, v)
-#endif
-
-#ifndef AV_RB32
-#   define AV_RB32(p)    AV_RB(32, p)
-#endif
-#ifndef AV_WB32
-#   define AV_WB32(p, v) AV_WB(32, p, v)
-#endif
-
-#ifndef AV_RL32
-#   define AV_RL32(p)    AV_RL(32, p)
-#endif
-#ifndef AV_WL32
-#   define AV_WL32(p, v) AV_WL(32, p, v)
-#endif
-
-#ifndef AV_RB64
-#   define AV_RB64(p)    AV_RB(64, p)
-#endif
-#ifndef AV_WB64
-#   define AV_WB64(p, v) AV_WB(64, p, v)
-#endif
-
-#ifndef AV_RL64
-#   define AV_RL64(p)    AV_RL(64, p)
-#endif
-#ifndef AV_WL64
-#   define AV_WL64(p, v) AV_WL(64, p, v)
-#endif
-
-#ifndef AV_RB24
-#   define AV_RB24(x)                           \
-    ((((const uint8_t*)(x))[0] << 16) |         \
-     (((const uint8_t*)(x))[1] <<  8) |         \
-      ((const uint8_t*)(x))[2])
-#endif
-#ifndef AV_WB24
-#   define AV_WB24(p, d) do {                   \
-        ((uint8_t*)(p))[2] = (d);               \
-        ((uint8_t*)(p))[1] = (d)>>8;            \
-        ((uint8_t*)(p))[0] = (d)>>16;           \
-    } while(0)
-#endif
-
-#ifndef AV_RL24
-#   define AV_RL24(x)                           \
-    ((((const uint8_t*)(x))[2] << 16) |         \
-     (((const uint8_t*)(x))[1] <<  8) |         \
-      ((const uint8_t*)(x))[0])
-#endif
-#ifndef AV_WL24
-#   define AV_WL24(p, d) do {                   \
-        ((uint8_t*)(p))[0] = (d);               \
-        ((uint8_t*)(p))[1] = (d)>>8;            \
-        ((uint8_t*)(p))[2] = (d)>>16;           \
-    } while(0)
-#endif
-
-/*
- * The AV_[RW]NA macros access naturally aligned data
- * in a type-safe way.
- */
-
-#define AV_RNA(s, p)    (((const av_alias##s*)(p))->u##s)
-#define AV_WNA(s, p, v) (((av_alias##s*)(p))->u##s = (v))
-
-#ifndef AV_RN16A
-#   define AV_RN16A(p) AV_RNA(16, p)
-#endif
-
-#ifndef AV_RN32A
-#   define AV_RN32A(p) AV_RNA(32, p)
-#endif
-
-#ifndef AV_RN64A
-#   define AV_RN64A(p) AV_RNA(64, p)
-#endif
-
-#ifndef AV_WN16A
-#   define AV_WN16A(p, v) AV_WNA(16, p, v)
-#endif
-
-#ifndef AV_WN32A
-#   define AV_WN32A(p, v) AV_WNA(32, p, v)
-#endif
-
-#ifndef AV_WN64A
-#   define AV_WN64A(p, v) AV_WNA(64, p, v)
-#endif
-
-/* Parameters for AV_COPY*, AV_SWAP*, AV_ZERO* must be
- * naturally aligned. They may be implemented using MMX,
- * so emms_c() must be called before using any float code
- * afterwards.
- */
-
-#define AV_COPY(n, d, s) \
-    (((av_alias##n*)(d))->u##n = ((const av_alias##n*)(s))->u##n)
-
-#ifndef AV_COPY16
-#   define AV_COPY16(d, s) AV_COPY(16, d, s)
-#endif
-
-#ifndef AV_COPY32
-#   define AV_COPY32(d, s) AV_COPY(32, d, s)
-#endif
-
-#ifndef AV_COPY64
-#   define AV_COPY64(d, s) AV_COPY(64, d, s)
-#endif
-
-#ifndef AV_COPY128
-#   define AV_COPY128(d, s)                    \
-    do {                                       \
-        AV_COPY64(d, s);                       \
-        AV_COPY64((char*)(d)+8, (char*)(s)+8); \
-    } while(0)
-#endif
-
-#define AV_SWAP(n, a, b) FFSWAP(av_alias##n, *(av_alias##n*)(a), *(av_alias##n*)(b))
-
-#ifndef AV_SWAP64
-#   define AV_SWAP64(a, b) AV_SWAP(64, a, b)
-#endif
-
-#define AV_ZERO(n, d) (((av_alias##n*)(d))->u##n = 0)
-
-#ifndef AV_ZERO16
-#   define AV_ZERO16(d) AV_ZERO(16, d)
-#endif
-
-#ifndef AV_ZERO32
-#   define AV_ZERO32(d) AV_ZERO(32, d)
-#endif
-
-#ifndef AV_ZERO64
-#   define AV_ZERO64(d) AV_ZERO(64, d)
-#endif
-
-#ifndef AV_ZERO128
-#   define AV_ZERO128(d)         \
-    do {                         \
-        AV_ZERO64(d);            \
-        AV_ZERO64((char*)(d)+8); \
-    } while(0)
-#endif
-
-#endif /* AVUTIL_INTREADWRITE_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/lfg.h b/dependencies64/ffmpeg/include/libavutil/lfg.h
deleted file mode 100644 (file)
index 854ffce..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Lagged Fibonacci PRNG
- * Copyright (c) 2008 Michael Niedermayer
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_LFG_H
-#define AVUTIL_LFG_H
-
-typedef struct {
-    unsigned int state[64];
-    int index;
-} AVLFG;
-
-void av_lfg_init(AVLFG *c, unsigned int seed);
-
-/**
- * Get the next random unsigned 32-bit number using an ALFG.
- *
- * Please also consider a simple LCG like state= state*1664525+1013904223,
- * it may be good enough and faster for your specific use case.
- */
-static inline unsigned int av_lfg_get(AVLFG *c){
-    c->state[c->index & 63] = c->state[(c->index-24) & 63] + c->state[(c->index-55) & 63];
-    return c->state[c->index++ & 63];
-}
-
-/**
- * Get the next random unsigned 32-bit number using a MLFG.
- *
- * Please also consider av_lfg_get() above, it is faster.
- */
-static inline unsigned int av_mlfg_get(AVLFG *c){
-    unsigned int a= c->state[(c->index-55) & 63];
-    unsigned int b= c->state[(c->index-24) & 63];
-    return c->state[c->index++ & 63] = 2*a*b+a+b;
-}
-
-/**
- * Get the next two numbers generated by a Box-Muller Gaussian
- * generator using the random numbers issued by lfg.
- *
- * @param out array where the two generated numbers are placed
- */
-void av_bmg_get(AVLFG *lfg, double out[2]);
-
-#endif /* AVUTIL_LFG_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/log.h b/dependencies64/ffmpeg/include/libavutil/log.h
deleted file mode 100644 (file)
index b868330..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_LOG_H
-#define AVUTIL_LOG_H
-
-#include <stdarg.h>
-#include "avutil.h"
-#include "attributes.h"
-
-/**
- * Describe the class of an AVClass context structure. That is an
- * arbitrary struct of which the first field is a pointer to an
- * AVClass struct (e.g. AVCodecContext, AVFormatContext etc.).
- */
-typedef struct AVClass {
-    /**
-     * The name of the class; usually it is the same name as the
-     * context structure type to which the AVClass is associated.
-     */
-    const char* class_name;
-
-    /**
-     * A pointer to a function which returns the name of a context
-     * instance ctx associated with the class.
-     */
-    const char* (*item_name)(void* ctx);
-
-    /**
-     * a pointer to the first option specified in the class if any or NULL
-     *
-     * @see av_set_default_options()
-     */
-    const struct AVOption *option;
-
-    /**
-     * LIBAVUTIL_VERSION with which this structure was created.
-     * This is used to allow fields to be added without requiring major
-     * version bumps everywhere.
-     */
-
-    int version;
-
-    /**
-     * Offset in the structure where log_level_offset is stored.
-     * 0 means there is no such variable
-     */
-    int log_level_offset_offset;
-
-    /**
-     * Offset in the structure where a pointer to the parent context for loging is stored.
-     * for example a decoder that uses eval.c could pass its AVCodecContext to eval as such
-     * parent context. And a av_log() implementation could then display the parent context
-     * can be NULL of course
-     */
-    int parent_log_context_offset;
-
-    /**
-     * Return next AVOptions-enabled child or NULL
-     */
-    void* (*child_next)(void *obj, void *prev);
-
-    /**
-     * Return an AVClass corresponding to next potential
-     * AVOptions-enabled child.
-     *
-     * The difference between child_next and this is that
-     * child_next iterates over _already existing_ objects, while
-     * child_class_next iterates over _all possible_ children.
-     */
-    const struct AVClass* (*child_class_next)(const struct AVClass *prev);
-} AVClass;
-
-/* av_log API */
-
-#define AV_LOG_QUIET    -8
-
-/**
- * Something went really wrong and we will crash now.
- */
-#define AV_LOG_PANIC     0
-
-/**
- * Something went wrong and recovery is not possible.
- * For example, no header was found for a format which depends
- * on headers or an illegal combination of parameters is used.
- */
-#define AV_LOG_FATAL     8
-
-/**
- * Something went wrong and cannot losslessly be recovered.
- * However, not all future data is affected.
- */
-#define AV_LOG_ERROR    16
-
-/**
- * Something somehow does not look correct. This may or may not
- * lead to problems. An example would be the use of '-vstrict -2'.
- */
-#define AV_LOG_WARNING  24
-
-#define AV_LOG_INFO     32
-#define AV_LOG_VERBOSE  40
-
-/**
- * Stuff which is only useful for libav* developers.
- */
-#define AV_LOG_DEBUG    48
-
-/**
- * Send the specified message to the log if the level is less than or equal
- * to the current av_log_level. By default, all logging messages are sent to
- * stderr. This behavior can be altered by setting a different av_vlog callback
- * function.
- *
- * @param avcl A pointer to an arbitrary struct of which the first field is a
- * pointer to an AVClass struct.
- * @param level The importance level of the message, lower values signifying
- * higher importance.
- * @param fmt The format string (printf-compatible) that specifies how
- * subsequent arguments are converted to output.
- * @see av_vlog
- */
-void av_log(void *avcl, int level, const char *fmt, ...) av_printf_format(3, 4);
-
-void av_vlog(void *avcl, int level, const char *fmt, va_list);
-int av_log_get_level(void);
-void av_log_set_level(int);
-void av_log_set_callback(void (*)(void*, int, const char*, va_list));
-void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl);
-const char* av_default_item_name(void* ctx);
-
-/**
- * av_dlog macros
- * Useful to print debug messages that shouldn't get compiled in normally.
- */
-
-#ifdef DEBUG
-#    define av_dlog(pctx, ...) av_log(pctx, AV_LOG_DEBUG, __VA_ARGS__)
-#else
-#    define av_dlog(pctx, ...) do { if (0) av_log(pctx, AV_LOG_DEBUG, __VA_ARGS__); } while (0)
-#endif
-
-/**
- * Skip repeated messages, this requires the user app to use av_log() instead of
- * (f)printf as the 2 would otherwise interfere and lead to
- * "Last message repeated x times" messages below (f)printf messages with some
- * bad luck.
- * Also to receive the last, "last repeated" line if any, the user app must
- * call av_log(NULL, AV_LOG_QUIET, "%s", ""); at the end
- */
-#define AV_LOG_SKIP_REPEATED 1
-void av_log_set_flags(int arg);
-
-#endif /* AVUTIL_LOG_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/lzo.h b/dependencies64/ffmpeg/include/libavutil/lzo.h
deleted file mode 100644 (file)
index 1603d3b..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * LZO 1x decompression
- * copyright (c) 2006 Reimar Doeffinger
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_LZO_H
-#define AVUTIL_LZO_H
-
-/**
- * @defgroup lavu_lzo LZO
- * @ingroup lavu_crypto
- *
- * @{
- */
-
-#include <stdint.h>
-
-/** @name Error flags returned by av_lzo1x_decode
-  * \{ */
-//! end of the input buffer reached before decoding finished
-#define AV_LZO_INPUT_DEPLETED 1
-//! decoded data did not fit into output buffer
-#define AV_LZO_OUTPUT_FULL 2
-//! a reference to previously decoded data was wrong
-#define AV_LZO_INVALID_BACKPTR 4
-//! a non-specific error in the compressed bitstream
-#define AV_LZO_ERROR 8
-/** \} */
-
-#define AV_LZO_INPUT_PADDING 8
-#define AV_LZO_OUTPUT_PADDING 12
-
-/**
- * @brief Decodes LZO 1x compressed data.
- * @param out output buffer
- * @param outlen size of output buffer, number of bytes left are returned here
- * @param in input buffer
- * @param inlen size of input buffer, number of bytes left are returned here
- * @return 0 on success, otherwise a combination of the error flags above
- *
- * Make sure all buffers are appropriately padded, in must provide
- * AV_LZO_INPUT_PADDING, out must provide AV_LZO_OUTPUT_PADDING additional bytes.
- */
-int av_lzo1x_decode(void *out, int *outlen, const void *in, int *inlen);
-
-/**
- * @brief deliberately overlapping memcpy implementation
- * @param dst destination buffer; must be padded with 12 additional bytes
- * @param back how many bytes back we start (the initial size of the overlapping window)
- * @param cnt number of bytes to copy, must be >= 0
- *
- * cnt > back is valid, this will copy the bytes we just copied,
- * thus creating a repeating pattern with a period length of back.
- */
-void av_memcpy_backptr(uint8_t *dst, int back, int cnt);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_LZO_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/mathematics.h b/dependencies64/ffmpeg/include/libavutil/mathematics.h
deleted file mode 100644 (file)
index ad39e26..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * copyright (c) 2005 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_MATHEMATICS_H
-#define AVUTIL_MATHEMATICS_H
-
-#include <stdint.h>
-#include <math.h>
-#include "attributes.h"
-#include "rational.h"
-
-#ifndef M_E
-#define M_E            2.7182818284590452354   /* e */
-#endif
-#ifndef M_LN2
-#define M_LN2          0.69314718055994530942  /* log_e 2 */
-#endif
-#ifndef M_LN10
-#define M_LN10         2.30258509299404568402  /* log_e 10 */
-#endif
-#ifndef M_LOG2_10
-#define M_LOG2_10      3.32192809488736234787  /* log_2 10 */
-#endif
-#ifndef M_PHI
-#define M_PHI          1.61803398874989484820   /* phi / golden ratio */
-#endif
-#ifndef M_PI
-#define M_PI           3.14159265358979323846  /* pi */
-#endif
-#ifndef M_SQRT1_2
-#define M_SQRT1_2      0.70710678118654752440  /* 1/sqrt(2) */
-#endif
-#ifndef M_SQRT2
-#define M_SQRT2        1.41421356237309504880  /* sqrt(2) */
-#endif
-#ifndef NAN
-#define NAN            (0.0/0.0)
-#endif
-#ifndef INFINITY
-#define INFINITY       (1.0/0.0)
-#endif
-
-/**
- * @addtogroup lavu_math
- * @{
- */
-
-
-enum AVRounding {
-    AV_ROUND_ZERO     = 0, ///< Round toward zero.
-    AV_ROUND_INF      = 1, ///< Round away from zero.
-    AV_ROUND_DOWN     = 2, ///< Round toward -infinity.
-    AV_ROUND_UP       = 3, ///< Round toward +infinity.
-    AV_ROUND_NEAR_INF = 5, ///< Round to nearest and halfway cases away from zero.
-};
-
-/**
- * Return the greatest common divisor of a and b.
- * If both a and b are 0 or either or both are <0 then behavior is
- * undefined.
- */
-int64_t av_const av_gcd(int64_t a, int64_t b);
-
-/**
- * Rescale a 64-bit integer with rounding to nearest.
- * A simple a*b/c isn't possible as it can overflow.
- */
-int64_t av_rescale(int64_t a, int64_t b, int64_t c) av_const;
-
-/**
- * Rescale a 64-bit integer with specified rounding.
- * A simple a*b/c isn't possible as it can overflow.
- */
-int64_t av_rescale_rnd(int64_t a, int64_t b, int64_t c, enum AVRounding) av_const;
-
-/**
- * Rescale a 64-bit integer by 2 rational numbers.
- */
-int64_t av_rescale_q(int64_t a, AVRational bq, AVRational cq) av_const;
-
-/**
- * Compare 2 timestamps each in its own timebases.
- * The result of the function is undefined if one of the timestamps
- * is outside the int64_t range when represented in the others timebase.
- * @return -1 if ts_a is before ts_b, 1 if ts_a is after ts_b or 0 if they represent the same position
- */
-int av_compare_ts(int64_t ts_a, AVRational tb_a, int64_t ts_b, AVRational tb_b);
-
-/**
- * Compare 2 integers modulo mod.
- * That is we compare integers a and b for which only the least
- * significant log2(mod) bits are known.
- *
- * @param mod must be a power of 2
- * @return a negative value if a is smaller than b
- *         a positive value if a is greater than b
- *         0                if a equals          b
- */
-int64_t av_compare_mod(uint64_t a, uint64_t b, uint64_t mod);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_MATHEMATICS_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/md5.h b/dependencies64/ffmpeg/include/libavutil/md5.h
deleted file mode 100644 (file)
index 1333ab2..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_MD5_H
-#define AVUTIL_MD5_H
-
-#include <stdint.h>
-
-/**
- * @defgroup lavu_md5 MD5
- * @ingroup lavu_crypto
- * @{
- */
-
-extern const int av_md5_size;
-
-struct AVMD5;
-
-void av_md5_init(struct AVMD5 *ctx);
-void av_md5_update(struct AVMD5 *ctx, const uint8_t *src, const int len);
-void av_md5_final(struct AVMD5 *ctx, uint8_t *dst);
-void av_md5_sum(uint8_t *dst, const uint8_t *src, const int len);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_MD5_H */
-
diff --git a/dependencies64/ffmpeg/include/libavutil/mem.h b/dependencies64/ffmpeg/include/libavutil/mem.h
deleted file mode 100644 (file)
index f148c63..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * memory handling functions
- */
-
-#ifndef AVUTIL_MEM_H
-#define AVUTIL_MEM_H
-
-#include "attributes.h"
-#include "error.h"
-#include "avutil.h"
-
-/**
- * @addtogroup lavu_mem
- * @{
- */
-
-
-#if defined(__INTEL_COMPILER) && __INTEL_COMPILER < 1110 || defined(__SUNPRO_C)
-    #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (n))) v
-    #define DECLARE_ASM_CONST(n,t,v)    const t __attribute__ ((aligned (n))) v
-#elif defined(__TI_COMPILER_VERSION__)
-    #define DECLARE_ALIGNED(n,t,v)                      \
-        AV_PRAGMA(DATA_ALIGN(v,n))                      \
-        t __attribute__((aligned(n))) v
-    #define DECLARE_ASM_CONST(n,t,v)                    \
-        AV_PRAGMA(DATA_ALIGN(v,n))                      \
-        static const t __attribute__((aligned(n))) v
-#elif defined(__GNUC__)
-    #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (n))) v
-    #define DECLARE_ASM_CONST(n,t,v)    static const t av_used __attribute__ ((aligned (n))) v
-#elif defined(_MSC_VER)
-    #define DECLARE_ALIGNED(n,t,v)      __declspec(align(n)) t v
-    #define DECLARE_ASM_CONST(n,t,v)    __declspec(align(n)) static const t v
-#else
-    #define DECLARE_ALIGNED(n,t,v)      t v
-    #define DECLARE_ASM_CONST(n,t,v)    static const t v
-#endif
-
-#if AV_GCC_VERSION_AT_LEAST(3,1)
-    #define av_malloc_attrib __attribute__((__malloc__))
-#else
-    #define av_malloc_attrib
-#endif
-
-#if AV_GCC_VERSION_AT_LEAST(4,3)
-    #define av_alloc_size(n) __attribute__((alloc_size(n)))
-#else
-    #define av_alloc_size(n)
-#endif
-
-/**
- * Allocate a block of size bytes with alignment suitable for all
- * memory accesses (including vectors if available on the CPU).
- * @param size Size in bytes for the memory block to be allocated.
- * @return Pointer to the allocated block, NULL if the block cannot
- * be allocated.
- * @see av_mallocz()
- */
-void *av_malloc(size_t size) av_malloc_attrib av_alloc_size(1);
-
-/**
- * Allocate or reallocate a block of memory.
- * If ptr is NULL and size > 0, allocate a new block. If
- * size is zero, free the memory block pointed to by ptr.
- * @param ptr Pointer to a memory block already allocated with
- * av_malloc(z)() or av_realloc() or NULL.
- * @param size Size in bytes for the memory block to be allocated or
- * reallocated.
- * @return Pointer to a newly reallocated block or NULL if the block
- * cannot be reallocated or the function is used to free the memory block.
- * @see av_fast_realloc()
- */
-void *av_realloc(void *ptr, size_t size) av_alloc_size(2);
-
-/**
- * Allocate or reallocate a block of memory.
- * This function does the same thing as av_realloc, except:
- * - It takes two arguments and checks the result of the multiplication for
- *   integer overflow.
- * - It frees the input block in case of failure, thus avoiding the memory
- *   leak with the classic "buf = realloc(buf); if (!buf) return -1;".
- */
-void *av_realloc_f(void *ptr, size_t nelem, size_t elsize);
-
-/**
- * Free a memory block which has been allocated with av_malloc(z)() or
- * av_realloc().
- * @param ptr Pointer to the memory block which should be freed.
- * @note ptr = NULL is explicitly allowed.
- * @note It is recommended that you use av_freep() instead.
- * @see av_freep()
- */
-void av_free(void *ptr);
-
-/**
- * Allocate a block of size bytes with alignment suitable for all
- * memory accesses (including vectors if available on the CPU) and
- * zero all the bytes of the block.
- * @param size Size in bytes for the memory block to be allocated.
- * @return Pointer to the allocated block, NULL if it cannot be allocated.
- * @see av_malloc()
- */
-void *av_mallocz(size_t size) av_malloc_attrib av_alloc_size(1);
-
-/**
- * Allocate a block of nmemb * size bytes with alignment suitable for all
- * memory accesses (including vectors if available on the CPU) and
- * zero all the bytes of the block.
- * The allocation will fail if nmemb * size is greater than or equal
- * to INT_MAX.
- * @param nmemb
- * @param size
- * @return Pointer to the allocated block, NULL if it cannot be allocated.
- */
-void *av_calloc(size_t nmemb, size_t size) av_malloc_attrib;
-
-/**
- * Duplicate the string s.
- * @param s string to be duplicated
- * @return Pointer to a newly allocated string containing a
- * copy of s or NULL if the string cannot be allocated.
- */
-char *av_strdup(const char *s) av_malloc_attrib;
-
-/**
- * Free a memory block which has been allocated with av_malloc(z)() or
- * av_realloc() and set the pointer pointing to it to NULL.
- * @param ptr Pointer to the pointer to the memory block which should
- * be freed.
- * @see av_free()
- */
-void av_freep(void *ptr);
-
-/**
- * Add an element to a dynamic array.
- *
- * @param tab_ptr Pointer to the array.
- * @param nb_ptr  Pointer to the number of elements in the array.
- * @param elem    Element to be added.
- */
-void av_dynarray_add(void *tab_ptr, int *nb_ptr, void *elem);
-
-/**
- * Multiply two size_t values checking for overflow.
- * @return  0 if success, AVERROR(EINVAL) if overflow.
- */
-static inline int av_size_mult(size_t a, size_t b, size_t *r)
-{
-    size_t t = a * b;
-    /* Hack inspired from glibc: only try the division if nelem and elsize
-     * are both greater than sqrt(SIZE_MAX). */
-    if ((a | b) >= ((size_t)1 << (sizeof(size_t) * 4)) && a && t / a != b)
-        return AVERROR(EINVAL);
-    *r = t;
-    return 0;
-}
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_MEM_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/opt.h b/dependencies64/ffmpeg/include/libavutil/opt.h
deleted file mode 100644 (file)
index 3744a89..0000000
+++ /dev/null
@@ -1,603 +0,0 @@
-/*
- * AVOptions
- * copyright (c) 2005 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_OPT_H
-#define AVUTIL_OPT_H
-
-/**
- * @file
- * AVOptions
- */
-
-#include "rational.h"
-#include "avutil.h"
-#include "dict.h"
-#include "log.h"
-
-/**
- * @defgroup avoptions AVOptions
- * @ingroup lavu_data
- * @{
- * AVOptions provide a generic system to declare options on arbitrary structs
- * ("objects"). An option can have a help text, a type and a range of possible
- * values. Options may then be enumerated, read and written to.
- *
- * @section avoptions_implement Implementing AVOptions
- * This section describes how to add AVOptions capabilities to a struct.
- *
- * All AVOptions-related information is stored in an AVClass. Therefore
- * the first member of the struct must be a pointer to an AVClass describing it.
- * The option field of the AVClass must be set to a NULL-terminated static array
- * of AVOptions. Each AVOption must have a non-empty name, a type, a default
- * value and for number-type AVOptions also a range of allowed values. It must
- * also declare an offset in bytes from the start of the struct, where the field
- * associated with this AVOption is located. Other fields in the AVOption struct
- * should also be set when applicable, but are not required.
- *
- * The following example illustrates an AVOptions-enabled struct:
- * @code
- * typedef struct test_struct {
- *     AVClass *class;
- *     int      int_opt;
- *     char    *str_opt;
- *     uint8_t *bin_opt;
- *     int      bin_len;
- * } test_struct;
- *
- * static const AVOption options[] = {
- *   { "test_int", "This is a test option of int type.", offsetof(test_struct, int_opt),
- *     AV_OPT_TYPE_INT, { -1 }, INT_MIN, INT_MAX },
- *   { "test_str", "This is a test option of string type.", offsetof(test_struct, str_opt),
- *     AV_OPT_TYPE_STRING },
- *   { "test_bin", "This is a test option of binary type.", offsetof(test_struct, bin_opt),
- *     AV_OPT_TYPE_BINARY },
- *   { NULL },
- * };
- *
- * static const AVClass test_class = {
- *     .class_name = "test class",
- *     .item_name  = av_default_item_name,
- *     .option     = options,
- *     .version    = LIBAVUTIL_VERSION_INT,
- * };
- * @endcode
- *
- * Next, when allocating your struct, you must ensure that the AVClass pointer
- * is set to the correct value. Then, av_opt_set_defaults() must be called to
- * initialize defaults. After that the struct is ready to be used with the
- * AVOptions API.
- *
- * When cleaning up, you may use the av_opt_free() function to automatically
- * free all the allocated string and binary options.
- *
- * Continuing with the above example:
- *
- * @code
- * test_struct *alloc_test_struct(void)
- * {
- *     test_struct *ret = av_malloc(sizeof(*ret));
- *     ret->class = &test_class;
- *     av_opt_set_defaults(ret);
- *     return ret;
- * }
- * void free_test_struct(test_struct **foo)
- * {
- *     av_opt_free(*foo);
- *     av_freep(foo);
- * }
- * @endcode
- *
- * @subsection avoptions_implement_nesting Nesting
- *      It may happen that an AVOptions-enabled struct contains another
- *      AVOptions-enabled struct as a member (e.g. AVCodecContext in
- *      libavcodec exports generic options, while its priv_data field exports
- *      codec-specific options). In such a case, it is possible to set up the
- *      parent struct to export a child's options. To do that, simply
- *      implement AVClass.child_next() and AVClass.child_class_next() in the
- *      parent struct's AVClass.
- *      Assuming that the test_struct from above now also contains a
- *      child_struct field:
- *
- *      @code
- *      typedef struct child_struct {
- *          AVClass *class;
- *          int flags_opt;
- *      } child_struct;
- *      static const AVOption child_opts[] = {
- *          { "test_flags", "This is a test option of flags type.",
- *            offsetof(child_struct, flags_opt), AV_OPT_TYPE_FLAGS, { 0 }, INT_MIN, INT_MAX },
- *          { NULL },
- *      };
- *      static const AVClass child_class = {
- *          .class_name = "child class",
- *          .item_name  = av_default_item_name,
- *          .option     = child_opts,
- *          .version    = LIBAVUTIL_VERSION_INT,
- *      };
- *
- *      void *child_next(void *obj, void *prev)
- *      {
- *          test_struct *t = obj;
- *          if (!prev && t->child_struct)
- *              return t->child_struct;
- *          return NULL
- *      }
- *      const AVClass child_class_next(const AVClass *prev)
- *      {
- *          return prev ? NULL : &child_class;
- *      }
- *      @endcode
- *      Putting child_next() and child_class_next() as defined above into
- *      test_class will now make child_struct's options accessible through
- *      test_struct (again, proper setup as described above needs to be done on
- *      child_struct right after it is created).
- *
- *      From the above example it might not be clear why both child_next()
- *      and child_class_next() are needed. The distinction is that child_next()
- *      iterates over actually existing objects, while child_class_next()
- *      iterates over all possible child classes. E.g. if an AVCodecContext
- *      was initialized to use a codec which has private options, then its
- *      child_next() will return AVCodecContext.priv_data and finish
- *      iterating. OTOH child_class_next() on AVCodecContext.av_class will
- *      iterate over all available codecs with private options.
- *
- * @subsection avoptions_implement_named_constants Named constants
- *      It is possible to create named constants for options. Simply set the unit
- *      field of the option the constants should apply to to a string and
- *      create the constants themselves as options of type AV_OPT_TYPE_CONST
- *      with their unit field set to the same string.
- *      Their default_val field should contain the value of the named
- *      constant.
- *      For example, to add some named constants for the test_flags option
- *      above, put the following into the child_opts array:
- *      @code
- *      { "test_flags", "This is a test option of flags type.",
- *        offsetof(child_struct, flags_opt), AV_OPT_TYPE_FLAGS, { 0 }, INT_MIN, INT_MAX, "test_unit" },
- *      { "flag1", "This is a flag with value 16", 0, AV_OPT_TYPE_CONST, { 16 }, 0, 0, "test_unit" },
- *      @endcode
- *
- * @section avoptions_use Using AVOptions
- * This section deals with accessing options in an AVOptions-enabled struct.
- * Such structs in FFmpeg are e.g. AVCodecContext in libavcodec or
- * AVFormatContext in libavformat.
- *
- * @subsection avoptions_use_examine Examining AVOptions
- * The basic functions for examining options are av_opt_next(), which iterates
- * over all options defined for one object, and av_opt_find(), which searches
- * for an option with the given name.
- *
- * The situation is more complicated with nesting. An AVOptions-enabled struct
- * may have AVOptions-enabled children. Passing the AV_OPT_SEARCH_CHILDREN flag
- * to av_opt_find() will make the function search children recursively.
- *
- * For enumerating there are basically two cases. The first is when you want to
- * get all options that may potentially exist on the struct and its children
- * (e.g.  when constructing documentation). In that case you should call
- * av_opt_child_class_next() recursively on the parent struct's AVClass.  The
- * second case is when you have an already initialized struct with all its
- * children and you want to get all options that can be actually written or read
- * from it. In that case you should call av_opt_child_next() recursively (and
- * av_opt_next() on each result).
- *
- * @subsection avoptions_use_get_set Reading and writing AVOptions
- * When setting options, you often have a string read directly from the
- * user. In such a case, simply passing it to av_opt_set() is enough. For
- * non-string type options, av_opt_set() will parse the string according to the
- * option type.
- *
- * Similarly av_opt_get() will read any option type and convert it to a string
- * which will be returned. Do not forget that the string is allocated, so you
- * have to free it with av_free().
- *
- * In some cases it may be more convenient to put all options into an
- * AVDictionary and call av_opt_set_dict() on it. A specific case of this
- * are the format/codec open functions in lavf/lavc which take a dictionary
- * filled with option as a parameter. This allows to set some options
- * that cannot be set otherwise, since e.g. the input file format is not known
- * before the file is actually opened.
- */
-
-enum AVOptionType{
-    AV_OPT_TYPE_FLAGS,
-    AV_OPT_TYPE_INT,
-    AV_OPT_TYPE_INT64,
-    AV_OPT_TYPE_DOUBLE,
-    AV_OPT_TYPE_FLOAT,
-    AV_OPT_TYPE_STRING,
-    AV_OPT_TYPE_RATIONAL,
-    AV_OPT_TYPE_BINARY,  ///< offset must point to a pointer immediately followed by an int for the length
-    AV_OPT_TYPE_CONST = 128,
-#if FF_API_OLD_AVOPTIONS
-    FF_OPT_TYPE_FLAGS = 0,
-    FF_OPT_TYPE_INT,
-    FF_OPT_TYPE_INT64,
-    FF_OPT_TYPE_DOUBLE,
-    FF_OPT_TYPE_FLOAT,
-    FF_OPT_TYPE_STRING,
-    FF_OPT_TYPE_RATIONAL,
-    FF_OPT_TYPE_BINARY,  ///< offset must point to a pointer immediately followed by an int for the length
-    FF_OPT_TYPE_CONST=128,
-#endif
-};
-
-/**
- * AVOption
- */
-typedef struct AVOption {
-    const char *name;
-
-    /**
-     * short English help text
-     * @todo What about other languages?
-     */
-    const char *help;
-
-    /**
-     * The offset relative to the context structure where the option
-     * value is stored. It should be 0 for named constants.
-     */
-    int offset;
-    enum AVOptionType type;
-
-    /**
-     * the default value for scalar options
-     */
-    union {
-        double dbl;
-        const char *str;
-        /* TODO those are unused now */
-        int64_t i64;
-        AVRational q;
-    } default_val;
-    double min;                 ///< minimum valid value for the option
-    double max;                 ///< maximum valid value for the option
-
-    int flags;
-#define AV_OPT_FLAG_ENCODING_PARAM  1   ///< a generic parameter which can be set by the user for muxing or encoding
-#define AV_OPT_FLAG_DECODING_PARAM  2   ///< a generic parameter which can be set by the user for demuxing or decoding
-#define AV_OPT_FLAG_METADATA        4   ///< some data extracted or inserted into the file like title, comment, ...
-#define AV_OPT_FLAG_AUDIO_PARAM     8
-#define AV_OPT_FLAG_VIDEO_PARAM     16
-#define AV_OPT_FLAG_SUBTITLE_PARAM  32
-//FIXME think about enc-audio, ... style flags
-
-    /**
-     * The logical unit to which the option belongs. Non-constant
-     * options and corresponding named constants share the same
-     * unit. May be NULL.
-     */
-    const char *unit;
-} AVOption;
-
-#if FF_API_FIND_OPT
-/**
- * Look for an option in obj. Look only for the options which
- * have the flags set as specified in mask and flags (that is,
- * for which it is the case that opt->flags & mask == flags).
- *
- * @param[in] obj a pointer to a struct whose first element is a
- * pointer to an AVClass
- * @param[in] name the name of the option to look for
- * @param[in] unit the unit of the option to look for, or any if NULL
- * @return a pointer to the option found, or NULL if no option
- * has been found
- *
- * @deprecated use av_opt_find.
- */
-attribute_deprecated
-const AVOption *av_find_opt(void *obj, const char *name, const char *unit, int mask, int flags);
-#endif
-
-#if FF_API_OLD_AVOPTIONS
-/**
- * Set the field of obj with the given name to value.
- *
- * @param[in] obj A struct whose first element is a pointer to an
- * AVClass.
- * @param[in] name the name of the field to set
- * @param[in] val The value to set. If the field is not of a string
- * type, then the given string is parsed.
- * SI postfixes and some named scalars are supported.
- * If the field is of a numeric type, it has to be a numeric or named
- * scalar. Behavior with more than one scalar and +- infix operators
- * is undefined.
- * If the field is of a flags type, it has to be a sequence of numeric
- * scalars or named flags separated by '+' or '-'. Prefixing a flag
- * with '+' causes it to be set without affecting the other flags;
- * similarly, '-' unsets a flag.
- * @param[out] o_out if non-NULL put here a pointer to the AVOption
- * found
- * @param alloc this parameter is currently ignored
- * @return 0 if the value has been set, or an AVERROR code in case of
- * error:
- * AVERROR_OPTION_NOT_FOUND if no matching option exists
- * AVERROR(ERANGE) if the value is out of range
- * AVERROR(EINVAL) if the value is not valid
- * @deprecated use av_opt_set()
- */
-attribute_deprecated
-int av_set_string3(void *obj, const char *name, const char *val, int alloc, const AVOption **o_out);
-
-attribute_deprecated const AVOption *av_set_double(void *obj, const char *name, double n);
-attribute_deprecated const AVOption *av_set_q(void *obj, const char *name, AVRational n);
-attribute_deprecated const AVOption *av_set_int(void *obj, const char *name, int64_t n);
-
-double av_get_double(void *obj, const char *name, const AVOption **o_out);
-AVRational av_get_q(void *obj, const char *name, const AVOption **o_out);
-int64_t av_get_int(void *obj, const char *name, const AVOption **o_out);
-attribute_deprecated const char *av_get_string(void *obj, const char *name, const AVOption **o_out, char *buf, int buf_len);
-attribute_deprecated const AVOption *av_next_option(void *obj, const AVOption *last);
-#endif
-
-/**
- * Show the obj options.
- *
- * @param req_flags requested flags for the options to show. Show only the
- * options for which it is opt->flags & req_flags.
- * @param rej_flags rejected flags for the options to show. Show only the
- * options for which it is !(opt->flags & req_flags).
- * @param av_log_obj log context to use for showing the options
- */
-int av_opt_show2(void *obj, void *av_log_obj, int req_flags, int rej_flags);
-
-/**
- * Set the values of all AVOption fields to their default values.
- *
- * @param s an AVOption-enabled struct (its first member must be a pointer to AVClass)
- */
-void av_opt_set_defaults(void *s);
-
-#if FF_API_OLD_AVOPTIONS
-attribute_deprecated
-void av_opt_set_defaults2(void *s, int mask, int flags);
-#endif
-
-/**
- * Parse the key/value pairs list in opts. For each key/value pair
- * found, stores the value in the field in ctx that is named like the
- * key. ctx must be an AVClass context, storing is done using
- * AVOptions.
- *
- * @param opts options string to parse, may be NULL
- * @param key_val_sep a 0-terminated list of characters used to
- * separate key from value
- * @param pairs_sep a 0-terminated list of characters used to separate
- * two pairs from each other
- * @return the number of successfully set key/value pairs, or a negative
- * value corresponding to an AVERROR code in case of error:
- * AVERROR(EINVAL) if opts cannot be parsed,
- * the error code issued by av_set_string3() if a key/value pair
- * cannot be set
- */
-int av_set_options_string(void *ctx, const char *opts,
-                          const char *key_val_sep, const char *pairs_sep);
-
-/**
- * Free all string and binary options in obj.
- */
-void av_opt_free(void *obj);
-
-/**
- * Check whether a particular flag is set in a flags field.
- *
- * @param field_name the name of the flag field option
- * @param flag_name the name of the flag to check
- * @return non-zero if the flag is set, zero if the flag isn't set,
- *         isn't of the right type, or the flags field doesn't exist.
- */
-int av_opt_flag_is_set(void *obj, const char *field_name, const char *flag_name);
-
-/*
- * Set all the options from a given dictionary on an object.
- *
- * @param obj a struct whose first element is a pointer to AVClass
- * @param options options to process. This dictionary will be freed and replaced
- *                by a new one containing all options not found in obj.
- *                Of course this new dictionary needs to be freed by caller
- *                with av_dict_free().
- *
- * @return 0 on success, a negative AVERROR if some option was found in obj,
- *         but could not be set.
- *
- * @see av_dict_copy()
- */
-int av_opt_set_dict(void *obj, struct AVDictionary **options);
-
-/**
- * @defgroup opt_eval_funcs Evaluating option strings
- * @{
- * This group of functions can be used to evaluate option strings
- * and get numbers out of them. They do the same thing as av_opt_set(),
- * except the result is written into the caller-supplied pointer.
- *
- * @param obj a struct whose first element is a pointer to AVClass.
- * @param o an option for which the string is to be evaluated.
- * @param val string to be evaluated.
- * @param *_out value of the string will be written here.
- *
- * @return 0 on success, a negative number on failure.
- */
-int av_opt_eval_flags (void *obj, const AVOption *o, const char *val, int        *flags_out);
-int av_opt_eval_int   (void *obj, const AVOption *o, const char *val, int        *int_out);
-int av_opt_eval_int64 (void *obj, const AVOption *o, const char *val, int64_t    *int64_out);
-int av_opt_eval_float (void *obj, const AVOption *o, const char *val, float      *float_out);
-int av_opt_eval_double(void *obj, const AVOption *o, const char *val, double     *double_out);
-int av_opt_eval_q     (void *obj, const AVOption *o, const char *val, AVRational *q_out);
-/**
- * @}
- */
-
-#define AV_OPT_SEARCH_CHILDREN   0x0001 /**< Search in possible children of the
-                                             given object first. */
-/**
- *  The obj passed to av_opt_find() is fake -- only a double pointer to AVClass
- *  instead of a required pointer to a struct containing AVClass. This is
- *  useful for searching for options without needing to allocate the corresponding
- *  object.
- */
-#define AV_OPT_SEARCH_FAKE_OBJ   0x0002
-
-/**
- * Look for an option in an object. Consider only options which
- * have all the specified flags set.
- *
- * @param[in] obj A pointer to a struct whose first element is a
- *                pointer to an AVClass.
- *                Alternatively a double pointer to an AVClass, if
- *                AV_OPT_SEARCH_FAKE_OBJ search flag is set.
- * @param[in] name The name of the option to look for.
- * @param[in] unit When searching for named constants, name of the unit
- *                 it belongs to.
- * @param opt_flags Find only options with all the specified flags set (AV_OPT_FLAG).
- * @param search_flags A combination of AV_OPT_SEARCH_*.
- *
- * @return A pointer to the option found, or NULL if no option
- *         was found.
- *
- * @note Options found with AV_OPT_SEARCH_CHILDREN flag may not be settable
- * directly with av_set_string3(). Use special calls which take an options
- * AVDictionary (e.g. avformat_open_input()) to set options found with this
- * flag.
- */
-const AVOption *av_opt_find(void *obj, const char *name, const char *unit,
-                            int opt_flags, int search_flags);
-
-/**
- * Look for an option in an object. Consider only options which
- * have all the specified flags set.
- *
- * @param[in] obj A pointer to a struct whose first element is a
- *                pointer to an AVClass.
- *                Alternatively a double pointer to an AVClass, if
- *                AV_OPT_SEARCH_FAKE_OBJ search flag is set.
- * @param[in] name The name of the option to look for.
- * @param[in] unit When searching for named constants, name of the unit
- *                 it belongs to.
- * @param opt_flags Find only options with all the specified flags set (AV_OPT_FLAG).
- * @param search_flags A combination of AV_OPT_SEARCH_*.
- * @param[out] target_obj if non-NULL, an object to which the option belongs will be
- * written here. It may be different from obj if AV_OPT_SEARCH_CHILDREN is present
- * in search_flags. This parameter is ignored if search_flags contain
- * AV_OPT_SEARCH_FAKE_OBJ.
- *
- * @return A pointer to the option found, or NULL if no option
- *         was found.
- */
-const AVOption *av_opt_find2(void *obj, const char *name, const char *unit,
-                             int opt_flags, int search_flags, void **target_obj);
-
-/**
- * Iterate over all AVOptions belonging to obj.
- *
- * @param obj an AVOptions-enabled struct or a double pointer to an
- *            AVClass describing it.
- * @param prev result of the previous call to av_opt_next() on this object
- *             or NULL
- * @return next AVOption or NULL
- */
-const AVOption *av_opt_next(void *obj, const AVOption *prev);
-
-/**
- * Iterate over AVOptions-enabled children of obj.
- *
- * @param prev result of a previous call to this function or NULL
- * @return next AVOptions-enabled child or NULL
- */
-void *av_opt_child_next(void *obj, void *prev);
-
-/**
- * Iterate over potential AVOptions-enabled children of parent.
- *
- * @param prev result of a previous call to this function or NULL
- * @return AVClass corresponding to next potential child or NULL
- */
-const AVClass *av_opt_child_class_next(const AVClass *parent, const AVClass *prev);
-
-/**
- * @defgroup opt_set_funcs Option setting functions
- * @{
- * Those functions set the field of obj with the given name to value.
- *
- * @param[in] obj A struct whose first element is a pointer to an AVClass.
- * @param[in] name the name of the field to set
- * @param[in] val The value to set. In case of av_opt_set() if the field is not
- * of a string type, then the given string is parsed.
- * SI postfixes and some named scalars are supported.
- * If the field is of a numeric type, it has to be a numeric or named
- * scalar. Behavior with more than one scalar and +- infix operators
- * is undefined.
- * If the field is of a flags type, it has to be a sequence of numeric
- * scalars or named flags separated by '+' or '-'. Prefixing a flag
- * with '+' causes it to be set without affecting the other flags;
- * similarly, '-' unsets a flag.
- * @param search_flags flags passed to av_opt_find2. I.e. if AV_OPT_SEARCH_CHILDREN
- * is passed here, then the option may be set on a child of obj.
- *
- * @return 0 if the value has been set, or an AVERROR code in case of
- * error:
- * AVERROR_OPTION_NOT_FOUND if no matching option exists
- * AVERROR(ERANGE) if the value is out of range
- * AVERROR(EINVAL) if the value is not valid
- */
-int av_opt_set       (void *obj, const char *name, const char *val, int search_flags);
-int av_opt_set_int   (void *obj, const char *name, int64_t     val, int search_flags);
-int av_opt_set_double(void *obj, const char *name, double      val, int search_flags);
-int av_opt_set_q     (void *obj, const char *name, AVRational  val, int search_flags);
-/**
- * @}
- */
-
-/**
- * @defgroup opt_get_funcs Option getting functions
- * @{
- * Those functions get a value of the option with the given name from an object.
- *
- * @param[in] obj a struct whose first element is a pointer to an AVClass.
- * @param[in] name name of the option to get.
- * @param[in] search_flags flags passed to av_opt_find2. I.e. if AV_OPT_SEARCH_CHILDREN
- * is passed here, then the option may be found in a child of obj.
- * @param[out] out_val value of the option will be written here
- * @return 0 on success, a negative error code otherwise
- */
-/**
- * @note the returned string will av_malloc()ed and must be av_free()ed by the caller
- */
-int av_opt_get       (void *obj, const char *name, int search_flags, uint8_t   **out_val);
-int av_opt_get_int   (void *obj, const char *name, int search_flags, int64_t    *out_val);
-int av_opt_get_double(void *obj, const char *name, int search_flags, double     *out_val);
-int av_opt_get_q     (void *obj, const char *name, int search_flags, AVRational *out_val);
-/**
- * @}
- */
-/**
- * Gets a pointer to the requested field in a struct.
- * This function allows accessing a struct even when its fields are moved or
- * renamed since the application making the access has been compiled,
- *
- * @returns a pointer to the field, it can be cast to the correct type and read
- *          or written to.
- */
-void *av_opt_ptr(const AVClass *av_class, void *obj, const char *name);
-/**
- * @}
- */
-
-#endif /* AVUTIL_OPT_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/parseutils.h b/dependencies64/ffmpeg/include/libavutil/parseutils.h
deleted file mode 100644 (file)
index 353e9a7..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_PARSEUTILS_H
-#define AVUTIL_PARSEUTILS_H
-
-#include <time.h>
-
-#include "rational.h"
-
-/**
- * @file
- * misc parsing utilities
- */
-
-/**
- * Parse str and put in width_ptr and height_ptr the detected values.
- *
- * @param[in,out] width_ptr pointer to the variable which will contain the detected
- * width value
- * @param[in,out] height_ptr pointer to the variable which will contain the detected
- * height value
- * @param[in] str the string to parse: it has to be a string in the format
- * width x height or a valid video size abbreviation.
- * @return >= 0 on success, a negative error code otherwise
- */
-int av_parse_video_size(int *width_ptr, int *height_ptr, const char *str);
-
-/**
- * Parse str and store the detected values in *rate.
- *
- * @param[in,out] rate pointer to the AVRational which will contain the detected
- * frame rate
- * @param[in] str the string to parse: it has to be a string in the format
- * rate_num / rate_den, a float number or a valid video rate abbreviation
- * @return >= 0 on success, a negative error code otherwise
- */
-int av_parse_video_rate(AVRational *rate, const char *str);
-
-/**
- * Put the RGBA values that correspond to color_string in rgba_color.
- *
- * @param color_string a string specifying a color. It can be the name of
- * a color (case insensitive match) or a [0x|#]RRGGBB[AA] sequence,
- * possibly followed by "@" and a string representing the alpha
- * component.
- * The alpha component may be a string composed by "0x" followed by an
- * hexadecimal number or a decimal number between 0.0 and 1.0, which
- * represents the opacity value (0x00/0.0 means completely transparent,
- * 0xff/1.0 completely opaque).
- * If the alpha component is not specified then 0xff is assumed.
- * The string "random" will result in a random color.
- * @param slen length of the initial part of color_string containing the
- * color. It can be set to -1 if color_string is a null terminated string
- * containing nothing else than the color.
- * @return >= 0 in case of success, a negative value in case of
- * failure (for example if color_string cannot be parsed).
- */
-int av_parse_color(uint8_t *rgba_color, const char *color_string, int slen,
-                   void *log_ctx);
-
-/**
- * Parses timestr and returns in *time a corresponding number of
- * microseconds.
- *
- * @param timeval puts here the number of microseconds corresponding
- * to the string in timestr. If the string represents a duration, it
- * is the number of microseconds contained in the time interval.  If
- * the string is a date, is the number of microseconds since 1st of
- * January, 1970 up to the time of the parsed date.  If timestr cannot
- * be successfully parsed, set *time to INT64_MIN.
-
- * @param timestr a string representing a date or a duration.
- * - If a date the syntax is:
- * @code
- * [{YYYY-MM-DD|YYYYMMDD}[T|t| ]]{{HH[:MM[:SS[.m...]]]}|{HH[MM[SS[.m...]]]}}[Z]
- * now
- * @endcode
- * If the value is "now" it takes the current time.
- * Time is local time unless Z is appended, in which case it is
- * interpreted as UTC.
- * If the year-month-day part is not specified it takes the current
- * year-month-day.
- * - If a duration the syntax is:
- * @code
- * [-]HH[:MM[:SS[.m...]]]
- * [-]S+[.m...]
- * @endcode
- * @param duration flag which tells how to interpret timestr, if not
- * zero timestr is interpreted as a duration, otherwise as a date
- * @return 0 in case of success, a negative value corresponding to an
- * AVERROR code otherwise
- */
-int av_parse_time(int64_t *timeval, const char *timestr, int duration);
-
-/**
- * Attempt to find a specific tag in a URL.
- *
- * syntax: '?tag1=val1&tag2=val2...'. Little URL decoding is done.
- * Return 1 if found.
- */
-int av_find_info_tag(char *arg, int arg_size, const char *tag1, const char *info);
-
-/**
- * Convert the decomposed UTC time in tm to a time_t value.
- */
-time_t av_timegm(struct tm *tm);
-
-#endif /* AVUTIL_PARSEUTILS_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/pixdesc.h b/dependencies64/ffmpeg/include/libavutil/pixdesc.h
deleted file mode 100644 (file)
index 585cd98..0000000
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- * pixel format descriptor
- * Copyright (c) 2009 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_PIXDESC_H
-#define AVUTIL_PIXDESC_H
-
-#include <cstdint>
-#include "pixfmt.h"
-
-typedef struct AVComponentDescriptor{
-    uint16_t plane        :2;            ///< which of the 4 planes contains the component
-
-    /**
-     * Number of elements between 2 horizontally consecutive pixels minus 1.
-     * Elements are bits for bitstream formats, bytes otherwise.
-     */
-    uint16_t step_minus1  :3;
-
-    /**
-     * Number of elements before the component of the first pixel plus 1.
-     * Elements are bits for bitstream formats, bytes otherwise.
-     */
-    uint16_t offset_plus1 :3;
-    uint16_t shift        :3;            ///< number of least significant bits that must be shifted away to get the value
-    uint16_t depth_minus1 :4;            ///< number of bits in the component minus 1
-}AVComponentDescriptor;
-
-/**
- * Descriptor that unambiguously describes how the bits of a pixel are
- * stored in the up to 4 data planes of an image. It also stores the
- * subsampling factors and number of components.
- *
- * @note This is separate of the colorspace (RGB, YCbCr, YPbPr, JPEG-style YUV
- *       and all the YUV variants) AVPixFmtDescriptor just stores how values
- *       are stored not what these values represent.
- */
-typedef struct AVPixFmtDescriptor{
-    const char *name;
-    uint8_t nb_components;      ///< The number of components each pixel has, (1-4)
-
-    /**
-     * Amount to shift the luma width right to find the chroma width.
-     * For YV12 this is 1 for example.
-     * chroma_width = -((-luma_width) >> log2_chroma_w)
-     * The note above is needed to ensure rounding up.
-     * This value only refers to the chroma components.
-     */
-    uint8_t log2_chroma_w;      ///< chroma_width = -((-luma_width )>>log2_chroma_w)
-
-    /**
-     * Amount to shift the luma height right to find the chroma height.
-     * For YV12 this is 1 for example.
-     * chroma_height= -((-luma_height) >> log2_chroma_h)
-     * The note above is needed to ensure rounding up.
-     * This value only refers to the chroma components.
-     */
-    uint8_t log2_chroma_h;
-    uint8_t flags;
-
-    /**
-     * Parameters that describe how pixels are packed. If the format
-     * has chroma components, they must be stored in comp[1] and
-     * comp[2].
-     */
-    AVComponentDescriptor comp[4];
-}AVPixFmtDescriptor;
-
-#define PIX_FMT_BE        1 ///< Pixel format is big-endian.
-#define PIX_FMT_PAL       2 ///< Pixel format has a palette in data[1], values are indexes in this palette.
-#define PIX_FMT_BITSTREAM 4 ///< All values of a component are bit-wise packed end to end.
-#define PIX_FMT_HWACCEL   8 ///< Pixel format is an HW accelerated format.
-#define PIX_FMT_PLANAR   16 ///< At least one pixel component is not in the first data plane
-#define PIX_FMT_RGB      32 ///< The pixel format contains RGB-like data (as opposed to YUV/grayscale)
-
-/**
- * The array of all the pixel format descriptors.
- */
-extern const AVPixFmtDescriptor av_pix_fmt_descriptors[];
-
-/**
- * Read a line from an image, and write the values of the
- * pixel format component c to dst.
- *
- * @param data the array containing the pointers to the planes of the image
- * @param linesize the array containing the linesizes of the image
- * @param desc the pixel format descriptor for the image
- * @param x the horizontal coordinate of the first pixel to read
- * @param y the vertical coordinate of the first pixel to read
- * @param w the width of the line to read, that is the number of
- * values to write to dst
- * @param read_pal_component if not zero and the format is a paletted
- * format writes the values corresponding to the palette
- * component c in data[1] to dst, rather than the palette indexes in
- * data[0]. The behavior is undefined if the format is not paletted.
- */
-void av_read_image_line(uint16_t *dst, const uint8_t *data[4], const int linesize[4],
-                        const AVPixFmtDescriptor *desc, int x, int y, int c, int w, int read_pal_component);
-
-/**
- * Write the values from src to the pixel format component c of an
- * image line.
- *
- * @param src array containing the values to write
- * @param data the array containing the pointers to the planes of the
- * image to write into. It is supposed to be zeroed.
- * @param linesize the array containing the linesizes of the image
- * @param desc the pixel format descriptor for the image
- * @param x the horizontal coordinate of the first pixel to write
- * @param y the vertical coordinate of the first pixel to write
- * @param w the width of the line to write, that is the number of
- * values to write to the image line
- */
-void av_write_image_line(const uint16_t *src, uint8_t *data[4], const int linesize[4],
-                         const AVPixFmtDescriptor *desc, int x, int y, int c, int w);
-
-/**
- * Return the pixel format corresponding to name.
- *
- * If there is no pixel format with name name, then looks for a
- * pixel format with the name corresponding to the native endian
- * format of name.
- * For example in a little-endian system, first looks for "gray16",
- * then for "gray16le".
- *
- * Finally if no pixel format has been found, returns PIX_FMT_NONE.
- */
-enum PixelFormat av_get_pix_fmt(const char *name);
-
-/**
- * Return the short name for a pixel format, NULL in case pix_fmt is
- * unknown.
- *
- * @see av_get_pix_fmt(), av_get_pix_fmt_string()
- */
-const char *av_get_pix_fmt_name(enum PixelFormat pix_fmt);
-
-/**
- * Print in buf the string corresponding to the pixel format with
- * number pix_fmt, or an header if pix_fmt is negative.
- *
- * @param buf the buffer where to write the string
- * @param buf_size the size of buf
- * @param pix_fmt the number of the pixel format to print the
- * corresponding info string, or a negative value to print the
- * corresponding header.
- */
-char *av_get_pix_fmt_string (char *buf, int buf_size, enum PixelFormat pix_fmt);
-
-/**
- * Return the number of bits per pixel used by the pixel format
- * described by pixdesc.
- *
- * The returned number of bits refers to the number of bits actually
- * used for storing the pixel information, that is padding bits are
- * not counted.
- */
-int av_get_bits_per_pixel(const AVPixFmtDescriptor *pixdesc);
-
-#endif /* AVUTIL_PIXDESC_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/pixfmt.h b/dependencies64/ffmpeg/include/libavutil/pixfmt.h
deleted file mode 100644 (file)
index f0d9c01..0000000
+++ /dev/null
@@ -1,227 +0,0 @@
-/*
- * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_PIXFMT_H
-#define AVUTIL_PIXFMT_H
-
-/**
- * @file
- * pixel format definitions
- *
- */
-
-#include "libavutil/avconfig.h"
-
-/**
- * Pixel format.
- *
- * @note
- * PIX_FMT_RGB32 is handled in an endian-specific manner. An RGBA
- * color is put together as:
- *  (A << 24) | (R << 16) | (G << 8) | B
- * This is stored as BGRA on little-endian CPU architectures and ARGB on
- * big-endian CPUs.
- *
- * @par
- * When the pixel format is palettized RGB (PIX_FMT_PAL8), the palettized
- * image data is stored in AVFrame.data[0]. The palette is transported in
- * AVFrame.data[1], is 1024 bytes long (256 4-byte entries) and is
- * formatted the same as in PIX_FMT_RGB32 described above (i.e., it is
- * also endian-specific). Note also that the individual RGB palette
- * components stored in AVFrame.data[1] should be in the range 0..255.
- * This is important as many custom PAL8 video codecs that were designed
- * to run on the IBM VGA graphics adapter use 6-bit palette components.
- *
- * @par
- * For all the 8bit per pixel formats, an RGB32 palette is in data[1] like
- * for pal8. This palette is filled in automatically by the function
- * allocating the picture.
- *
- * @note
- * make sure that all newly added big endian formats have pix_fmt&1==1
- * and that all newly added little endian formats have pix_fmt&1==0
- * this allows simpler detection of big vs little endian.
- */
-enum PixelFormat {
-    PIX_FMT_NONE= -1,
-    PIX_FMT_YUV420P,   ///< planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
-    PIX_FMT_YUYV422,   ///< packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
-    PIX_FMT_RGB24,     ///< packed RGB 8:8:8, 24bpp, RGBRGB...
-    PIX_FMT_BGR24,     ///< packed RGB 8:8:8, 24bpp, BGRBGR...
-    PIX_FMT_YUV422P,   ///< planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
-    PIX_FMT_YUV444P,   ///< planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
-    PIX_FMT_YUV410P,   ///< planar YUV 4:1:0,  9bpp, (1 Cr & Cb sample per 4x4 Y samples)
-    PIX_FMT_YUV411P,   ///< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
-    PIX_FMT_GRAY8,     ///<        Y        ,  8bpp
-    PIX_FMT_MONOWHITE, ///<        Y        ,  1bpp, 0 is white, 1 is black, in each byte pixels are ordered from the msb to the lsb
-    PIX_FMT_MONOBLACK, ///<        Y        ,  1bpp, 0 is black, 1 is white, in each byte pixels are ordered from the msb to the lsb
-    PIX_FMT_PAL8,      ///< 8 bit with PIX_FMT_RGB32 palette
-    PIX_FMT_YUVJ420P,  ///< planar YUV 4:2:0, 12bpp, full scale (JPEG), deprecated in favor of PIX_FMT_YUV420P and setting color_range
-    PIX_FMT_YUVJ422P,  ///< planar YUV 4:2:2, 16bpp, full scale (JPEG), deprecated in favor of PIX_FMT_YUV422P and setting color_range
-    PIX_FMT_YUVJ444P,  ///< planar YUV 4:4:4, 24bpp, full scale (JPEG), deprecated in favor of PIX_FMT_YUV444P and setting color_range
-    PIX_FMT_XVMC_MPEG2_MC,///< XVideo Motion Acceleration via common packet passing
-    PIX_FMT_XVMC_MPEG2_IDCT,
-    PIX_FMT_UYVY422,   ///< packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
-    PIX_FMT_UYYVYY411, ///< packed YUV 4:1:1, 12bpp, Cb Y0 Y1 Cr Y2 Y3
-    PIX_FMT_BGR8,      ///< packed RGB 3:3:2,  8bpp, (msb)2B 3G 3R(lsb)
-    PIX_FMT_BGR4,      ///< packed RGB 1:2:1 bitstream,  4bpp, (msb)1B 2G 1R(lsb), a byte contains two pixels, the first pixel in the byte is the one composed by the 4 msb bits
-    PIX_FMT_BGR4_BYTE, ///< packed RGB 1:2:1,  8bpp, (msb)1B 2G 1R(lsb)
-    PIX_FMT_RGB8,      ///< packed RGB 3:3:2,  8bpp, (msb)2R 3G 3B(lsb)
-    PIX_FMT_RGB4,      ///< packed RGB 1:2:1 bitstream,  4bpp, (msb)1R 2G 1B(lsb), a byte contains two pixels, the first pixel in the byte is the one composed by the 4 msb bits
-    PIX_FMT_RGB4_BYTE, ///< packed RGB 1:2:1,  8bpp, (msb)1R 2G 1B(lsb)
-    PIX_FMT_NV12,      ///< planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 plane for the UV components, which are interleaved (first byte U and the following byte V)
-    PIX_FMT_NV21,      ///< as above, but U and V bytes are swapped
-
-    PIX_FMT_ARGB,      ///< packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
-    PIX_FMT_RGBA,      ///< packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
-    PIX_FMT_ABGR,      ///< packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
-    PIX_FMT_BGRA,      ///< packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
-
-    PIX_FMT_GRAY16BE,  ///<        Y        , 16bpp, big-endian
-    PIX_FMT_GRAY16LE,  ///<        Y        , 16bpp, little-endian
-    PIX_FMT_YUV440P,   ///< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
-    PIX_FMT_YUVJ440P,  ///< planar YUV 4:4:0 full scale (JPEG), deprecated in favor of PIX_FMT_YUV440P and setting color_range
-    PIX_FMT_YUVA420P,  ///< planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)
-    PIX_FMT_VDPAU_H264,///< H.264 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
-    PIX_FMT_VDPAU_MPEG1,///< MPEG-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
-    PIX_FMT_VDPAU_MPEG2,///< MPEG-2 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
-    PIX_FMT_VDPAU_WMV3,///< WMV3 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
-    PIX_FMT_VDPAU_VC1, ///< VC-1 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
-    PIX_FMT_RGB48BE,   ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big-endian
-    PIX_FMT_RGB48LE,   ///< packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as little-endian
-
-    PIX_FMT_RGB565BE,  ///< packed RGB 5:6:5, 16bpp, (msb)   5R 6G 5B(lsb), big-endian
-    PIX_FMT_RGB565LE,  ///< packed RGB 5:6:5, 16bpp, (msb)   5R 6G 5B(lsb), little-endian
-    PIX_FMT_RGB555BE,  ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), big-endian, most significant bit to 0
-    PIX_FMT_RGB555LE,  ///< packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), little-endian, most significant bit to 0
-
-    PIX_FMT_BGR565BE,  ///< packed BGR 5:6:5, 16bpp, (msb)   5B 6G 5R(lsb), big-endian
-    PIX_FMT_BGR565LE,  ///< packed BGR 5:6:5, 16bpp, (msb)   5B 6G 5R(lsb), little-endian
-    PIX_FMT_BGR555BE,  ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), big-endian, most significant bit to 1
-    PIX_FMT_BGR555LE,  ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb), little-endian, most significant bit to 1
-
-    PIX_FMT_VAAPI_MOCO, ///< HW acceleration through VA API at motion compensation entry-point, Picture.data[3] contains a vaapi_render_state struct which contains macroblocks as well as various fields extracted from headers
-    PIX_FMT_VAAPI_IDCT, ///< HW acceleration through VA API at IDCT entry-point, Picture.data[3] contains a vaapi_render_state struct which contains fields extracted from headers
-    PIX_FMT_VAAPI_VLD,  ///< HW decoding through VA API, Picture.data[3] contains a vaapi_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
-
-    PIX_FMT_YUV420P16LE,  ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
-    PIX_FMT_YUV420P16BE,  ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
-    PIX_FMT_YUV422P16LE,  ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-    PIX_FMT_YUV422P16BE,  ///< planar YUV 4:2:2, 32bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-    PIX_FMT_YUV444P16LE,  ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
-    PIX_FMT_YUV444P16BE,  ///< planar YUV 4:4:4, 48bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
-    PIX_FMT_VDPAU_MPEG4,  ///< MPEG4 HW decoding with VDPAU, data[0] contains a vdpau_render_state struct which contains the bitstream of the slices as well as various fields extracted from headers
-    PIX_FMT_DXVA2_VLD,    ///< HW decoding through DXVA2, Picture.data[3] contains a LPDIRECT3DSURFACE9 pointer
-
-    PIX_FMT_RGB444LE,  ///< packed RGB 4:4:4, 16bpp, (msb)4A 4R 4G 4B(lsb), little-endian, most significant bits to 0
-    PIX_FMT_RGB444BE,  ///< packed RGB 4:4:4, 16bpp, (msb)4A 4R 4G 4B(lsb), big-endian, most significant bits to 0
-    PIX_FMT_BGR444LE,  ///< packed BGR 4:4:4, 16bpp, (msb)4A 4B 4G 4R(lsb), little-endian, most significant bits to 1
-    PIX_FMT_BGR444BE,  ///< packed BGR 4:4:4, 16bpp, (msb)4A 4B 4G 4R(lsb), big-endian, most significant bits to 1
-    PIX_FMT_GRAY8A,    ///< 8bit gray, 8bit alpha
-    PIX_FMT_BGR48BE,   ///< packed RGB 16:16:16, 48bpp, 16B, 16G, 16R, the 2-byte value for each R/G/B component is stored as big-endian
-    PIX_FMT_BGR48LE,   ///< packed RGB 16:16:16, 48bpp, 16B, 16G, 16R, the 2-byte value for each R/G/B component is stored as little-endian
-
-    //the following 10 formats have the disadvantage of needing 1 format for each bit depth, thus
-    //If you want to support multiple bit depths, then using PIX_FMT_YUV420P16* with the bpp stored seperately
-    //is better
-    PIX_FMT_YUV420P9BE, ///< planar YUV 4:2:0, 13.5bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
-    PIX_FMT_YUV420P9LE, ///< planar YUV 4:2:0, 13.5bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
-    PIX_FMT_YUV420P10BE,///< planar YUV 4:2:0, 15bpp, (1 Cr & Cb sample per 2x2 Y samples), big-endian
-    PIX_FMT_YUV420P10LE,///< planar YUV 4:2:0, 15bpp, (1 Cr & Cb sample per 2x2 Y samples), little-endian
-    PIX_FMT_YUV422P10BE,///< planar YUV 4:2:2, 20bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-    PIX_FMT_YUV422P10LE,///< planar YUV 4:2:2, 20bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-    PIX_FMT_YUV444P9BE, ///< planar YUV 4:4:4, 27bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
-    PIX_FMT_YUV444P9LE, ///< planar YUV 4:4:4, 27bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
-    PIX_FMT_YUV444P10BE,///< planar YUV 4:4:4, 30bpp, (1 Cr & Cb sample per 1x1 Y samples), big-endian
-    PIX_FMT_YUV444P10LE,///< planar YUV 4:4:4, 30bpp, (1 Cr & Cb sample per 1x1 Y samples), little-endian
-    PIX_FMT_YUV422P9BE, ///< planar YUV 4:2:2, 18bpp, (1 Cr & Cb sample per 2x1 Y samples), big-endian
-    PIX_FMT_YUV422P9LE, ///< planar YUV 4:2:2, 18bpp, (1 Cr & Cb sample per 2x1 Y samples), little-endian
-    PIX_FMT_VDA_VLD,    ///< hardware decoding through VDA
-
-#ifdef AV_PIX_FMT_ABI_GIT_MASTER
-    PIX_FMT_RGBA64BE,  ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
-    PIX_FMT_RGBA64LE,  ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
-    PIX_FMT_BGRA64BE,  ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
-    PIX_FMT_BGRA64LE,  ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
-#endif
-    PIX_FMT_GBRP,      ///< planar GBR 4:4:4 24bpp
-    PIX_FMT_GBRP9BE,   ///< planar GBR 4:4:4 27bpp, big endian
-    PIX_FMT_GBRP9LE,   ///< planar GBR 4:4:4 27bpp, little endian
-    PIX_FMT_GBRP10BE,  ///< planar GBR 4:4:4 30bpp, big endian
-    PIX_FMT_GBRP10LE,  ///< planar GBR 4:4:4 30bpp, little endian
-    PIX_FMT_GBRP16BE,  ///< planar GBR 4:4:4 48bpp, big endian
-    PIX_FMT_GBRP16LE,  ///< planar GBR 4:4:4 48bpp, little endian
-
-#ifndef AV_PIX_FMT_ABI_GIT_MASTER
-    PIX_FMT_RGBA64BE=0x123,  ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
-    PIX_FMT_RGBA64LE,  ///< packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
-    PIX_FMT_BGRA64BE,  ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as big-endian
-    PIX_FMT_BGRA64LE,  ///< packed RGBA 16:16:16:16, 64bpp, 16B, 16G, 16R, 16A, the 2-byte value for each R/G/B/A component is stored as little-endian
-#endif
-    PIX_FMT_0RGB=0x123+4,      ///< packed RGB 8:8:8, 32bpp, 0RGB0RGB...
-    PIX_FMT_RGB0,      ///< packed RGB 8:8:8, 32bpp, RGB0RGB0...
-    PIX_FMT_0BGR,      ///< packed BGR 8:8:8, 32bpp, 0BGR0BGR...
-    PIX_FMT_BGR0,      ///< packed BGR 8:8:8, 32bpp, BGR0BGR0...
-    PIX_FMT_NB,        ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions
-};
-
-#define PIX_FMT_Y400A PIX_FMT_GRAY8A
-#define PIX_FMT_GBR24P PIX_FMT_GBRP
-
-#if AV_HAVE_BIGENDIAN
-#   define PIX_FMT_NE(be, le) PIX_FMT_##be
-#else
-#   define PIX_FMT_NE(be, le) PIX_FMT_##le
-#endif
-
-#define PIX_FMT_RGB32   PIX_FMT_NE(ARGB, BGRA)
-#define PIX_FMT_RGB32_1 PIX_FMT_NE(RGBA, ABGR)
-#define PIX_FMT_BGR32   PIX_FMT_NE(ABGR, RGBA)
-#define PIX_FMT_BGR32_1 PIX_FMT_NE(BGRA, ARGB)
-#define PIX_FMT_0RGB32  PIX_FMT_NE(0RGB, BGR0)
-#define PIX_FMT_0BGR32  PIX_FMT_NE(0BGR, RGB0)
-
-#define PIX_FMT_GRAY16 PIX_FMT_NE(GRAY16BE, GRAY16LE)
-#define PIX_FMT_RGB48  PIX_FMT_NE(RGB48BE,  RGB48LE)
-#define PIX_FMT_RGB565 PIX_FMT_NE(RGB565BE, RGB565LE)
-#define PIX_FMT_RGB555 PIX_FMT_NE(RGB555BE, RGB555LE)
-#define PIX_FMT_RGB444 PIX_FMT_NE(RGB444BE, RGB444LE)
-#define PIX_FMT_BGR48  PIX_FMT_NE(BGR48BE,  BGR48LE)
-#define PIX_FMT_BGR565 PIX_FMT_NE(BGR565BE, BGR565LE)
-#define PIX_FMT_BGR555 PIX_FMT_NE(BGR555BE, BGR555LE)
-#define PIX_FMT_BGR444 PIX_FMT_NE(BGR444BE, BGR444LE)
-
-#define PIX_FMT_YUV420P9  PIX_FMT_NE(YUV420P9BE , YUV420P9LE)
-#define PIX_FMT_YUV422P9  PIX_FMT_NE(YUV422P9BE , YUV422P9LE)
-#define PIX_FMT_YUV444P9  PIX_FMT_NE(YUV444P9BE , YUV444P9LE)
-#define PIX_FMT_YUV420P10 PIX_FMT_NE(YUV420P10BE, YUV420P10LE)
-#define PIX_FMT_YUV422P10 PIX_FMT_NE(YUV422P10BE, YUV422P10LE)
-#define PIX_FMT_YUV444P10 PIX_FMT_NE(YUV444P10BE, YUV444P10LE)
-#define PIX_FMT_YUV420P16 PIX_FMT_NE(YUV420P16BE, YUV420P16LE)
-#define PIX_FMT_YUV422P16 PIX_FMT_NE(YUV422P16BE, YUV422P16LE)
-#define PIX_FMT_YUV444P16 PIX_FMT_NE(YUV444P16BE, YUV444P16LE)
-
-#define PIX_FMT_RGBA64 PIX_FMT_NE(RGBA64BE, RGBA64LE)
-#define PIX_FMT_BGRA64 PIX_FMT_NE(BGRA64BE, BGRA64LE)
-#define PIX_FMT_GBRP9     PIX_FMT_NE(GBRP9BE ,    GBRP9LE)
-#define PIX_FMT_GBRP10    PIX_FMT_NE(GBRP10BE,    GBRP10LE)
-#define PIX_FMT_GBRP16    PIX_FMT_NE(GBRP16BE,    GBRP16LE)
-
-#endif /* AVUTIL_PIXFMT_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/random_seed.h b/dependencies64/ffmpeg/include/libavutil/random_seed.h
deleted file mode 100644 (file)
index 0462a04..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (c) 2009 Baptiste Coudurier <baptiste.coudurier@gmail.com>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_RANDOM_SEED_H
-#define AVUTIL_RANDOM_SEED_H
-
-#include <stdint.h>
-/**
- * @addtogroup lavu_crypto
- * @{
- */
-
-/**
- * Get a seed to use in conjunction with random functions.
- * This function tries to provide a good seed at a best effort bases.
- * Its possible to call this function multiple times if more bits are needed.
- * It can be quite slow, which is why it should only be used as seed for a faster
- * PRNG. The quality of the seed depends on the platform.
- */
-uint32_t av_get_random_seed(void);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_RANDOM_SEED_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/rational.h b/dependencies64/ffmpeg/include/libavutil/rational.h
deleted file mode 100644 (file)
index 8c2bdb5..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * rational numbers
- * Copyright (c) 2003 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * rational numbers
- * @author Michael Niedermayer <michaelni@gmx.at>
- */
-
-#ifndef AVUTIL_RATIONAL_H
-#define AVUTIL_RATIONAL_H
-
-#include <stdint.h>
-#include <limits.h>
-#include "attributes.h"
-
-/**
- * @addtogroup lavu_math
- * @{
- */
-
-/**
- * rational number numerator/denominator
- */
-typedef struct AVRational{
-    int num; ///< numerator
-    int den; ///< denominator
-} AVRational;
-
-/**
- * Compare two rationals.
- * @param a first rational
- * @param b second rational
- * @return 0 if a==b, 1 if a>b, -1 if a<b, and INT_MIN if one of the
- * values is of the form 0/0
- */
-static inline int av_cmp_q(AVRational a, AVRational b){
-    const int64_t tmp= a.num * (int64_t)b.den - b.num * (int64_t)a.den;
-
-    if(tmp) return ((tmp ^ a.den ^ b.den)>>63)|1;
-    else if(b.den && a.den) return 0;
-    else if(a.num && b.num) return (a.num>>31) - (b.num>>31);
-    else                    return INT_MIN;
-}
-
-/**
- * Convert rational to double.
- * @param a rational to convert
- * @return (double) a
- */
-static inline double av_q2d(AVRational a){
-    return a.num / (double) a.den;
-}
-
-/**
- * Reduce a fraction.
- * This is useful for framerate calculations.
- * @param dst_num destination numerator
- * @param dst_den destination denominator
- * @param num source numerator
- * @param den source denominator
- * @param max the maximum allowed for dst_num & dst_den
- * @return 1 if exact, 0 otherwise
- */
-int av_reduce(int *dst_num, int *dst_den, int64_t num, int64_t den, int64_t max);
-
-/**
- * Multiply two rationals.
- * @param b first rational
- * @param c second rational
- * @return b*c
- */
-AVRational av_mul_q(AVRational b, AVRational c) av_const;
-
-/**
- * Divide one rational by another.
- * @param b first rational
- * @param c second rational
- * @return b/c
- */
-AVRational av_div_q(AVRational b, AVRational c) av_const;
-
-/**
- * Add two rationals.
- * @param b first rational
- * @param c second rational
- * @return b+c
- */
-AVRational av_add_q(AVRational b, AVRational c) av_const;
-
-/**
- * Subtract one rational from another.
- * @param b first rational
- * @param c second rational
- * @return b-c
- */
-AVRational av_sub_q(AVRational b, AVRational c) av_const;
-
-/**
- * Convert a double precision floating point number to a rational.
- * inf is expressed as {1,0} or {-1,0} depending on the sign.
- *
- * @param d double to convert
- * @param max the maximum allowed numerator and denominator
- * @return (AVRational) d
- */
-AVRational av_d2q(double d, int max) av_const;
-
-/**
- * @return 1 if q1 is nearer to q than q2, -1 if q2 is nearer
- * than q1, 0 if they have the same distance.
- */
-int av_nearer_q(AVRational q, AVRational q1, AVRational q2);
-
-/**
- * Find the nearest value in q_list to q.
- * @param q_list an array of rationals terminated by {0, 0}
- * @return the index of the nearest value found in the array
- */
-int av_find_nearest_q_idx(AVRational q, const AVRational* q_list);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_RATIONAL_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/samplefmt.h b/dependencies64/ffmpeg/include/libavutil/samplefmt.h
deleted file mode 100644 (file)
index 855cffd..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_SAMPLEFMT_H
-#define AVUTIL_SAMPLEFMT_H
-
-#include "avutil.h"
-
-/**
- * all in native-endian format
- */
-enum AVSampleFormat {
-    AV_SAMPLE_FMT_NONE = -1,
-    AV_SAMPLE_FMT_U8,          ///< unsigned 8 bits
-    AV_SAMPLE_FMT_S16,         ///< signed 16 bits
-    AV_SAMPLE_FMT_S32,         ///< signed 32 bits
-    AV_SAMPLE_FMT_FLT,         ///< float
-    AV_SAMPLE_FMT_DBL,         ///< double
-
-    AV_SAMPLE_FMT_U8P,         ///< unsigned 8 bits, planar
-    AV_SAMPLE_FMT_S16P,        ///< signed 16 bits, planar
-    AV_SAMPLE_FMT_S32P,        ///< signed 32 bits, planar
-    AV_SAMPLE_FMT_FLTP,        ///< float, planar
-    AV_SAMPLE_FMT_DBLP,        ///< double, planar
-
-    AV_SAMPLE_FMT_NB           ///< Number of sample formats. DO NOT USE if linking dynamically
-};
-
-/**
- * Return the name of sample_fmt, or NULL if sample_fmt is not
- * recognized.
- */
-const char *av_get_sample_fmt_name(enum AVSampleFormat sample_fmt);
-
-/**
- * Return a sample format corresponding to name, or AV_SAMPLE_FMT_NONE
- * on error.
- */
-enum AVSampleFormat av_get_sample_fmt(const char *name);
-
-/**
- * Return the planar<->packed alternative form of the given sample format, or
- * AV_SAMPLE_FMT_NONE on error. If the passed sample_fmt is already in the
- * requested planar/packed format, the format returned is the same as the
- * input.
- */
-enum AVSampleFormat av_get_alt_sample_fmt(enum AVSampleFormat sample_fmt, int planar);
-
-/**
- * Generate a string corresponding to the sample format with
- * sample_fmt, or a header if sample_fmt is negative.
- *
- * @param buf the buffer where to write the string
- * @param buf_size the size of buf
- * @param sample_fmt the number of the sample format to print the
- * corresponding info string, or a negative value to print the
- * corresponding header.
- * @return the pointer to the filled buffer or NULL if sample_fmt is
- * unknown or in case of other errors
- */
-char *av_get_sample_fmt_string(char *buf, int buf_size, enum AVSampleFormat sample_fmt);
-
-#if FF_API_GET_BITS_PER_SAMPLE_FMT
-/**
- * @deprecated Use av_get_bytes_per_sample() instead.
- */
-attribute_deprecated
-int av_get_bits_per_sample_fmt(enum AVSampleFormat sample_fmt);
-#endif
-
-/**
- * Return number of bytes per sample.
- *
- * @param sample_fmt the sample format
- * @return number of bytes per sample or zero if unknown for the given
- * sample format
- */
-int av_get_bytes_per_sample(enum AVSampleFormat sample_fmt);
-
-/**
- * Check if the sample format is planar.
- *
- * @param sample_fmt the sample format to inspect
- * @return 1 if the sample format is planar, 0 if it is interleaved
- */
-int av_sample_fmt_is_planar(enum AVSampleFormat sample_fmt);
-
-/**
- * Get the required buffer size for the given audio parameters.
- *
- * @param[out] linesize calculated linesize, may be NULL
- * @param nb_channels   the number of channels
- * @param nb_samples    the number of samples in a single channel
- * @param sample_fmt    the sample format
- * @return              required buffer size, or negative error code on failure
- */
-int av_samples_get_buffer_size(int *linesize, int nb_channels, int nb_samples,
-                               enum AVSampleFormat sample_fmt, int align);
-
-/**
- * Fill channel data pointers and linesize for samples with sample
- * format sample_fmt.
- *
- * The pointers array is filled with the pointers to the samples data:
- * for planar, set the start point of each channel's data within the buffer,
- * for packed, set the start point of the entire buffer only.
- *
- * The linesize array is filled with the aligned size of each channel's data
- * buffer for planar layout, or the aligned size of the buffer for all channels
- * for packed layout.
- *
- * @param[out] audio_data  array to be filled with the pointer for each channel
- * @param[out] linesize    calculated linesize
- * @param buf              the pointer to a buffer containing the samples
- * @param nb_channels      the number of channels
- * @param nb_samples       the number of samples in a single channel
- * @param sample_fmt       the sample format
- * @param align            buffer size alignment (1 = no alignment required)
- * @return                 0 on success or a negative error code on failure
- */
-int av_samples_fill_arrays(uint8_t **audio_data, int *linesize, uint8_t *buf,
-                           int nb_channels, int nb_samples,
-                           enum AVSampleFormat sample_fmt, int align);
-
-/**
- * Allocate a samples buffer for nb_samples samples, and fill data pointers and
- * linesize accordingly.
- * The allocated samples buffer can be freed by using av_freep(&audio_data[0])
- *
- * @param[out] audio_data  array to be filled with the pointer for each channel
- * @param[out] linesize    aligned size for audio buffer(s)
- * @param nb_channels      number of audio channels
- * @param nb_samples       number of samples per channel
- * @param align            buffer size alignment (1 = no alignment required)
- * @return                 0 on success or a negative error code on failure
- * @see av_samples_fill_arrays()
- */
-int av_samples_alloc(uint8_t **audio_data, int *linesize, int nb_channels,
-                     int nb_samples, enum AVSampleFormat sample_fmt, int align);
-
-#endif /* AVUTIL_SAMPLEFMT_H */
diff --git a/dependencies64/ffmpeg/include/libavutil/sha.h b/dependencies64/ffmpeg/include/libavutil/sha.h
deleted file mode 100644 (file)
index d891cae..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (C) 2007 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AVUTIL_SHA_H
-#define AVUTIL_SHA_H
-
-#include <stdint.h>
-
-/**
- * @defgroup lavu_sha SHA
- * @ingroup lavu_crypto
- * @{
- */
-
-extern const int av_sha_size;
-
-struct AVSHA;
-
-/**
- * Initialize SHA-1 or SHA-2 hashing.
- *
- * @param context pointer to the function context (of size av_sha_size)
- * @param bits    number of bits in digest (SHA-1 - 160 bits, SHA-2 224 or 256 bits)
- * @return        zero if initialization succeeded, -1 otherwise
- */
-int av_sha_init(struct AVSHA* context, int bits);
-
-/**
- * Update hash value.
- *
- * @param context hash function context
- * @param data    input data to update hash with
- * @param len     input data length
- */
-void av_sha_update(struct AVSHA* context, const uint8_t* data, unsigned int len);
-
-/**
- * Finish hashing and output digest value.
- *
- * @param context hash function context
- * @param digest  buffer where output digest value is stored
- */
-void av_sha_final(struct AVSHA* context, uint8_t *digest);
-
-/**
- * @}
- */
-
-#endif /* AVUTIL_SHA_H */
diff --git a/dependencies64/ffmpeg/include/libpostproc/postprocess.h b/dependencies64/ffmpeg/include/libpostproc/postprocess.h
deleted file mode 100644 (file)
index 0713c47..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright (C) 2001-2003 Michael Niedermayer (michaelni@gmx.at)
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef POSTPROC_POSTPROCESS_H
-#define POSTPROC_POSTPROCESS_H
-
-/**
- * @file
- * @brief
- *     external postprocessing API
- */
-
-#include "libavutil/avutil.h"
-
-#define LIBPOSTPROC_VERSION_MAJOR 51
-#define LIBPOSTPROC_VERSION_MINOR  2
-#define LIBPOSTPROC_VERSION_MICRO  0
-
-#define LIBPOSTPROC_VERSION_INT AV_VERSION_INT(LIBPOSTPROC_VERSION_MAJOR, \
-                                               LIBPOSTPROC_VERSION_MINOR, \
-                                               LIBPOSTPROC_VERSION_MICRO)
-#define LIBPOSTPROC_VERSION     AV_VERSION(LIBPOSTPROC_VERSION_MAJOR, \
-                                           LIBPOSTPROC_VERSION_MINOR, \
-                                           LIBPOSTPROC_VERSION_MICRO)
-#define LIBPOSTPROC_BUILD       LIBPOSTPROC_VERSION_INT
-
-#define LIBPOSTPROC_IDENT       "postproc" AV_STRINGIFY(LIBPOSTPROC_VERSION)
-
-/**
- * Return the LIBPOSTPROC_VERSION_INT constant.
- */
-unsigned postproc_version(void);
-
-/**
- * Return the libpostproc build-time configuration.
- */
-const char *postproc_configuration(void);
-
-/**
- * Return the libpostproc license.
- */
-const char *postproc_license(void);
-
-#define PP_QUALITY_MAX 6
-
-#define QP_STORE_T int8_t
-
-#include <inttypes.h>
-
-typedef void pp_context;
-typedef void pp_mode;
-
-#if LIBPOSTPROC_VERSION_INT < (52<<16)
-typedef pp_context pp_context_t;
-typedef pp_mode pp_mode_t;
-extern const char *const pp_help; ///< a simple help text
-#else
-extern const char pp_help[]; ///< a simple help text
-#endif
-
-void  pp_postprocess(const uint8_t * src[3], const int srcStride[3],
-                     uint8_t * dst[3], const int dstStride[3],
-                     int horizontalSize, int verticalSize,
-                     const QP_STORE_T *QP_store,  int QP_stride,
-                     pp_mode *mode, pp_context *ppContext, int pict_type);
-
-
-/**
- * returns a pp_mode or NULL if an error occurred
- * name is the string after "-pp" on the command line
- * quality is a number from 0 to PP_QUALITY_MAX
- */
-pp_mode *pp_get_mode_by_name_and_quality(const char *name, int quality);
-void pp_free_mode(pp_mode *mode);
-
-pp_context *pp_get_context(int width, int height, int flags);
-void pp_free_context(pp_context *ppContext);
-
-#define PP_CPU_CAPS_MMX   0x80000000
-#define PP_CPU_CAPS_MMX2  0x20000000
-#define PP_CPU_CAPS_3DNOW 0x40000000
-#define PP_CPU_CAPS_ALTIVEC 0x10000000
-
-#define PP_FORMAT         0x00000008
-#define PP_FORMAT_420    (0x00000011|PP_FORMAT)
-#define PP_FORMAT_422    (0x00000001|PP_FORMAT)
-#define PP_FORMAT_411    (0x00000002|PP_FORMAT)
-#define PP_FORMAT_444    (0x00000000|PP_FORMAT)
-
-#define PP_PICT_TYPE_QP2  0x00000010 ///< MPEG2 style QScale
-
-#endif /* POSTPROC_POSTPROCESS_H */
diff --git a/dependencies64/ffmpeg/include/libswresample/swresample.h b/dependencies64/ffmpeg/include/libswresample/swresample.h
deleted file mode 100644 (file)
index fad0935..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (C) 2011 Michael Niedermayer (michaelni@gmx.at)
- *
- * This file is part of libswresample
- *
- * libswresample is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * libswresample is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with libswresample; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * libswresample public header
- */
-
-#ifndef SWR_H
-#define SWR_H
-
-#include <inttypes.h>
-#include "libavutil/samplefmt.h"
-
-#define LIBSWRESAMPLE_VERSION_MAJOR 0
-#define LIBSWRESAMPLE_VERSION_MINOR 5
-#define LIBSWRESAMPLE_VERSION_MICRO 0
-
-#define SWR_CH_MAX 16   ///< Maximum number of channels
-
-#define SWR_FLAG_RESAMPLE 1 ///< Force resampling even if equal sample rate
-//TODO use int resample ?
-//long term TODO can we enable this dynamically?
-
-
-struct SwrContext;
-
-/**
- * Allocate SwrContext.
- *
- * If you use this function you will need to set the parameters (manually or
- * with swr_alloc_set_opts()) before calling swr_init().
- *
- * @see swr_alloc_set_opts(), swr_init(), swr_free()
- * @return NULL on error, allocated context otherwise
- */
-struct SwrContext *swr_alloc(void);
-
-/**
- * Initialize context after user parameters have been set.
- *
- * @return AVERROR error code in case of failure.
- */
-int swr_init(struct SwrContext *s);
-
-/**
- * Allocate SwrContext if needed and set/reset common parameters.
- *
- * This function does not require s to be allocated with swr_alloc(). On the
- * other hand, swr_alloc() can use swr_alloc_set_opts() to set the parameters
- * on the allocated context.
- *
- * @param s               Swr context, can be NULL
- * @param out_ch_layout   output channel layout (AV_CH_LAYOUT_*)
- * @param out_sample_fmt  output sample format (AV_SAMPLE_FMT_*).
- * @param out_sample_rate output sample rate (frequency in Hz)
- * @param in_ch_layout    input channel layout (AV_CH_LAYOUT_*)
- * @param in_sample_fmt   input sample format (AV_SAMPLE_FMT_*).
- * @param in_sample_rate  input sample rate (frequency in Hz)
- * @param log_offset      logging level offset
- * @param log_ctx         parent logging context, can be NULL
- *
- * @see swr_init(), swr_free()
- * @return NULL on error, allocated context otherwise
- */
-struct SwrContext *swr_alloc_set_opts(struct SwrContext *s,
-                                      int64_t out_ch_layout, enum AVSampleFormat out_sample_fmt, int out_sample_rate,
-                                      int64_t  in_ch_layout, enum AVSampleFormat  in_sample_fmt, int  in_sample_rate,
-                                      int log_offset, void *log_ctx);
-
-/**
- * Free the given SwrContext and set the pointer to NULL.
- */
-void swr_free(struct SwrContext **s);
-
-/**
- * Convert audio.
- *
- * in and in_count can be set to 0 to flush the last few samples out at the
- * end.
- *
- * @param s         allocated Swr context, with parameters set
- * @param out       output buffers, only the first one need be set in case of packed audio
- * @param out_count amount of space available for output in samples per channel
- * @param in        input buffers, only the first one need to be set in case of packed audio
- * @param in_count  number of input samples available in one channel
- *
- * @return number of samples output per channel
- */
-int swr_convert(struct SwrContext *s, uint8_t *out[SWR_CH_MAX], int out_count,
-                                const uint8_t *in [SWR_CH_MAX], int in_count);
-
-/**
- * Activate resampling compensation.
- */
-void swr_compensate(struct SwrContext *s, int sample_delta, int compensation_distance);
-
-/**
- * Set a customized input channel mapping.
- *
- * @param s           allocated Swr context, not yet initialized
- * @param channel_map customized input channel mapping (array of channel
- *                    indexes, -1 for a muted channel)
- * @return AVERROR error code in case of failure.
- */
-int swr_set_channel_mapping(struct SwrContext *s, const int *channel_map);
-
-#endif
diff --git a/dependencies64/ffmpeg/include/libswscale/swscale.h b/dependencies64/ffmpeg/include/libswscale/swscale.h
deleted file mode 100644 (file)
index 845121a..0000000
+++ /dev/null
@@ -1,365 +0,0 @@
-/*
- * Copyright (C) 2001-2011 Michael Niedermayer <michaelni@gmx.at>
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef SWSCALE_SWSCALE_H
-#define SWSCALE_SWSCALE_H
-
-/**
- * @file
- * @brief
- *     external api for the swscale stuff
- */
-
-#include "libavutil/avutil.h"
-#include "libavutil/log.h"
-#include "libavutil/pixfmt.h"
-
-#define LIBSWSCALE_VERSION_MAJOR 2
-#define LIBSWSCALE_VERSION_MINOR 1
-#define LIBSWSCALE_VERSION_MICRO 0
-
-#define LIBSWSCALE_VERSION_INT  AV_VERSION_INT(LIBSWSCALE_VERSION_MAJOR, \
-                                               LIBSWSCALE_VERSION_MINOR, \
-                                               LIBSWSCALE_VERSION_MICRO)
-#define LIBSWSCALE_VERSION      AV_VERSION(LIBSWSCALE_VERSION_MAJOR, \
-                                           LIBSWSCALE_VERSION_MINOR, \
-                                           LIBSWSCALE_VERSION_MICRO)
-#define LIBSWSCALE_BUILD        LIBSWSCALE_VERSION_INT
-
-#define LIBSWSCALE_IDENT        "SwS" AV_STRINGIFY(LIBSWSCALE_VERSION)
-
-/**
- * Those FF_API_* defines are not part of public API.
- * They may change, break or disappear at any time.
- */
-#ifndef FF_API_SWS_GETCONTEXT
-#define FF_API_SWS_GETCONTEXT  (LIBSWSCALE_VERSION_MAJOR < 3)
-#endif
-#ifndef FF_API_SWS_CPU_CAPS
-#define FF_API_SWS_CPU_CAPS    (LIBSWSCALE_VERSION_MAJOR < 3)
-#endif
-#ifndef FF_API_SWS_FORMAT_NAME
-#define FF_API_SWS_FORMAT_NAME  (LIBSWSCALE_VERSION_MAJOR < 3)
-#endif
-
-/**
- * Returns the LIBSWSCALE_VERSION_INT constant.
- */
-unsigned swscale_version(void);
-
-/**
- * Returns the libswscale build-time configuration.
- */
-const char *swscale_configuration(void);
-
-/**
- * Returns the libswscale license.
- */
-const char *swscale_license(void);
-
-/* values for the flags, the stuff on the command line is different */
-#define SWS_FAST_BILINEAR     1
-#define SWS_BILINEAR          2
-#define SWS_BICUBIC           4
-#define SWS_X                 8
-#define SWS_POINT          0x10
-#define SWS_AREA           0x20
-#define SWS_BICUBLIN       0x40
-#define SWS_GAUSS          0x80
-#define SWS_SINC          0x100
-#define SWS_LANCZOS       0x200
-#define SWS_SPLINE        0x400
-
-#define SWS_SRC_V_CHR_DROP_MASK     0x30000
-#define SWS_SRC_V_CHR_DROP_SHIFT    16
-
-#define SWS_PARAM_DEFAULT           123456
-
-#define SWS_PRINT_INFO              0x1000
-
-//the following 3 flags are not completely implemented
-//internal chrominace subsampling info
-#define SWS_FULL_CHR_H_INT    0x2000
-//input subsampling info
-#define SWS_FULL_CHR_H_INP    0x4000
-#define SWS_DIRECT_BGR        0x8000
-#define SWS_ACCURATE_RND      0x40000
-#define SWS_BITEXACT          0x80000
-
-#if FF_API_SWS_CPU_CAPS
-/**
- * CPU caps are autodetected now, those flags
- * are only provided for API compatibility.
- */
-#define SWS_CPU_CAPS_MMX      0x80000000
-#define SWS_CPU_CAPS_MMX2     0x20000000
-#define SWS_CPU_CAPS_3DNOW    0x40000000
-#define SWS_CPU_CAPS_ALTIVEC  0x10000000
-#define SWS_CPU_CAPS_BFIN     0x01000000
-#define SWS_CPU_CAPS_SSE2     0x02000000
-#endif
-
-#define SWS_MAX_REDUCE_CUTOFF 0.002
-
-#define SWS_CS_ITU709         1
-#define SWS_CS_FCC            4
-#define SWS_CS_ITU601         5
-#define SWS_CS_ITU624         5
-#define SWS_CS_SMPTE170M      5
-#define SWS_CS_SMPTE240M      7
-#define SWS_CS_DEFAULT        5
-
-/**
- * Returns a pointer to yuv<->rgb coefficients for the given colorspace
- * suitable for sws_setColorspaceDetails().
- *
- * @param colorspace One of the SWS_CS_* macros. If invalid,
- * SWS_CS_DEFAULT is used.
- */
-const int *sws_getCoefficients(int colorspace);
-
-
-// when used for filters they must have an odd number of elements
-// coeffs cannot be shared between vectors
-typedef struct {
-    double *coeff;              ///< pointer to the list of coefficients
-    int length;                 ///< number of coefficients in the vector
-} SwsVector;
-
-// vectors can be shared
-typedef struct {
-    SwsVector *lumH;
-    SwsVector *lumV;
-    SwsVector *chrH;
-    SwsVector *chrV;
-} SwsFilter;
-
-struct SwsContext;
-
-/**
- * Returns a positive value if pix_fmt is a supported input format, 0
- * otherwise.
- */
-int sws_isSupportedInput(enum PixelFormat pix_fmt);
-
-/**
- * Returns a positive value if pix_fmt is a supported output format, 0
- * otherwise.
- */
-int sws_isSupportedOutput(enum PixelFormat pix_fmt);
-
-/**
- * Allocates an empty SwsContext. This must be filled and passed to
- * sws_init_context(). For filling see AVOptions, options.c and
- * sws_setColorspaceDetails().
- */
-struct SwsContext *sws_alloc_context(void);
-
-/**
- * Initializes the swscaler context sws_context.
- *
- * @return zero or positive value on success, a negative value on
- * error
- */
-int sws_init_context(struct SwsContext *sws_context, SwsFilter *srcFilter, SwsFilter *dstFilter);
-
-/**
- * Frees the swscaler context swsContext.
- * If swsContext is NULL, then does nothing.
- */
-void sws_freeContext(struct SwsContext *swsContext);
-
-#if FF_API_SWS_GETCONTEXT
-/**
- * Allocates and returns a SwsContext. You need it to perform
- * scaling/conversion operations using sws_scale().
- *
- * @param srcW the width of the source image
- * @param srcH the height of the source image
- * @param srcFormat the source image format
- * @param dstW the width of the destination image
- * @param dstH the height of the destination image
- * @param dstFormat the destination image format
- * @param flags specify which algorithm and options to use for rescaling
- * @return a pointer to an allocated context, or NULL in case of error
- * @note this function is to be removed after a saner alternative is
- *       written
- * @deprecated Use sws_getCachedContext() instead.
- */
-struct SwsContext *sws_getContext(int srcW, int srcH, enum PixelFormat srcFormat,
-                                  int dstW, int dstH, enum PixelFormat dstFormat,
-                                  int flags, SwsFilter *srcFilter,
-                                  SwsFilter *dstFilter, const double *param);
-#endif
-
-/**
- * Scales the image slice in srcSlice and puts the resulting scaled
- * slice in the image in dst. A slice is a sequence of consecutive
- * rows in an image.
- *
- * Slices have to be provided in sequential order, either in
- * top-bottom or bottom-top order. If slices are provided in
- * non-sequential order the behavior of the function is undefined.
- *
- * @param c         the scaling context previously created with
- *                  sws_getContext()
- * @param srcSlice  the array containing the pointers to the planes of
- *                  the source slice
- * @param srcStride the array containing the strides for each plane of
- *                  the source image
- * @param srcSliceY the position in the source image of the slice to
- *                  process, that is the number (counted starting from
- *                  zero) in the image of the first row of the slice
- * @param srcSliceH the height of the source slice, that is the number
- *                  of rows in the slice
- * @param dst       the array containing the pointers to the planes of
- *                  the destination image
- * @param dstStride the array containing the strides for each plane of
- *                  the destination image
- * @return          the height of the output slice
- */
-int sws_scale(struct SwsContext *c, const uint8_t* const srcSlice[],
-              const int srcStride[], int srcSliceY, int srcSliceH,
-              uint8_t* const dst[], const int dstStride[]);
-
-/**
- * @param inv_table the yuv2rgb coefficients, normally ff_yuv2rgb_coeffs[x]
- * @return -1 if not supported
- */
-int sws_setColorspaceDetails(struct SwsContext *c, const int inv_table[4],
-                             int srcRange, const int table[4], int dstRange,
-                             int brightness, int contrast, int saturation);
-
-/**
- * @return -1 if not supported
- */
-int sws_getColorspaceDetails(struct SwsContext *c, int **inv_table,
-                             int *srcRange, int **table, int *dstRange,
-                             int *brightness, int *contrast, int *saturation);
-
-/**
- * Allocates and returns an uninitialized vector with length coefficients.
- */
-SwsVector *sws_allocVec(int length);
-
-/**
- * Returns a normalized Gaussian curve used to filter stuff
- * quality=3 is high quality, lower is lower quality.
- */
-SwsVector *sws_getGaussianVec(double variance, double quality);
-
-/**
- * Allocates and returns a vector with length coefficients, all
- * with the same value c.
- */
-SwsVector *sws_getConstVec(double c, int length);
-
-/**
- * Allocates and returns a vector with just one coefficient, with
- * value 1.0.
- */
-SwsVector *sws_getIdentityVec(void);
-
-/**
- * Scales all the coefficients of a by the scalar value.
- */
-void sws_scaleVec(SwsVector *a, double scalar);
-
-/**
- * Scales all the coefficients of a so that their sum equals height.
- */
-void sws_normalizeVec(SwsVector *a, double height);
-void sws_convVec(SwsVector *a, SwsVector *b);
-void sws_addVec(SwsVector *a, SwsVector *b);
-void sws_subVec(SwsVector *a, SwsVector *b);
-void sws_shiftVec(SwsVector *a, int shift);
-
-/**
- * Allocates and returns a clone of the vector a, that is a vector
- * with the same coefficients as a.
- */
-SwsVector *sws_cloneVec(SwsVector *a);
-
-/**
- * Prints with av_log() a textual representation of the vector a
- * if log_level <= av_log_level.
- */
-void sws_printVec2(SwsVector *a, AVClass *log_ctx, int log_level);
-
-void sws_freeVec(SwsVector *a);
-
-SwsFilter *sws_getDefaultFilter(float lumaGBlur, float chromaGBlur,
-                                float lumaSharpen, float chromaSharpen,
-                                float chromaHShift, float chromaVShift,
-                                int verbose);
-void sws_freeFilter(SwsFilter *filter);
-
-/**
- * Checks if context can be reused, otherwise reallocates a new
- * one.
- *
- * If context is NULL, just calls sws_getContext() to get a new
- * context. Otherwise, checks if the parameters are the ones already
- * saved in context. If that is the case, returns the current
- * context. Otherwise, frees context and gets a new context with
- * the new parameters.
- *
- * Be warned that srcFilter and dstFilter are not checked, they
- * are assumed to remain the same.
- */
-struct SwsContext *sws_getCachedContext(struct SwsContext *context,
-                                        int srcW, int srcH, enum PixelFormat srcFormat,
-                                        int dstW, int dstH, enum PixelFormat dstFormat,
-                                        int flags, SwsFilter *srcFilter,
-                                        SwsFilter *dstFilter, const double *param);
-
-/**
- * Converts an 8bit paletted frame into a frame with a color depth of 32-bits.
- *
- * The output frame will have the same packed format as the palette.
- *
- * @param src        source frame buffer
- * @param dst        destination frame buffer
- * @param num_pixels number of pixels to convert
- * @param palette    array with [256] entries, which must match color arrangement (RGB or BGR) of src
- */
-void sws_convertPalette8ToPacked32(const uint8_t *src, uint8_t *dst, int num_pixels, const uint8_t *palette);
-
-/**
- * Converts an 8bit paletted frame into a frame with a color depth of 24 bits.
- *
- * With the palette format "ABCD", the destination frame ends up with the format "ABC".
- *
- * @param src        source frame buffer
- * @param dst        destination frame buffer
- * @param num_pixels number of pixels to convert
- * @param palette    array with [256] entries, which must match color arrangement (RGB or BGR) of src
- */
-void sws_convertPalette8ToPacked24(const uint8_t *src, uint8_t *dst, int num_pixels, const uint8_t *palette);
-
-/**
- * Get the AVClass for swsContext. It can be used in combination with
- * AV_OPT_SEARCH_FAKE_OBJ for examining options.
- *
- * @see av_opt_find().
- */
-const AVClass *sws_get_class(void);
-
-#endif /* SWSCALE_SWSCALE_H */
diff --git a/dependencies64/ffmpeg/lib/avcodec.lib b/dependencies64/ffmpeg/lib/avcodec.lib
deleted file mode 100644 (file)
index 6ed7990..0000000
Binary files a/dependencies64/ffmpeg/lib/avcodec.lib and /dev/null differ
diff --git a/dependencies64/ffmpeg/lib/avdevice.lib b/dependencies64/ffmpeg/lib/avdevice.lib
deleted file mode 100644 (file)
index 9bf1d76..0000000
Binary files a/dependencies64/ffmpeg/lib/avdevice.lib and /dev/null differ
diff --git a/dependencies64/ffmpeg/lib/avfilter.lib b/dependencies64/ffmpeg/lib/avfilter.lib
deleted file mode 100644 (file)
index da31396..0000000
Binary files a/dependencies64/ffmpeg/lib/avfilter.lib and /dev/null differ
diff --git a/dependencies64/ffmpeg/lib/avformat.lib b/dependencies64/ffmpeg/lib/avformat.lib
deleted file mode 100644 (file)
index 3e7c225..0000000
Binary files a/dependencies64/ffmpeg/lib/avformat.lib and /dev/null differ
diff --git a/dependencies64/ffmpeg/lib/avutil.lib b/dependencies64/ffmpeg/lib/avutil.lib
deleted file mode 100644 (file)
index 85967e4..0000000
Binary files a/dependencies64/ffmpeg/lib/avutil.lib and /dev/null differ
diff --git a/dependencies64/ffmpeg/lib/postproc.lib b/dependencies64/ffmpeg/lib/postproc.lib
deleted file mode 100644 (file)
index 6ea5c8a..0000000
Binary files a/dependencies64/ffmpeg/lib/postproc.lib and /dev/null differ
diff --git a/dependencies64/ffmpeg/lib/swresample.lib b/dependencies64/ffmpeg/lib/swresample.lib
deleted file mode 100644 (file)
index 8128602..0000000
Binary files a/dependencies64/ffmpeg/lib/swresample.lib and /dev/null differ
diff --git a/dependencies64/ffmpeg/lib/swscale.lib b/dependencies64/ffmpeg/lib/swscale.lib
deleted file mode 100644 (file)
index 83fd51f..0000000
Binary files a/dependencies64/ffmpeg/lib/swscale.lib and /dev/null differ
diff --git a/dependencies64/glew/bin/glew32.dll b/dependencies64/glew/bin/glew32.dll
deleted file mode 100644 (file)
index 54681ad..0000000
Binary files a/dependencies64/glew/bin/glew32.dll and /dev/null differ
diff --git a/dependencies64/glew/bin/glew32mx.dll b/dependencies64/glew/bin/glew32mx.dll
deleted file mode 100644 (file)
index 83bd57c..0000000
Binary files a/dependencies64/glew/bin/glew32mx.dll and /dev/null differ
diff --git a/dependencies64/glew/bin/glewinfo.exe b/dependencies64/glew/bin/glewinfo.exe
deleted file mode 100644 (file)
index b9bed4e..0000000
Binary files a/dependencies64/glew/bin/glewinfo.exe and /dev/null differ
diff --git a/dependencies64/glew/bin/visualinfo.exe b/dependencies64/glew/bin/visualinfo.exe
deleted file mode 100644 (file)
index d4fe655..0000000
Binary files a/dependencies64/glew/bin/visualinfo.exe and /dev/null differ
diff --git a/dependencies64/glew/include/GL/glew.h b/dependencies64/glew/include/GL/glew.h
deleted file mode 100644 (file)
index ecd17c3..0000000
+++ /dev/null
@@ -1,16126 +0,0 @@
-/*\r
-** The OpenGL Extension Wrangler Library\r
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r
-** Copyright (C) 2002, Lev Povalahev\r
-** All rights reserved.\r
-** \r
-** Redistribution and use in source and binary forms, with or without \r
-** modification, are permitted provided that the following conditions are met:\r
-** \r
-** * Redistributions of source code must retain the above copyright notice, \r
-**   this list of conditions and the following disclaimer.\r
-** * Redistributions in binary form must reproduce the above copyright notice, \r
-**   this list of conditions and the following disclaimer in the documentation \r
-**   and/or other materials provided with the distribution.\r
-** * The name of the author may be used to endorse or promote products \r
-**   derived from this software without specific prior written permission.\r
-**\r
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" \r
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r
-** THE POSSIBILITY OF SUCH DAMAGE.\r
-*/\r
-\r
-/*\r
- * Mesa 3-D graphics library\r
- * Version:  7.0\r
- *\r
- * Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.\r
- *\r
- * Permission is hereby granted, free of charge, to any person obtaining a\r
- * copy of this software and associated documentation files (the "Software"),\r
- * to deal in the Software without restriction, including without limitation\r
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,\r
- * and/or sell copies of the Software, and to permit persons to whom the\r
- * Software is furnished to do so, subject to the following conditions:\r
- *\r
- * The above copyright notice and this permission notice shall be included\r
- * in all copies or substantial portions of the Software.\r
- *\r
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS\r
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL\r
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
- */\r
-\r
-/*\r
-** Copyright (c) 2007 The Khronos Group Inc.\r
-** \r
-** Permission is hereby granted, free of charge, to any person obtaining a\r
-** copy of this software and/or associated documentation files (the\r
-** "Materials"), to deal in the Materials without restriction, including\r
-** without limitation the rights to use, copy, modify, merge, publish,\r
-** distribute, sublicense, and/or sell copies of the Materials, and to\r
-** permit persons to whom the Materials are furnished to do so, subject to\r
-** the following conditions:\r
-** \r
-** The above copyright notice and this permission notice shall be included\r
-** in all copies or substantial portions of the Materials.\r
-** \r
-** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r
-** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r
-** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r
-** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r
-** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\r
-*/\r
-\r
-#ifndef __glew_h__\r
-#define __glew_h__\r
-#define __GLEW_H__\r
-\r
-#if defined(__gl_h_) || defined(__GL_H__) || defined(__X_GL_H)\r
-#error gl.h included before glew.h\r
-#endif\r
-#if defined(__glext_h_) || defined(__GLEXT_H_)\r
-#error glext.h included before glew.h\r
-#endif\r
-#if defined(__gl_ATI_h_)\r
-#error glATI.h included before glew.h\r
-#endif\r
-\r
-#define __gl_h_\r
-#define __GL_H__\r
-#define __X_GL_H\r
-#define __glext_h_\r
-#define __GLEXT_H_\r
-#define __gl_ATI_h_\r
-\r
-#if defined(_WIN32)\r
-\r
-/*\r
- * GLEW does not include <windows.h> to avoid name space pollution.\r
- * GL needs GLAPI and GLAPIENTRY, GLU needs APIENTRY, CALLBACK, and wchar_t\r
- * defined properly.\r
- */\r
-/* <windef.h> */\r
-#ifndef APIENTRY\r
-#define GLEW_APIENTRY_DEFINED\r
-#  if defined(__MINGW32__) || defined(__CYGWIN__)\r
-#    define APIENTRY __stdcall\r
-#  elif (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED) || defined(__BORLANDC__)\r
-#    define APIENTRY __stdcall\r
-#  else\r
-#    define APIENTRY\r
-#  endif\r
-#endif\r
-#ifndef GLAPI\r
-#  if defined(__MINGW32__) || defined(__CYGWIN__)\r
-#    define GLAPI extern\r
-#  endif\r
-#endif\r
-/* <winnt.h> */\r
-#ifndef CALLBACK\r
-#define GLEW_CALLBACK_DEFINED\r
-#  if defined(__MINGW32__) || defined(__CYGWIN__)\r
-#    define CALLBACK __attribute__ ((__stdcall__))\r
-#  elif (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) && !defined(MIDL_PASS)\r
-#    define CALLBACK __stdcall\r
-#  else\r
-#    define CALLBACK\r
-#  endif\r
-#endif\r
-/* <wingdi.h> and <winnt.h> */\r
-#ifndef WINGDIAPI\r
-#define GLEW_WINGDIAPI_DEFINED\r
-#define WINGDIAPI __declspec(dllimport)\r
-#endif\r
-/* <ctype.h> */\r
-#if (defined(_MSC_VER) || defined(__BORLANDC__)) && !defined(_WCHAR_T_DEFINED)\r
-typedef unsigned short wchar_t;\r
-#  define _WCHAR_T_DEFINED\r
-#endif\r
-/* <stddef.h> */\r
-#if !defined(_W64)\r
-#  if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && defined(_MSC_VER) && _MSC_VER >= 1300\r
-#    define _W64 __w64\r
-#  else\r
-#    define _W64\r
-#  endif\r
-#endif\r
-#if !defined(_PTRDIFF_T_DEFINED) && !defined(_PTRDIFF_T_) && !defined(__MINGW64__)\r
-#  ifdef _WIN64\r
-typedef __int64 ptrdiff_t;\r
-#  else\r
-typedef _W64 int ptrdiff_t;\r
-#  endif\r
-#  define _PTRDIFF_T_DEFINED\r
-#  define _PTRDIFF_T_\r
-#endif\r
-\r
-#ifndef GLAPI\r
-#  if defined(__MINGW32__) || defined(__CYGWIN__)\r
-#    define GLAPI extern\r
-#  else\r
-#    define GLAPI WINGDIAPI\r
-#  endif\r
-#endif\r
-\r
-#ifndef GLAPIENTRY\r
-#define GLAPIENTRY APIENTRY\r
-#endif\r
-\r
-/*\r
- * GLEW_STATIC is defined for static library.\r
- * GLEW_BUILD  is defined for building the DLL library.\r
- */\r
-\r
-#ifdef GLEW_STATIC\r
-#  define GLEWAPI extern\r
-#else\r
-#  ifdef GLEW_BUILD\r
-#    define GLEWAPI extern __declspec(dllexport)\r
-#  else\r
-#    define GLEWAPI extern __declspec(dllimport)\r
-#  endif\r
-#endif\r
-\r
-#else /* _UNIX */\r
-\r
-/*\r
- * Needed for ptrdiff_t in turn needed by VBO.  This is defined by ISO\r
- * C.  On my system, this amounts to _3 lines_ of included code, all of\r
- * them pretty much harmless.  If you know of a way of detecting 32 vs\r
- * 64 _targets_ at compile time you are free to replace this with\r
- * something that's portable.  For now, _this_ is the portable solution.\r
- * (mem, 2004-01-04)\r
- */\r
-\r
-#include <stddef.h>\r
-\r
-/* SGI MIPSPro doesn't like stdint.h in C++ mode          */\r
-/* ID: 3376260 Solaris 9 has inttypes.h, but not stdint.h */\r
-\r
-#if (defined(__sgi) || defined(__sun)) && !defined(__GNUC__)\r
-#include <inttypes.h>\r
-#else\r
-#include <stdint.h>\r
-#endif\r
-\r
-#define GLEW_APIENTRY_DEFINED\r
-#define APIENTRY\r
-\r
-/*\r
- * GLEW_STATIC is defined for static library.\r
- */\r
-\r
-#ifdef GLEW_STATIC\r
-#  define GLEWAPI extern\r
-#else\r
-#  if defined(__GNUC__) && __GNUC__>=4\r
-#   define GLEWAPI extern __attribute__ ((visibility("default")))\r
-#  elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)\r
-#   define GLEWAPI extern __global\r
-#  else\r
-#   define GLEWAPI extern\r
-#  endif\r
-#endif\r
-\r
-/* <glu.h> */\r
-#ifndef GLAPI\r
-#define GLAPI extern\r
-#endif\r
-#ifndef GLAPIENTRY\r
-#define GLAPIENTRY\r
-#endif\r
-\r
-#endif /* _WIN32 */\r
-\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-/* ----------------------------- GL_VERSION_1_1 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_1_1\r
-#define GL_VERSION_1_1 1\r
-\r
-typedef unsigned int GLenum;\r
-typedef unsigned int GLbitfield;\r
-typedef unsigned int GLuint;\r
-typedef int GLint;\r
-typedef int GLsizei;\r
-typedef unsigned char GLboolean;\r
-typedef signed char GLbyte;\r
-typedef short GLshort;\r
-typedef unsigned char GLubyte;\r
-typedef unsigned short GLushort;\r
-typedef unsigned long GLulong;\r
-typedef float GLfloat;\r
-typedef float GLclampf;\r
-typedef double GLdouble;\r
-typedef double GLclampd;\r
-typedef void GLvoid;\r
-#if defined(_MSC_VER) && _MSC_VER < 1400\r
-typedef __int64 GLint64EXT;\r
-typedef unsigned __int64 GLuint64EXT;\r
-#elif defined(_MSC_VER) || defined(__BORLANDC__)\r
-typedef signed long long GLint64EXT;\r
-typedef unsigned long long GLuint64EXT;\r
-#else\r
-#  if defined(__MINGW32__) || defined(__CYGWIN__)\r
-#include <inttypes.h>\r
-#  endif\r
-typedef int64_t GLint64EXT;\r
-typedef uint64_t GLuint64EXT;\r
-#endif\r
-typedef GLint64EXT  GLint64;\r
-typedef GLuint64EXT GLuint64;\r
-typedef struct __GLsync *GLsync;\r
-\r
-typedef char GLchar;\r
-\r
-#define GL_ZERO 0\r
-#define GL_FALSE 0\r
-#define GL_LOGIC_OP 0x0BF1\r
-#define GL_NONE 0\r
-#define GL_TEXTURE_COMPONENTS 0x1003\r
-#define GL_NO_ERROR 0\r
-#define GL_POINTS 0x0000\r
-#define GL_CURRENT_BIT 0x00000001\r
-#define GL_TRUE 1\r
-#define GL_ONE 1\r
-#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001\r
-#define GL_LINES 0x0001\r
-#define GL_LINE_LOOP 0x0002\r
-#define GL_POINT_BIT 0x00000002\r
-#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002\r
-#define GL_LINE_STRIP 0x0003\r
-#define GL_LINE_BIT 0x00000004\r
-#define GL_TRIANGLES 0x0004\r
-#define GL_TRIANGLE_STRIP 0x0005\r
-#define GL_TRIANGLE_FAN 0x0006\r
-#define GL_QUADS 0x0007\r
-#define GL_QUAD_STRIP 0x0008\r
-#define GL_POLYGON_BIT 0x00000008\r
-#define GL_POLYGON 0x0009\r
-#define GL_POLYGON_STIPPLE_BIT 0x00000010\r
-#define GL_PIXEL_MODE_BIT 0x00000020\r
-#define GL_LIGHTING_BIT 0x00000040\r
-#define GL_FOG_BIT 0x00000080\r
-#define GL_DEPTH_BUFFER_BIT 0x00000100\r
-#define GL_ACCUM 0x0100\r
-#define GL_LOAD 0x0101\r
-#define GL_RETURN 0x0102\r
-#define GL_MULT 0x0103\r
-#define GL_ADD 0x0104\r
-#define GL_NEVER 0x0200\r
-#define GL_ACCUM_BUFFER_BIT 0x00000200\r
-#define GL_LESS 0x0201\r
-#define GL_EQUAL 0x0202\r
-#define GL_LEQUAL 0x0203\r
-#define GL_GREATER 0x0204\r
-#define GL_NOTEQUAL 0x0205\r
-#define GL_GEQUAL 0x0206\r
-#define GL_ALWAYS 0x0207\r
-#define GL_SRC_COLOR 0x0300\r
-#define GL_ONE_MINUS_SRC_COLOR 0x0301\r
-#define GL_SRC_ALPHA 0x0302\r
-#define GL_ONE_MINUS_SRC_ALPHA 0x0303\r
-#define GL_DST_ALPHA 0x0304\r
-#define GL_ONE_MINUS_DST_ALPHA 0x0305\r
-#define GL_DST_COLOR 0x0306\r
-#define GL_ONE_MINUS_DST_COLOR 0x0307\r
-#define GL_SRC_ALPHA_SATURATE 0x0308\r
-#define GL_STENCIL_BUFFER_BIT 0x00000400\r
-#define GL_FRONT_LEFT 0x0400\r
-#define GL_FRONT_RIGHT 0x0401\r
-#define GL_BACK_LEFT 0x0402\r
-#define GL_BACK_RIGHT 0x0403\r
-#define GL_FRONT 0x0404\r
-#define GL_BACK 0x0405\r
-#define GL_LEFT 0x0406\r
-#define GL_RIGHT 0x0407\r
-#define GL_FRONT_AND_BACK 0x0408\r
-#define GL_AUX0 0x0409\r
-#define GL_AUX1 0x040A\r
-#define GL_AUX2 0x040B\r
-#define GL_AUX3 0x040C\r
-#define GL_INVALID_ENUM 0x0500\r
-#define GL_INVALID_VALUE 0x0501\r
-#define GL_INVALID_OPERATION 0x0502\r
-#define GL_STACK_OVERFLOW 0x0503\r
-#define GL_STACK_UNDERFLOW 0x0504\r
-#define GL_OUT_OF_MEMORY 0x0505\r
-#define GL_2D 0x0600\r
-#define GL_3D 0x0601\r
-#define GL_3D_COLOR 0x0602\r
-#define GL_3D_COLOR_TEXTURE 0x0603\r
-#define GL_4D_COLOR_TEXTURE 0x0604\r
-#define GL_PASS_THROUGH_TOKEN 0x0700\r
-#define GL_POINT_TOKEN 0x0701\r
-#define GL_LINE_TOKEN 0x0702\r
-#define GL_POLYGON_TOKEN 0x0703\r
-#define GL_BITMAP_TOKEN 0x0704\r
-#define GL_DRAW_PIXEL_TOKEN 0x0705\r
-#define GL_COPY_PIXEL_TOKEN 0x0706\r
-#define GL_LINE_RESET_TOKEN 0x0707\r
-#define GL_EXP 0x0800\r
-#define GL_VIEWPORT_BIT 0x00000800\r
-#define GL_EXP2 0x0801\r
-#define GL_CW 0x0900\r
-#define GL_CCW 0x0901\r
-#define GL_COEFF 0x0A00\r
-#define GL_ORDER 0x0A01\r
-#define GL_DOMAIN 0x0A02\r
-#define GL_CURRENT_COLOR 0x0B00\r
-#define GL_CURRENT_INDEX 0x0B01\r
-#define GL_CURRENT_NORMAL 0x0B02\r
-#define GL_CURRENT_TEXTURE_COORDS 0x0B03\r
-#define GL_CURRENT_RASTER_COLOR 0x0B04\r
-#define GL_CURRENT_RASTER_INDEX 0x0B05\r
-#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06\r
-#define GL_CURRENT_RASTER_POSITION 0x0B07\r
-#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08\r
-#define GL_CURRENT_RASTER_DISTANCE 0x0B09\r
-#define GL_POINT_SMOOTH 0x0B10\r
-#define GL_POINT_SIZE 0x0B11\r
-#define GL_POINT_SIZE_RANGE 0x0B12\r
-#define GL_POINT_SIZE_GRANULARITY 0x0B13\r
-#define GL_LINE_SMOOTH 0x0B20\r
-#define GL_LINE_WIDTH 0x0B21\r
-#define GL_LINE_WIDTH_RANGE 0x0B22\r
-#define GL_LINE_WIDTH_GRANULARITY 0x0B23\r
-#define GL_LINE_STIPPLE 0x0B24\r
-#define GL_LINE_STIPPLE_PATTERN 0x0B25\r
-#define GL_LINE_STIPPLE_REPEAT 0x0B26\r
-#define GL_LIST_MODE 0x0B30\r
-#define GL_MAX_LIST_NESTING 0x0B31\r
-#define GL_LIST_BASE 0x0B32\r
-#define GL_LIST_INDEX 0x0B33\r
-#define GL_POLYGON_MODE 0x0B40\r
-#define GL_POLYGON_SMOOTH 0x0B41\r
-#define GL_POLYGON_STIPPLE 0x0B42\r
-#define GL_EDGE_FLAG 0x0B43\r
-#define GL_CULL_FACE 0x0B44\r
-#define GL_CULL_FACE_MODE 0x0B45\r
-#define GL_FRONT_FACE 0x0B46\r
-#define GL_LIGHTING 0x0B50\r
-#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51\r
-#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52\r
-#define GL_LIGHT_MODEL_AMBIENT 0x0B53\r
-#define GL_SHADE_MODEL 0x0B54\r
-#define GL_COLOR_MATERIAL_FACE 0x0B55\r
-#define GL_COLOR_MATERIAL_PARAMETER 0x0B56\r
-#define GL_COLOR_MATERIAL 0x0B57\r
-#define GL_FOG 0x0B60\r
-#define GL_FOG_INDEX 0x0B61\r
-#define GL_FOG_DENSITY 0x0B62\r
-#define GL_FOG_START 0x0B63\r
-#define GL_FOG_END 0x0B64\r
-#define GL_FOG_MODE 0x0B65\r
-#define GL_FOG_COLOR 0x0B66\r
-#define GL_DEPTH_RANGE 0x0B70\r
-#define GL_DEPTH_TEST 0x0B71\r
-#define GL_DEPTH_WRITEMASK 0x0B72\r
-#define GL_DEPTH_CLEAR_VALUE 0x0B73\r
-#define GL_DEPTH_FUNC 0x0B74\r
-#define GL_ACCUM_CLEAR_VALUE 0x0B80\r
-#define GL_STENCIL_TEST 0x0B90\r
-#define GL_STENCIL_CLEAR_VALUE 0x0B91\r
-#define GL_STENCIL_FUNC 0x0B92\r
-#define GL_STENCIL_VALUE_MASK 0x0B93\r
-#define GL_STENCIL_FAIL 0x0B94\r
-#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95\r
-#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96\r
-#define GL_STENCIL_REF 0x0B97\r
-#define GL_STENCIL_WRITEMASK 0x0B98\r
-#define GL_MATRIX_MODE 0x0BA0\r
-#define GL_NORMALIZE 0x0BA1\r
-#define GL_VIEWPORT 0x0BA2\r
-#define GL_MODELVIEW_STACK_DEPTH 0x0BA3\r
-#define GL_PROJECTION_STACK_DEPTH 0x0BA4\r
-#define GL_TEXTURE_STACK_DEPTH 0x0BA5\r
-#define GL_MODELVIEW_MATRIX 0x0BA6\r
-#define GL_PROJECTION_MATRIX 0x0BA7\r
-#define GL_TEXTURE_MATRIX 0x0BA8\r
-#define GL_ATTRIB_STACK_DEPTH 0x0BB0\r
-#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1\r
-#define GL_ALPHA_TEST 0x0BC0\r
-#define GL_ALPHA_TEST_FUNC 0x0BC1\r
-#define GL_ALPHA_TEST_REF 0x0BC2\r
-#define GL_DITHER 0x0BD0\r
-#define GL_BLEND_DST 0x0BE0\r
-#define GL_BLEND_SRC 0x0BE1\r
-#define GL_BLEND 0x0BE2\r
-#define GL_LOGIC_OP_MODE 0x0BF0\r
-#define GL_INDEX_LOGIC_OP 0x0BF1\r
-#define GL_COLOR_LOGIC_OP 0x0BF2\r
-#define GL_AUX_BUFFERS 0x0C00\r
-#define GL_DRAW_BUFFER 0x0C01\r
-#define GL_READ_BUFFER 0x0C02\r
-#define GL_SCISSOR_BOX 0x0C10\r
-#define GL_SCISSOR_TEST 0x0C11\r
-#define GL_INDEX_CLEAR_VALUE 0x0C20\r
-#define GL_INDEX_WRITEMASK 0x0C21\r
-#define GL_COLOR_CLEAR_VALUE 0x0C22\r
-#define GL_COLOR_WRITEMASK 0x0C23\r
-#define GL_INDEX_MODE 0x0C30\r
-#define GL_RGBA_MODE 0x0C31\r
-#define GL_DOUBLEBUFFER 0x0C32\r
-#define GL_STEREO 0x0C33\r
-#define GL_RENDER_MODE 0x0C40\r
-#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50\r
-#define GL_POINT_SMOOTH_HINT 0x0C51\r
-#define GL_LINE_SMOOTH_HINT 0x0C52\r
-#define GL_POLYGON_SMOOTH_HINT 0x0C53\r
-#define GL_FOG_HINT 0x0C54\r
-#define GL_TEXTURE_GEN_S 0x0C60\r
-#define GL_TEXTURE_GEN_T 0x0C61\r
-#define GL_TEXTURE_GEN_R 0x0C62\r
-#define GL_TEXTURE_GEN_Q 0x0C63\r
-#define GL_PIXEL_MAP_I_TO_I 0x0C70\r
-#define GL_PIXEL_MAP_S_TO_S 0x0C71\r
-#define GL_PIXEL_MAP_I_TO_R 0x0C72\r
-#define GL_PIXEL_MAP_I_TO_G 0x0C73\r
-#define GL_PIXEL_MAP_I_TO_B 0x0C74\r
-#define GL_PIXEL_MAP_I_TO_A 0x0C75\r
-#define GL_PIXEL_MAP_R_TO_R 0x0C76\r
-#define GL_PIXEL_MAP_G_TO_G 0x0C77\r
-#define GL_PIXEL_MAP_B_TO_B 0x0C78\r
-#define GL_PIXEL_MAP_A_TO_A 0x0C79\r
-#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0\r
-#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1\r
-#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2\r
-#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3\r
-#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4\r
-#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5\r
-#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6\r
-#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7\r
-#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8\r
-#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9\r
-#define GL_UNPACK_SWAP_BYTES 0x0CF0\r
-#define GL_UNPACK_LSB_FIRST 0x0CF1\r
-#define GL_UNPACK_ROW_LENGTH 0x0CF2\r
-#define GL_UNPACK_SKIP_ROWS 0x0CF3\r
-#define GL_UNPACK_SKIP_PIXELS 0x0CF4\r
-#define GL_UNPACK_ALIGNMENT 0x0CF5\r
-#define GL_PACK_SWAP_BYTES 0x0D00\r
-#define GL_PACK_LSB_FIRST 0x0D01\r
-#define GL_PACK_ROW_LENGTH 0x0D02\r
-#define GL_PACK_SKIP_ROWS 0x0D03\r
-#define GL_PACK_SKIP_PIXELS 0x0D04\r
-#define GL_PACK_ALIGNMENT 0x0D05\r
-#define GL_MAP_COLOR 0x0D10\r
-#define GL_MAP_STENCIL 0x0D11\r
-#define GL_INDEX_SHIFT 0x0D12\r
-#define GL_INDEX_OFFSET 0x0D13\r
-#define GL_RED_SCALE 0x0D14\r
-#define GL_RED_BIAS 0x0D15\r
-#define GL_ZOOM_X 0x0D16\r
-#define GL_ZOOM_Y 0x0D17\r
-#define GL_GREEN_SCALE 0x0D18\r
-#define GL_GREEN_BIAS 0x0D19\r
-#define GL_BLUE_SCALE 0x0D1A\r
-#define GL_BLUE_BIAS 0x0D1B\r
-#define GL_ALPHA_SCALE 0x0D1C\r
-#define GL_ALPHA_BIAS 0x0D1D\r
-#define GL_DEPTH_SCALE 0x0D1E\r
-#define GL_DEPTH_BIAS 0x0D1F\r
-#define GL_MAX_EVAL_ORDER 0x0D30\r
-#define GL_MAX_LIGHTS 0x0D31\r
-#define GL_MAX_CLIP_PLANES 0x0D32\r
-#define GL_MAX_TEXTURE_SIZE 0x0D33\r
-#define GL_MAX_PIXEL_MAP_TABLE 0x0D34\r
-#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35\r
-#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36\r
-#define GL_MAX_NAME_STACK_DEPTH 0x0D37\r
-#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38\r
-#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39\r
-#define GL_MAX_VIEWPORT_DIMS 0x0D3A\r
-#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B\r
-#define GL_SUBPIXEL_BITS 0x0D50\r
-#define GL_INDEX_BITS 0x0D51\r
-#define GL_RED_BITS 0x0D52\r
-#define GL_GREEN_BITS 0x0D53\r
-#define GL_BLUE_BITS 0x0D54\r
-#define GL_ALPHA_BITS 0x0D55\r
-#define GL_DEPTH_BITS 0x0D56\r
-#define GL_STENCIL_BITS 0x0D57\r
-#define GL_ACCUM_RED_BITS 0x0D58\r
-#define GL_ACCUM_GREEN_BITS 0x0D59\r
-#define GL_ACCUM_BLUE_BITS 0x0D5A\r
-#define GL_ACCUM_ALPHA_BITS 0x0D5B\r
-#define GL_NAME_STACK_DEPTH 0x0D70\r
-#define GL_AUTO_NORMAL 0x0D80\r
-#define GL_MAP1_COLOR_4 0x0D90\r
-#define GL_MAP1_INDEX 0x0D91\r
-#define GL_MAP1_NORMAL 0x0D92\r
-#define GL_MAP1_TEXTURE_COORD_1 0x0D93\r
-#define GL_MAP1_TEXTURE_COORD_2 0x0D94\r
-#define GL_MAP1_TEXTURE_COORD_3 0x0D95\r
-#define GL_MAP1_TEXTURE_COORD_4 0x0D96\r
-#define GL_MAP1_VERTEX_3 0x0D97\r
-#define GL_MAP1_VERTEX_4 0x0D98\r
-#define GL_MAP2_COLOR_4 0x0DB0\r
-#define GL_MAP2_INDEX 0x0DB1\r
-#define GL_MAP2_NORMAL 0x0DB2\r
-#define GL_MAP2_TEXTURE_COORD_1 0x0DB3\r
-#define GL_MAP2_TEXTURE_COORD_2 0x0DB4\r
-#define GL_MAP2_TEXTURE_COORD_3 0x0DB5\r
-#define GL_MAP2_TEXTURE_COORD_4 0x0DB6\r
-#define GL_MAP2_VERTEX_3 0x0DB7\r
-#define GL_MAP2_VERTEX_4 0x0DB8\r
-#define GL_MAP1_GRID_DOMAIN 0x0DD0\r
-#define GL_MAP1_GRID_SEGMENTS 0x0DD1\r
-#define GL_MAP2_GRID_DOMAIN 0x0DD2\r
-#define GL_MAP2_GRID_SEGMENTS 0x0DD3\r
-#define GL_TEXTURE_1D 0x0DE0\r
-#define GL_TEXTURE_2D 0x0DE1\r
-#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0\r
-#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1\r
-#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2\r
-#define GL_SELECTION_BUFFER_POINTER 0x0DF3\r
-#define GL_SELECTION_BUFFER_SIZE 0x0DF4\r
-#define GL_TEXTURE_WIDTH 0x1000\r
-#define GL_TRANSFORM_BIT 0x00001000\r
-#define GL_TEXTURE_HEIGHT 0x1001\r
-#define GL_TEXTURE_INTERNAL_FORMAT 0x1003\r
-#define GL_TEXTURE_BORDER_COLOR 0x1004\r
-#define GL_TEXTURE_BORDER 0x1005\r
-#define GL_DONT_CARE 0x1100\r
-#define GL_FASTEST 0x1101\r
-#define GL_NICEST 0x1102\r
-#define GL_AMBIENT 0x1200\r
-#define GL_DIFFUSE 0x1201\r
-#define GL_SPECULAR 0x1202\r
-#define GL_POSITION 0x1203\r
-#define GL_SPOT_DIRECTION 0x1204\r
-#define GL_SPOT_EXPONENT 0x1205\r
-#define GL_SPOT_CUTOFF 0x1206\r
-#define GL_CONSTANT_ATTENUATION 0x1207\r
-#define GL_LINEAR_ATTENUATION 0x1208\r
-#define GL_QUADRATIC_ATTENUATION 0x1209\r
-#define GL_COMPILE 0x1300\r
-#define GL_COMPILE_AND_EXECUTE 0x1301\r
-#define GL_BYTE 0x1400\r
-#define GL_UNSIGNED_BYTE 0x1401\r
-#define GL_SHORT 0x1402\r
-#define GL_UNSIGNED_SHORT 0x1403\r
-#define GL_INT 0x1404\r
-#define GL_UNSIGNED_INT 0x1405\r
-#define GL_FLOAT 0x1406\r
-#define GL_2_BYTES 0x1407\r
-#define GL_3_BYTES 0x1408\r
-#define GL_4_BYTES 0x1409\r
-#define GL_DOUBLE 0x140A\r
-#define GL_CLEAR 0x1500\r
-#define GL_AND 0x1501\r
-#define GL_AND_REVERSE 0x1502\r
-#define GL_COPY 0x1503\r
-#define GL_AND_INVERTED 0x1504\r
-#define GL_NOOP 0x1505\r
-#define GL_XOR 0x1506\r
-#define GL_OR 0x1507\r
-#define GL_NOR 0x1508\r
-#define GL_EQUIV 0x1509\r
-#define GL_INVERT 0x150A\r
-#define GL_OR_REVERSE 0x150B\r
-#define GL_COPY_INVERTED 0x150C\r
-#define GL_OR_INVERTED 0x150D\r
-#define GL_NAND 0x150E\r
-#define GL_SET 0x150F\r
-#define GL_EMISSION 0x1600\r
-#define GL_SHININESS 0x1601\r
-#define GL_AMBIENT_AND_DIFFUSE 0x1602\r
-#define GL_COLOR_INDEXES 0x1603\r
-#define GL_MODELVIEW 0x1700\r
-#define GL_PROJECTION 0x1701\r
-#define GL_TEXTURE 0x1702\r
-#define GL_COLOR 0x1800\r
-#define GL_DEPTH 0x1801\r
-#define GL_STENCIL 0x1802\r
-#define GL_COLOR_INDEX 0x1900\r
-#define GL_STENCIL_INDEX 0x1901\r
-#define GL_DEPTH_COMPONENT 0x1902\r
-#define GL_RED 0x1903\r
-#define GL_GREEN 0x1904\r
-#define GL_BLUE 0x1905\r
-#define GL_ALPHA 0x1906\r
-#define GL_RGB 0x1907\r
-#define GL_RGBA 0x1908\r
-#define GL_LUMINANCE 0x1909\r
-#define GL_LUMINANCE_ALPHA 0x190A\r
-#define GL_BITMAP 0x1A00\r
-#define GL_POINT 0x1B00\r
-#define GL_LINE 0x1B01\r
-#define GL_FILL 0x1B02\r
-#define GL_RENDER 0x1C00\r
-#define GL_FEEDBACK 0x1C01\r
-#define GL_SELECT 0x1C02\r
-#define GL_FLAT 0x1D00\r
-#define GL_SMOOTH 0x1D01\r
-#define GL_KEEP 0x1E00\r
-#define GL_REPLACE 0x1E01\r
-#define GL_INCR 0x1E02\r
-#define GL_DECR 0x1E03\r
-#define GL_VENDOR 0x1F00\r
-#define GL_RENDERER 0x1F01\r
-#define GL_VERSION 0x1F02\r
-#define GL_EXTENSIONS 0x1F03\r
-#define GL_S 0x2000\r
-#define GL_ENABLE_BIT 0x00002000\r
-#define GL_T 0x2001\r
-#define GL_R 0x2002\r
-#define GL_Q 0x2003\r
-#define GL_MODULATE 0x2100\r
-#define GL_DECAL 0x2101\r
-#define GL_TEXTURE_ENV_MODE 0x2200\r
-#define GL_TEXTURE_ENV_COLOR 0x2201\r
-#define GL_TEXTURE_ENV 0x2300\r
-#define GL_EYE_LINEAR 0x2400\r
-#define GL_OBJECT_LINEAR 0x2401\r
-#define GL_SPHERE_MAP 0x2402\r
-#define GL_TEXTURE_GEN_MODE 0x2500\r
-#define GL_OBJECT_PLANE 0x2501\r
-#define GL_EYE_PLANE 0x2502\r
-#define GL_NEAREST 0x2600\r
-#define GL_LINEAR 0x2601\r
-#define GL_NEAREST_MIPMAP_NEAREST 0x2700\r
-#define GL_LINEAR_MIPMAP_NEAREST 0x2701\r
-#define GL_NEAREST_MIPMAP_LINEAR 0x2702\r
-#define GL_LINEAR_MIPMAP_LINEAR 0x2703\r
-#define GL_TEXTURE_MAG_FILTER 0x2800\r
-#define GL_TEXTURE_MIN_FILTER 0x2801\r
-#define GL_TEXTURE_WRAP_S 0x2802\r
-#define GL_TEXTURE_WRAP_T 0x2803\r
-#define GL_CLAMP 0x2900\r
-#define GL_REPEAT 0x2901\r
-#define GL_POLYGON_OFFSET_UNITS 0x2A00\r
-#define GL_POLYGON_OFFSET_POINT 0x2A01\r
-#define GL_POLYGON_OFFSET_LINE 0x2A02\r
-#define GL_R3_G3_B2 0x2A10\r
-#define GL_V2F 0x2A20\r
-#define GL_V3F 0x2A21\r
-#define GL_C4UB_V2F 0x2A22\r
-#define GL_C4UB_V3F 0x2A23\r
-#define GL_C3F_V3F 0x2A24\r
-#define GL_N3F_V3F 0x2A25\r
-#define GL_C4F_N3F_V3F 0x2A26\r
-#define GL_T2F_V3F 0x2A27\r
-#define GL_T4F_V4F 0x2A28\r
-#define GL_T2F_C4UB_V3F 0x2A29\r
-#define GL_T2F_C3F_V3F 0x2A2A\r
-#define GL_T2F_N3F_V3F 0x2A2B\r
-#define GL_T2F_C4F_N3F_V3F 0x2A2C\r
-#define GL_T4F_C4F_N3F_V4F 0x2A2D\r
-#define GL_CLIP_PLANE0 0x3000\r
-#define GL_CLIP_PLANE1 0x3001\r
-#define GL_CLIP_PLANE2 0x3002\r
-#define GL_CLIP_PLANE3 0x3003\r
-#define GL_CLIP_PLANE4 0x3004\r
-#define GL_CLIP_PLANE5 0x3005\r
-#define GL_LIGHT0 0x4000\r
-#define GL_COLOR_BUFFER_BIT 0x00004000\r
-#define GL_LIGHT1 0x4001\r
-#define GL_LIGHT2 0x4002\r
-#define GL_LIGHT3 0x4003\r
-#define GL_LIGHT4 0x4004\r
-#define GL_LIGHT5 0x4005\r
-#define GL_LIGHT6 0x4006\r
-#define GL_LIGHT7 0x4007\r
-#define GL_HINT_BIT 0x00008000\r
-#define GL_POLYGON_OFFSET_FILL 0x8037\r
-#define GL_POLYGON_OFFSET_FACTOR 0x8038\r
-#define GL_ALPHA4 0x803B\r
-#define GL_ALPHA8 0x803C\r
-#define GL_ALPHA12 0x803D\r
-#define GL_ALPHA16 0x803E\r
-#define GL_LUMINANCE4 0x803F\r
-#define GL_LUMINANCE8 0x8040\r
-#define GL_LUMINANCE12 0x8041\r
-#define GL_LUMINANCE16 0x8042\r
-#define GL_LUMINANCE4_ALPHA4 0x8043\r
-#define GL_LUMINANCE6_ALPHA2 0x8044\r
-#define GL_LUMINANCE8_ALPHA8 0x8045\r
-#define GL_LUMINANCE12_ALPHA4 0x8046\r
-#define GL_LUMINANCE12_ALPHA12 0x8047\r
-#define GL_LUMINANCE16_ALPHA16 0x8048\r
-#define GL_INTENSITY 0x8049\r
-#define GL_INTENSITY4 0x804A\r
-#define GL_INTENSITY8 0x804B\r
-#define GL_INTENSITY12 0x804C\r
-#define GL_INTENSITY16 0x804D\r
-#define GL_RGB4 0x804F\r
-#define GL_RGB5 0x8050\r
-#define GL_RGB8 0x8051\r
-#define GL_RGB10 0x8052\r
-#define GL_RGB12 0x8053\r
-#define GL_RGB16 0x8054\r
-#define GL_RGBA2 0x8055\r
-#define GL_RGBA4 0x8056\r
-#define GL_RGB5_A1 0x8057\r
-#define GL_RGBA8 0x8058\r
-#define GL_RGB10_A2 0x8059\r
-#define GL_RGBA12 0x805A\r
-#define GL_RGBA16 0x805B\r
-#define GL_TEXTURE_RED_SIZE 0x805C\r
-#define GL_TEXTURE_GREEN_SIZE 0x805D\r
-#define GL_TEXTURE_BLUE_SIZE 0x805E\r
-#define GL_TEXTURE_ALPHA_SIZE 0x805F\r
-#define GL_TEXTURE_LUMINANCE_SIZE 0x8060\r
-#define GL_TEXTURE_INTENSITY_SIZE 0x8061\r
-#define GL_PROXY_TEXTURE_1D 0x8063\r
-#define GL_PROXY_TEXTURE_2D 0x8064\r
-#define GL_TEXTURE_PRIORITY 0x8066\r
-#define GL_TEXTURE_RESIDENT 0x8067\r
-#define GL_TEXTURE_BINDING_1D 0x8068\r
-#define GL_TEXTURE_BINDING_2D 0x8069\r
-#define GL_VERTEX_ARRAY 0x8074\r
-#define GL_NORMAL_ARRAY 0x8075\r
-#define GL_COLOR_ARRAY 0x8076\r
-#define GL_INDEX_ARRAY 0x8077\r
-#define GL_TEXTURE_COORD_ARRAY 0x8078\r
-#define GL_EDGE_FLAG_ARRAY 0x8079\r
-#define GL_VERTEX_ARRAY_SIZE 0x807A\r
-#define GL_VERTEX_ARRAY_TYPE 0x807B\r
-#define GL_VERTEX_ARRAY_STRIDE 0x807C\r
-#define GL_NORMAL_ARRAY_TYPE 0x807E\r
-#define GL_NORMAL_ARRAY_STRIDE 0x807F\r
-#define GL_COLOR_ARRAY_SIZE 0x8081\r
-#define GL_COLOR_ARRAY_TYPE 0x8082\r
-#define GL_COLOR_ARRAY_STRIDE 0x8083\r
-#define GL_INDEX_ARRAY_TYPE 0x8085\r
-#define GL_INDEX_ARRAY_STRIDE 0x8086\r
-#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088\r
-#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089\r
-#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A\r
-#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C\r
-#define GL_VERTEX_ARRAY_POINTER 0x808E\r
-#define GL_NORMAL_ARRAY_POINTER 0x808F\r
-#define GL_COLOR_ARRAY_POINTER 0x8090\r
-#define GL_INDEX_ARRAY_POINTER 0x8091\r
-#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092\r
-#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093\r
-#define GL_COLOR_INDEX1_EXT 0x80E2\r
-#define GL_COLOR_INDEX2_EXT 0x80E3\r
-#define GL_COLOR_INDEX4_EXT 0x80E4\r
-#define GL_COLOR_INDEX8_EXT 0x80E5\r
-#define GL_COLOR_INDEX12_EXT 0x80E6\r
-#define GL_COLOR_INDEX16_EXT 0x80E7\r
-#define GL_EVAL_BIT 0x00010000\r
-#define GL_LIST_BIT 0x00020000\r
-#define GL_TEXTURE_BIT 0x00040000\r
-#define GL_SCISSOR_BIT 0x00080000\r
-#define GL_ALL_ATTRIB_BITS 0x000fffff\r
-#define GL_CLIENT_ALL_ATTRIB_BITS 0xffffffff\r
-\r
-GLAPI void GLAPIENTRY glAccum (GLenum op, GLfloat value);\r
-GLAPI void GLAPIENTRY glAlphaFunc (GLenum func, GLclampf ref);\r
-GLAPI GLboolean GLAPIENTRY glAreTexturesResident (GLsizei n, const GLuint *textures, GLboolean *residences);\r
-GLAPI void GLAPIENTRY glArrayElement (GLint i);\r
-GLAPI void GLAPIENTRY glBegin (GLenum mode);\r
-GLAPI void GLAPIENTRY glBindTexture (GLenum target, GLuint texture);\r
-GLAPI void GLAPIENTRY glBitmap (GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);\r
-GLAPI void GLAPIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);\r
-GLAPI void GLAPIENTRY glCallList (GLuint list);\r
-GLAPI void GLAPIENTRY glCallLists (GLsizei n, GLenum type, const GLvoid *lists);\r
-GLAPI void GLAPIENTRY glClear (GLbitfield mask);\r
-GLAPI void GLAPIENTRY glClearAccum (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);\r
-GLAPI void GLAPIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);\r
-GLAPI void GLAPIENTRY glClearDepth (GLclampd depth);\r
-GLAPI void GLAPIENTRY glClearIndex (GLfloat c);\r
-GLAPI void GLAPIENTRY glClearStencil (GLint s);\r
-GLAPI void GLAPIENTRY glClipPlane (GLenum plane, const GLdouble *equation);\r
-GLAPI void GLAPIENTRY glColor3b (GLbyte red, GLbyte green, GLbyte blue);\r
-GLAPI void GLAPIENTRY glColor3bv (const GLbyte *v);\r
-GLAPI void GLAPIENTRY glColor3d (GLdouble red, GLdouble green, GLdouble blue);\r
-GLAPI void GLAPIENTRY glColor3dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glColor3f (GLfloat red, GLfloat green, GLfloat blue);\r
-GLAPI void GLAPIENTRY glColor3fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glColor3i (GLint red, GLint green, GLint blue);\r
-GLAPI void GLAPIENTRY glColor3iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glColor3s (GLshort red, GLshort green, GLshort blue);\r
-GLAPI void GLAPIENTRY glColor3sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glColor3ub (GLubyte red, GLubyte green, GLubyte blue);\r
-GLAPI void GLAPIENTRY glColor3ubv (const GLubyte *v);\r
-GLAPI void GLAPIENTRY glColor3ui (GLuint red, GLuint green, GLuint blue);\r
-GLAPI void GLAPIENTRY glColor3uiv (const GLuint *v);\r
-GLAPI void GLAPIENTRY glColor3us (GLushort red, GLushort green, GLushort blue);\r
-GLAPI void GLAPIENTRY glColor3usv (const GLushort *v);\r
-GLAPI void GLAPIENTRY glColor4b (GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);\r
-GLAPI void GLAPIENTRY glColor4bv (const GLbyte *v);\r
-GLAPI void GLAPIENTRY glColor4d (GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);\r
-GLAPI void GLAPIENTRY glColor4dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glColor4f (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);\r
-GLAPI void GLAPIENTRY glColor4fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glColor4i (GLint red, GLint green, GLint blue, GLint alpha);\r
-GLAPI void GLAPIENTRY glColor4iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glColor4s (GLshort red, GLshort green, GLshort blue, GLshort alpha);\r
-GLAPI void GLAPIENTRY glColor4sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glColor4ub (GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);\r
-GLAPI void GLAPIENTRY glColor4ubv (const GLubyte *v);\r
-GLAPI void GLAPIENTRY glColor4ui (GLuint red, GLuint green, GLuint blue, GLuint alpha);\r
-GLAPI void GLAPIENTRY glColor4uiv (const GLuint *v);\r
-GLAPI void GLAPIENTRY glColor4us (GLushort red, GLushort green, GLushort blue, GLushort alpha);\r
-GLAPI void GLAPIENTRY glColor4usv (const GLushort *v);\r
-GLAPI void GLAPIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);\r
-GLAPI void GLAPIENTRY glColorMaterial (GLenum face, GLenum mode);\r
-GLAPI void GLAPIENTRY glColorPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);\r
-GLAPI void GLAPIENTRY glCopyPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);\r
-GLAPI void GLAPIENTRY glCopyTexImage1D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border);\r
-GLAPI void GLAPIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);\r
-GLAPI void GLAPIENTRY glCopyTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);\r
-GLAPI void GLAPIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);\r
-GLAPI void GLAPIENTRY glCullFace (GLenum mode);\r
-GLAPI void GLAPIENTRY glDeleteLists (GLuint list, GLsizei range);\r
-GLAPI void GLAPIENTRY glDeleteTextures (GLsizei n, const GLuint *textures);\r
-GLAPI void GLAPIENTRY glDepthFunc (GLenum func);\r
-GLAPI void GLAPIENTRY glDepthMask (GLboolean flag);\r
-GLAPI void GLAPIENTRY glDepthRange (GLclampd zNear, GLclampd zFar);\r
-GLAPI void GLAPIENTRY glDisable (GLenum cap);\r
-GLAPI void GLAPIENTRY glDisableClientState (GLenum array);\r
-GLAPI void GLAPIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);\r
-GLAPI void GLAPIENTRY glDrawBuffer (GLenum mode);\r
-GLAPI void GLAPIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);\r
-GLAPI void GLAPIENTRY glDrawPixels (GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);\r
-GLAPI void GLAPIENTRY glEdgeFlag (GLboolean flag);\r
-GLAPI void GLAPIENTRY glEdgeFlagPointer (GLsizei stride, const GLvoid *pointer);\r
-GLAPI void GLAPIENTRY glEdgeFlagv (const GLboolean *flag);\r
-GLAPI void GLAPIENTRY glEnable (GLenum cap);\r
-GLAPI void GLAPIENTRY glEnableClientState (GLenum array);\r
-GLAPI void GLAPIENTRY glEnd (void);\r
-GLAPI void GLAPIENTRY glEndList (void);\r
-GLAPI void GLAPIENTRY glEvalCoord1d (GLdouble u);\r
-GLAPI void GLAPIENTRY glEvalCoord1dv (const GLdouble *u);\r
-GLAPI void GLAPIENTRY glEvalCoord1f (GLfloat u);\r
-GLAPI void GLAPIENTRY glEvalCoord1fv (const GLfloat *u);\r
-GLAPI void GLAPIENTRY glEvalCoord2d (GLdouble u, GLdouble v);\r
-GLAPI void GLAPIENTRY glEvalCoord2dv (const GLdouble *u);\r
-GLAPI void GLAPIENTRY glEvalCoord2f (GLfloat u, GLfloat v);\r
-GLAPI void GLAPIENTRY glEvalCoord2fv (const GLfloat *u);\r
-GLAPI void GLAPIENTRY glEvalMesh1 (GLenum mode, GLint i1, GLint i2);\r
-GLAPI void GLAPIENTRY glEvalMesh2 (GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);\r
-GLAPI void GLAPIENTRY glEvalPoint1 (GLint i);\r
-GLAPI void GLAPIENTRY glEvalPoint2 (GLint i, GLint j);\r
-GLAPI void GLAPIENTRY glFeedbackBuffer (GLsizei size, GLenum type, GLfloat *buffer);\r
-GLAPI void GLAPIENTRY glFinish (void);\r
-GLAPI void GLAPIENTRY glFlush (void);\r
-GLAPI void GLAPIENTRY glFogf (GLenum pname, GLfloat param);\r
-GLAPI void GLAPIENTRY glFogfv (GLenum pname, const GLfloat *params);\r
-GLAPI void GLAPIENTRY glFogi (GLenum pname, GLint param);\r
-GLAPI void GLAPIENTRY glFogiv (GLenum pname, const GLint *params);\r
-GLAPI void GLAPIENTRY glFrontFace (GLenum mode);\r
-GLAPI void GLAPIENTRY glFrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);\r
-GLAPI GLuint GLAPIENTRY glGenLists (GLsizei range);\r
-GLAPI void GLAPIENTRY glGenTextures (GLsizei n, GLuint *textures);\r
-GLAPI void GLAPIENTRY glGetBooleanv (GLenum pname, GLboolean *params);\r
-GLAPI void GLAPIENTRY glGetClipPlane (GLenum plane, GLdouble *equation);\r
-GLAPI void GLAPIENTRY glGetDoublev (GLenum pname, GLdouble *params);\r
-GLAPI GLenum GLAPIENTRY glGetError (void);\r
-GLAPI void GLAPIENTRY glGetFloatv (GLenum pname, GLfloat *params);\r
-GLAPI void GLAPIENTRY glGetIntegerv (GLenum pname, GLint *params);\r
-GLAPI void GLAPIENTRY glGetLightfv (GLenum light, GLenum pname, GLfloat *params);\r
-GLAPI void GLAPIENTRY glGetLightiv (GLenum light, GLenum pname, GLint *params);\r
-GLAPI void GLAPIENTRY glGetMapdv (GLenum target, GLenum query, GLdouble *v);\r
-GLAPI void GLAPIENTRY glGetMapfv (GLenum target, GLenum query, GLfloat *v);\r
-GLAPI void GLAPIENTRY glGetMapiv (GLenum target, GLenum query, GLint *v);\r
-GLAPI void GLAPIENTRY glGetMaterialfv (GLenum face, GLenum pname, GLfloat *params);\r
-GLAPI void GLAPIENTRY glGetMaterialiv (GLenum face, GLenum pname, GLint *params);\r
-GLAPI void GLAPIENTRY glGetPixelMapfv (GLenum map, GLfloat *values);\r
-GLAPI void GLAPIENTRY glGetPixelMapuiv (GLenum map, GLuint *values);\r
-GLAPI void GLAPIENTRY glGetPixelMapusv (GLenum map, GLushort *values);\r
-GLAPI void GLAPIENTRY glGetPointerv (GLenum pname, GLvoid* *params);\r
-GLAPI void GLAPIENTRY glGetPolygonStipple (GLubyte *mask);\r
-GLAPI const GLubyte * GLAPIENTRY glGetString (GLenum name);\r
-GLAPI void GLAPIENTRY glGetTexEnvfv (GLenum target, GLenum pname, GLfloat *params);\r
-GLAPI void GLAPIENTRY glGetTexEnviv (GLenum target, GLenum pname, GLint *params);\r
-GLAPI void GLAPIENTRY glGetTexGendv (GLenum coord, GLenum pname, GLdouble *params);\r
-GLAPI void GLAPIENTRY glGetTexGenfv (GLenum coord, GLenum pname, GLfloat *params);\r
-GLAPI void GLAPIENTRY glGetTexGeniv (GLenum coord, GLenum pname, GLint *params);\r
-GLAPI void GLAPIENTRY glGetTexImage (GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);\r
-GLAPI void GLAPIENTRY glGetTexLevelParameterfv (GLenum target, GLint level, GLenum pname, GLfloat *params);\r
-GLAPI void GLAPIENTRY glGetTexLevelParameteriv (GLenum target, GLint level, GLenum pname, GLint *params);\r
-GLAPI void GLAPIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat *params);\r
-GLAPI void GLAPIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint *params);\r
-GLAPI void GLAPIENTRY glHint (GLenum target, GLenum mode);\r
-GLAPI void GLAPIENTRY glIndexMask (GLuint mask);\r
-GLAPI void GLAPIENTRY glIndexPointer (GLenum type, GLsizei stride, const GLvoid *pointer);\r
-GLAPI void GLAPIENTRY glIndexd (GLdouble c);\r
-GLAPI void GLAPIENTRY glIndexdv (const GLdouble *c);\r
-GLAPI void GLAPIENTRY glIndexf (GLfloat c);\r
-GLAPI void GLAPIENTRY glIndexfv (const GLfloat *c);\r
-GLAPI void GLAPIENTRY glIndexi (GLint c);\r
-GLAPI void GLAPIENTRY glIndexiv (const GLint *c);\r
-GLAPI void GLAPIENTRY glIndexs (GLshort c);\r
-GLAPI void GLAPIENTRY glIndexsv (const GLshort *c);\r
-GLAPI void GLAPIENTRY glIndexub (GLubyte c);\r
-GLAPI void GLAPIENTRY glIndexubv (const GLubyte *c);\r
-GLAPI void GLAPIENTRY glInitNames (void);\r
-GLAPI void GLAPIENTRY glInterleavedArrays (GLenum format, GLsizei stride, const GLvoid *pointer);\r
-GLAPI GLboolean GLAPIENTRY glIsEnabled (GLenum cap);\r
-GLAPI GLboolean GLAPIENTRY glIsList (GLuint list);\r
-GLAPI GLboolean GLAPIENTRY glIsTexture (GLuint texture);\r
-GLAPI void GLAPIENTRY glLightModelf (GLenum pname, GLfloat param);\r
-GLAPI void GLAPIENTRY glLightModelfv (GLenum pname, const GLfloat *params);\r
-GLAPI void GLAPIENTRY glLightModeli (GLenum pname, GLint param);\r
-GLAPI void GLAPIENTRY glLightModeliv (GLenum pname, const GLint *params);\r
-GLAPI void GLAPIENTRY glLightf (GLenum light, GLenum pname, GLfloat param);\r
-GLAPI void GLAPIENTRY glLightfv (GLenum light, GLenum pname, const GLfloat *params);\r
-GLAPI void GLAPIENTRY glLighti (GLenum light, GLenum pname, GLint param);\r
-GLAPI void GLAPIENTRY glLightiv (GLenum light, GLenum pname, const GLint *params);\r
-GLAPI void GLAPIENTRY glLineStipple (GLint factor, GLushort pattern);\r
-GLAPI void GLAPIENTRY glLineWidth (GLfloat width);\r
-GLAPI void GLAPIENTRY glListBase (GLuint base);\r
-GLAPI void GLAPIENTRY glLoadIdentity (void);\r
-GLAPI void GLAPIENTRY glLoadMatrixd (const GLdouble *m);\r
-GLAPI void GLAPIENTRY glLoadMatrixf (const GLfloat *m);\r
-GLAPI void GLAPIENTRY glLoadName (GLuint name);\r
-GLAPI void GLAPIENTRY glLogicOp (GLenum opcode);\r
-GLAPI void GLAPIENTRY glMap1d (GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);\r
-GLAPI void GLAPIENTRY glMap1f (GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);\r
-GLAPI void GLAPIENTRY glMap2d (GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);\r
-GLAPI void GLAPIENTRY glMap2f (GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);\r
-GLAPI void GLAPIENTRY glMapGrid1d (GLint un, GLdouble u1, GLdouble u2);\r
-GLAPI void GLAPIENTRY glMapGrid1f (GLint un, GLfloat u1, GLfloat u2);\r
-GLAPI void GLAPIENTRY glMapGrid2d (GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);\r
-GLAPI void GLAPIENTRY glMapGrid2f (GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);\r
-GLAPI void GLAPIENTRY glMaterialf (GLenum face, GLenum pname, GLfloat param);\r
-GLAPI void GLAPIENTRY glMaterialfv (GLenum face, GLenum pname, const GLfloat *params);\r
-GLAPI void GLAPIENTRY glMateriali (GLenum face, GLenum pname, GLint param);\r
-GLAPI void GLAPIENTRY glMaterialiv (GLenum face, GLenum pname, const GLint *params);\r
-GLAPI void GLAPIENTRY glMatrixMode (GLenum mode);\r
-GLAPI void GLAPIENTRY glMultMatrixd (const GLdouble *m);\r
-GLAPI void GLAPIENTRY glMultMatrixf (const GLfloat *m);\r
-GLAPI void GLAPIENTRY glNewList (GLuint list, GLenum mode);\r
-GLAPI void GLAPIENTRY glNormal3b (GLbyte nx, GLbyte ny, GLbyte nz);\r
-GLAPI void GLAPIENTRY glNormal3bv (const GLbyte *v);\r
-GLAPI void GLAPIENTRY glNormal3d (GLdouble nx, GLdouble ny, GLdouble nz);\r
-GLAPI void GLAPIENTRY glNormal3dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glNormal3f (GLfloat nx, GLfloat ny, GLfloat nz);\r
-GLAPI void GLAPIENTRY glNormal3fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glNormal3i (GLint nx, GLint ny, GLint nz);\r
-GLAPI void GLAPIENTRY glNormal3iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glNormal3s (GLshort nx, GLshort ny, GLshort nz);\r
-GLAPI void GLAPIENTRY glNormal3sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glNormalPointer (GLenum type, GLsizei stride, const GLvoid *pointer);\r
-GLAPI void GLAPIENTRY glOrtho (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);\r
-GLAPI void GLAPIENTRY glPassThrough (GLfloat token);\r
-GLAPI void GLAPIENTRY glPixelMapfv (GLenum map, GLsizei mapsize, const GLfloat *values);\r
-GLAPI void GLAPIENTRY glPixelMapuiv (GLenum map, GLsizei mapsize, const GLuint *values);\r
-GLAPI void GLAPIENTRY glPixelMapusv (GLenum map, GLsizei mapsize, const GLushort *values);\r
-GLAPI void GLAPIENTRY glPixelStoref (GLenum pname, GLfloat param);\r
-GLAPI void GLAPIENTRY glPixelStorei (GLenum pname, GLint param);\r
-GLAPI void GLAPIENTRY glPixelTransferf (GLenum pname, GLfloat param);\r
-GLAPI void GLAPIENTRY glPixelTransferi (GLenum pname, GLint param);\r
-GLAPI void GLAPIENTRY glPixelZoom (GLfloat xfactor, GLfloat yfactor);\r
-GLAPI void GLAPIENTRY glPointSize (GLfloat size);\r
-GLAPI void GLAPIENTRY glPolygonMode (GLenum face, GLenum mode);\r
-GLAPI void GLAPIENTRY glPolygonOffset (GLfloat factor, GLfloat units);\r
-GLAPI void GLAPIENTRY glPolygonStipple (const GLubyte *mask);\r
-GLAPI void GLAPIENTRY glPopAttrib (void);\r
-GLAPI void GLAPIENTRY glPopClientAttrib (void);\r
-GLAPI void GLAPIENTRY glPopMatrix (void);\r
-GLAPI void GLAPIENTRY glPopName (void);\r
-GLAPI void GLAPIENTRY glPrioritizeTextures (GLsizei n, const GLuint *textures, const GLclampf *priorities);\r
-GLAPI void GLAPIENTRY glPushAttrib (GLbitfield mask);\r
-GLAPI void GLAPIENTRY glPushClientAttrib (GLbitfield mask);\r
-GLAPI void GLAPIENTRY glPushMatrix (void);\r
-GLAPI void GLAPIENTRY glPushName (GLuint name);\r
-GLAPI void GLAPIENTRY glRasterPos2d (GLdouble x, GLdouble y);\r
-GLAPI void GLAPIENTRY glRasterPos2dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glRasterPos2f (GLfloat x, GLfloat y);\r
-GLAPI void GLAPIENTRY glRasterPos2fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glRasterPos2i (GLint x, GLint y);\r
-GLAPI void GLAPIENTRY glRasterPos2iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glRasterPos2s (GLshort x, GLshort y);\r
-GLAPI void GLAPIENTRY glRasterPos2sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glRasterPos3d (GLdouble x, GLdouble y, GLdouble z);\r
-GLAPI void GLAPIENTRY glRasterPos3dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glRasterPos3f (GLfloat x, GLfloat y, GLfloat z);\r
-GLAPI void GLAPIENTRY glRasterPos3fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glRasterPos3i (GLint x, GLint y, GLint z);\r
-GLAPI void GLAPIENTRY glRasterPos3iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glRasterPos3s (GLshort x, GLshort y, GLshort z);\r
-GLAPI void GLAPIENTRY glRasterPos3sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glRasterPos4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-GLAPI void GLAPIENTRY glRasterPos4dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glRasterPos4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-GLAPI void GLAPIENTRY glRasterPos4fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glRasterPos4i (GLint x, GLint y, GLint z, GLint w);\r
-GLAPI void GLAPIENTRY glRasterPos4iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glRasterPos4s (GLshort x, GLshort y, GLshort z, GLshort w);\r
-GLAPI void GLAPIENTRY glRasterPos4sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glReadBuffer (GLenum mode);\r
-GLAPI void GLAPIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);\r
-GLAPI void GLAPIENTRY glRectd (GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);\r
-GLAPI void GLAPIENTRY glRectdv (const GLdouble *v1, const GLdouble *v2);\r
-GLAPI void GLAPIENTRY glRectf (GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);\r
-GLAPI void GLAPIENTRY glRectfv (const GLfloat *v1, const GLfloat *v2);\r
-GLAPI void GLAPIENTRY glRecti (GLint x1, GLint y1, GLint x2, GLint y2);\r
-GLAPI void GLAPIENTRY glRectiv (const GLint *v1, const GLint *v2);\r
-GLAPI void GLAPIENTRY glRects (GLshort x1, GLshort y1, GLshort x2, GLshort y2);\r
-GLAPI void GLAPIENTRY glRectsv (const GLshort *v1, const GLshort *v2);\r
-GLAPI GLint GLAPIENTRY glRenderMode (GLenum mode);\r
-GLAPI void GLAPIENTRY glRotated (GLdouble angle, GLdouble x, GLdouble y, GLdouble z);\r
-GLAPI void GLAPIENTRY glRotatef (GLfloat angle, GLfloat x, GLfloat y, GLfloat z);\r
-GLAPI void GLAPIENTRY glScaled (GLdouble x, GLdouble y, GLdouble z);\r
-GLAPI void GLAPIENTRY glScalef (GLfloat x, GLfloat y, GLfloat z);\r
-GLAPI void GLAPIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);\r
-GLAPI void GLAPIENTRY glSelectBuffer (GLsizei size, GLuint *buffer);\r
-GLAPI void GLAPIENTRY glShadeModel (GLenum mode);\r
-GLAPI void GLAPIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);\r
-GLAPI void GLAPIENTRY glStencilMask (GLuint mask);\r
-GLAPI void GLAPIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);\r
-GLAPI void GLAPIENTRY glTexCoord1d (GLdouble s);\r
-GLAPI void GLAPIENTRY glTexCoord1dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glTexCoord1f (GLfloat s);\r
-GLAPI void GLAPIENTRY glTexCoord1fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glTexCoord1i (GLint s);\r
-GLAPI void GLAPIENTRY glTexCoord1iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glTexCoord1s (GLshort s);\r
-GLAPI void GLAPIENTRY glTexCoord1sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glTexCoord2d (GLdouble s, GLdouble t);\r
-GLAPI void GLAPIENTRY glTexCoord2dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glTexCoord2f (GLfloat s, GLfloat t);\r
-GLAPI void GLAPIENTRY glTexCoord2fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glTexCoord2i (GLint s, GLint t);\r
-GLAPI void GLAPIENTRY glTexCoord2iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glTexCoord2s (GLshort s, GLshort t);\r
-GLAPI void GLAPIENTRY glTexCoord2sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glTexCoord3d (GLdouble s, GLdouble t, GLdouble r);\r
-GLAPI void GLAPIENTRY glTexCoord3dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glTexCoord3f (GLfloat s, GLfloat t, GLfloat r);\r
-GLAPI void GLAPIENTRY glTexCoord3fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glTexCoord3i (GLint s, GLint t, GLint r);\r
-GLAPI void GLAPIENTRY glTexCoord3iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glTexCoord3s (GLshort s, GLshort t, GLshort r);\r
-GLAPI void GLAPIENTRY glTexCoord3sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glTexCoord4d (GLdouble s, GLdouble t, GLdouble r, GLdouble q);\r
-GLAPI void GLAPIENTRY glTexCoord4dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glTexCoord4f (GLfloat s, GLfloat t, GLfloat r, GLfloat q);\r
-GLAPI void GLAPIENTRY glTexCoord4fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glTexCoord4i (GLint s, GLint t, GLint r, GLint q);\r
-GLAPI void GLAPIENTRY glTexCoord4iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glTexCoord4s (GLshort s, GLshort t, GLshort r, GLshort q);\r
-GLAPI void GLAPIENTRY glTexCoord4sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glTexCoordPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);\r
-GLAPI void GLAPIENTRY glTexEnvf (GLenum target, GLenum pname, GLfloat param);\r
-GLAPI void GLAPIENTRY glTexEnvfv (GLenum target, GLenum pname, const GLfloat *params);\r
-GLAPI void GLAPIENTRY glTexEnvi (GLenum target, GLenum pname, GLint param);\r
-GLAPI void GLAPIENTRY glTexEnviv (GLenum target, GLenum pname, const GLint *params);\r
-GLAPI void GLAPIENTRY glTexGend (GLenum coord, GLenum pname, GLdouble param);\r
-GLAPI void GLAPIENTRY glTexGendv (GLenum coord, GLenum pname, const GLdouble *params);\r
-GLAPI void GLAPIENTRY glTexGenf (GLenum coord, GLenum pname, GLfloat param);\r
-GLAPI void GLAPIENTRY glTexGenfv (GLenum coord, GLenum pname, const GLfloat *params);\r
-GLAPI void GLAPIENTRY glTexGeni (GLenum coord, GLenum pname, GLint param);\r
-GLAPI void GLAPIENTRY glTexGeniv (GLenum coord, GLenum pname, const GLint *params);\r
-GLAPI void GLAPIENTRY glTexImage1D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);\r
-GLAPI void GLAPIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);\r
-GLAPI void GLAPIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);\r
-GLAPI void GLAPIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat *params);\r
-GLAPI void GLAPIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);\r
-GLAPI void GLAPIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint *params);\r
-GLAPI void GLAPIENTRY glTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);\r
-GLAPI void GLAPIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);\r
-GLAPI void GLAPIENTRY glTranslated (GLdouble x, GLdouble y, GLdouble z);\r
-GLAPI void GLAPIENTRY glTranslatef (GLfloat x, GLfloat y, GLfloat z);\r
-GLAPI void GLAPIENTRY glVertex2d (GLdouble x, GLdouble y);\r
-GLAPI void GLAPIENTRY glVertex2dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glVertex2f (GLfloat x, GLfloat y);\r
-GLAPI void GLAPIENTRY glVertex2fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glVertex2i (GLint x, GLint y);\r
-GLAPI void GLAPIENTRY glVertex2iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glVertex2s (GLshort x, GLshort y);\r
-GLAPI void GLAPIENTRY glVertex2sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glVertex3d (GLdouble x, GLdouble y, GLdouble z);\r
-GLAPI void GLAPIENTRY glVertex3dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glVertex3f (GLfloat x, GLfloat y, GLfloat z);\r
-GLAPI void GLAPIENTRY glVertex3fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glVertex3i (GLint x, GLint y, GLint z);\r
-GLAPI void GLAPIENTRY glVertex3iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glVertex3s (GLshort x, GLshort y, GLshort z);\r
-GLAPI void GLAPIENTRY glVertex3sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glVertex4d (GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-GLAPI void GLAPIENTRY glVertex4dv (const GLdouble *v);\r
-GLAPI void GLAPIENTRY glVertex4f (GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-GLAPI void GLAPIENTRY glVertex4fv (const GLfloat *v);\r
-GLAPI void GLAPIENTRY glVertex4i (GLint x, GLint y, GLint z, GLint w);\r
-GLAPI void GLAPIENTRY glVertex4iv (const GLint *v);\r
-GLAPI void GLAPIENTRY glVertex4s (GLshort x, GLshort y, GLshort z, GLshort w);\r
-GLAPI void GLAPIENTRY glVertex4sv (const GLshort *v);\r
-GLAPI void GLAPIENTRY glVertexPointer (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);\r
-GLAPI void GLAPIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);\r
-\r
-#define GLEW_VERSION_1_1 GLEW_GET_VAR(__GLEW_VERSION_1_1)\r
-\r
-#endif /* GL_VERSION_1_1 */\r
-\r
-/* ---------------------------------- GLU ---------------------------------- */\r
-\r
-#ifndef GLEW_NO_GLU\r
-/* this is where we can safely include GLU */\r
-#  if defined(__APPLE__) && defined(__MACH__)\r
-#    include <OpenGL/glu.h>\r
-#  else\r
-#    include <GL/glu.h>\r
-#  endif\r
-#endif\r
-\r
-/* ----------------------------- GL_VERSION_1_2 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_1_2\r
-#define GL_VERSION_1_2 1\r
-\r
-#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12\r
-#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13\r
-#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22\r
-#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23\r
-#define GL_UNSIGNED_BYTE_3_3_2 0x8032\r
-#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033\r
-#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034\r
-#define GL_UNSIGNED_INT_8_8_8_8 0x8035\r
-#define GL_UNSIGNED_INT_10_10_10_2 0x8036\r
-#define GL_RESCALE_NORMAL 0x803A\r
-#define GL_TEXTURE_BINDING_3D 0x806A\r
-#define GL_PACK_SKIP_IMAGES 0x806B\r
-#define GL_PACK_IMAGE_HEIGHT 0x806C\r
-#define GL_UNPACK_SKIP_IMAGES 0x806D\r
-#define GL_UNPACK_IMAGE_HEIGHT 0x806E\r
-#define GL_TEXTURE_3D 0x806F\r
-#define GL_PROXY_TEXTURE_3D 0x8070\r
-#define GL_TEXTURE_DEPTH 0x8071\r
-#define GL_TEXTURE_WRAP_R 0x8072\r
-#define GL_MAX_3D_TEXTURE_SIZE 0x8073\r
-#define GL_BGR 0x80E0\r
-#define GL_BGRA 0x80E1\r
-#define GL_MAX_ELEMENTS_VERTICES 0x80E8\r
-#define GL_MAX_ELEMENTS_INDICES 0x80E9\r
-#define GL_CLAMP_TO_EDGE 0x812F\r
-#define GL_TEXTURE_MIN_LOD 0x813A\r
-#define GL_TEXTURE_MAX_LOD 0x813B\r
-#define GL_TEXTURE_BASE_LEVEL 0x813C\r
-#define GL_TEXTURE_MAX_LEVEL 0x813D\r
-#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8\r
-#define GL_SINGLE_COLOR 0x81F9\r
-#define GL_SEPARATE_SPECULAR_COLOR 0x81FA\r
-#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362\r
-#define GL_UNSIGNED_SHORT_5_6_5 0x8363\r
-#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364\r
-#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365\r
-#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366\r
-#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367\r
-#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368\r
-#define GL_ALIASED_POINT_SIZE_RANGE 0x846D\r
-#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);\r
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);\r
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid *pixels);\r
-\r
-#define glCopyTexSubImage3D GLEW_GET_FUN(__glewCopyTexSubImage3D)\r
-#define glDrawRangeElements GLEW_GET_FUN(__glewDrawRangeElements)\r
-#define glTexImage3D GLEW_GET_FUN(__glewTexImage3D)\r
-#define glTexSubImage3D GLEW_GET_FUN(__glewTexSubImage3D)\r
-\r
-#define GLEW_VERSION_1_2 GLEW_GET_VAR(__GLEW_VERSION_1_2)\r
-\r
-#endif /* GL_VERSION_1_2 */\r
-\r
-/* ---------------------------- GL_VERSION_1_2_1 --------------------------- */\r
-\r
-#ifndef GL_VERSION_1_2_1\r
-#define GL_VERSION_1_2_1 1\r
-\r
-#define GLEW_VERSION_1_2_1 GLEW_GET_VAR(__GLEW_VERSION_1_2_1)\r
-\r
-#endif /* GL_VERSION_1_2_1 */\r
-\r
-/* ----------------------------- GL_VERSION_1_3 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_1_3\r
-#define GL_VERSION_1_3 1\r
-\r
-#define GL_MULTISAMPLE 0x809D\r
-#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E\r
-#define GL_SAMPLE_ALPHA_TO_ONE 0x809F\r
-#define GL_SAMPLE_COVERAGE 0x80A0\r
-#define GL_SAMPLE_BUFFERS 0x80A8\r
-#define GL_SAMPLES 0x80A9\r
-#define GL_SAMPLE_COVERAGE_VALUE 0x80AA\r
-#define GL_SAMPLE_COVERAGE_INVERT 0x80AB\r
-#define GL_CLAMP_TO_BORDER 0x812D\r
-#define GL_TEXTURE0 0x84C0\r
-#define GL_TEXTURE1 0x84C1\r
-#define GL_TEXTURE2 0x84C2\r
-#define GL_TEXTURE3 0x84C3\r
-#define GL_TEXTURE4 0x84C4\r
-#define GL_TEXTURE5 0x84C5\r
-#define GL_TEXTURE6 0x84C6\r
-#define GL_TEXTURE7 0x84C7\r
-#define GL_TEXTURE8 0x84C8\r
-#define GL_TEXTURE9 0x84C9\r
-#define GL_TEXTURE10 0x84CA\r
-#define GL_TEXTURE11 0x84CB\r
-#define GL_TEXTURE12 0x84CC\r
-#define GL_TEXTURE13 0x84CD\r
-#define GL_TEXTURE14 0x84CE\r
-#define GL_TEXTURE15 0x84CF\r
-#define GL_TEXTURE16 0x84D0\r
-#define GL_TEXTURE17 0x84D1\r
-#define GL_TEXTURE18 0x84D2\r
-#define GL_TEXTURE19 0x84D3\r
-#define GL_TEXTURE20 0x84D4\r
-#define GL_TEXTURE21 0x84D5\r
-#define GL_TEXTURE22 0x84D6\r
-#define GL_TEXTURE23 0x84D7\r
-#define GL_TEXTURE24 0x84D8\r
-#define GL_TEXTURE25 0x84D9\r
-#define GL_TEXTURE26 0x84DA\r
-#define GL_TEXTURE27 0x84DB\r
-#define GL_TEXTURE28 0x84DC\r
-#define GL_TEXTURE29 0x84DD\r
-#define GL_TEXTURE30 0x84DE\r
-#define GL_TEXTURE31 0x84DF\r
-#define GL_ACTIVE_TEXTURE 0x84E0\r
-#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1\r
-#define GL_MAX_TEXTURE_UNITS 0x84E2\r
-#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3\r
-#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4\r
-#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5\r
-#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6\r
-#define GL_SUBTRACT 0x84E7\r
-#define GL_COMPRESSED_ALPHA 0x84E9\r
-#define GL_COMPRESSED_LUMINANCE 0x84EA\r
-#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB\r
-#define GL_COMPRESSED_INTENSITY 0x84EC\r
-#define GL_COMPRESSED_RGB 0x84ED\r
-#define GL_COMPRESSED_RGBA 0x84EE\r
-#define GL_TEXTURE_COMPRESSION_HINT 0x84EF\r
-#define GL_NORMAL_MAP 0x8511\r
-#define GL_REFLECTION_MAP 0x8512\r
-#define GL_TEXTURE_CUBE_MAP 0x8513\r
-#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514\r
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515\r
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516\r
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517\r
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518\r
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519\r
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A\r
-#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B\r
-#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C\r
-#define GL_COMBINE 0x8570\r
-#define GL_COMBINE_RGB 0x8571\r
-#define GL_COMBINE_ALPHA 0x8572\r
-#define GL_RGB_SCALE 0x8573\r
-#define GL_ADD_SIGNED 0x8574\r
-#define GL_INTERPOLATE 0x8575\r
-#define GL_CONSTANT 0x8576\r
-#define GL_PRIMARY_COLOR 0x8577\r
-#define GL_PREVIOUS 0x8578\r
-#define GL_SOURCE0_RGB 0x8580\r
-#define GL_SOURCE1_RGB 0x8581\r
-#define GL_SOURCE2_RGB 0x8582\r
-#define GL_SOURCE0_ALPHA 0x8588\r
-#define GL_SOURCE1_ALPHA 0x8589\r
-#define GL_SOURCE2_ALPHA 0x858A\r
-#define GL_OPERAND0_RGB 0x8590\r
-#define GL_OPERAND1_RGB 0x8591\r
-#define GL_OPERAND2_RGB 0x8592\r
-#define GL_OPERAND0_ALPHA 0x8598\r
-#define GL_OPERAND1_ALPHA 0x8599\r
-#define GL_OPERAND2_ALPHA 0x859A\r
-#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0\r
-#define GL_TEXTURE_COMPRESSED 0x86A1\r
-#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2\r
-#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3\r
-#define GL_DOT3_RGB 0x86AE\r
-#define GL_DOT3_RGBA 0x86AF\r
-#define GL_MULTISAMPLE_BIT 0x20000000\r
-\r
-typedef void (GLAPIENTRY * PFNGLACTIVETEXTUREPROC) (GLenum texture);\r
-typedef void (GLAPIENTRY * PFNGLCLIENTACTIVETEXTUREPROC) (GLenum texture);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid *data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data);\r
-typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint lod, GLvoid *img);\r
-typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXDPROC) (const GLdouble m[16]);\r
-typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXFPROC) (const GLfloat m[16]);\r
-typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXDPROC) (const GLdouble m[16]);\r
-typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXFPROC) (const GLfloat m[16]);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DPROC) (GLenum target, GLdouble s);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DVPROC) (GLenum target, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FPROC) (GLenum target, GLfloat s);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FVPROC) (GLenum target, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IPROC) (GLenum target, GLint s);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IVPROC) (GLenum target, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SPROC) (GLenum target, GLshort s);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SVPROC) (GLenum target, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DPROC) (GLenum target, GLdouble s, GLdouble t);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DVPROC) (GLenum target, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FVPROC) (GLenum target, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IPROC) (GLenum target, GLint s, GLint t);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IVPROC) (GLenum target, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SPROC) (GLenum target, GLshort s, GLshort t);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SVPROC) (GLenum target, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DVPROC) (GLenum target, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FVPROC) (GLenum target, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IPROC) (GLenum target, GLint s, GLint t, GLint r);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IVPROC) (GLenum target, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SPROC) (GLenum target, GLshort s, GLshort t, GLshort r);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SVPROC) (GLenum target, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DVPROC) (GLenum target, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FVPROC) (GLenum target, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IVPROC) (GLenum target, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SVPROC) (GLenum target, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEPROC) (GLclampf value, GLboolean invert);\r
-\r
-#define glActiveTexture GLEW_GET_FUN(__glewActiveTexture)\r
-#define glClientActiveTexture GLEW_GET_FUN(__glewClientActiveTexture)\r
-#define glCompressedTexImage1D GLEW_GET_FUN(__glewCompressedTexImage1D)\r
-#define glCompressedTexImage2D GLEW_GET_FUN(__glewCompressedTexImage2D)\r
-#define glCompressedTexImage3D GLEW_GET_FUN(__glewCompressedTexImage3D)\r
-#define glCompressedTexSubImage1D GLEW_GET_FUN(__glewCompressedTexSubImage1D)\r
-#define glCompressedTexSubImage2D GLEW_GET_FUN(__glewCompressedTexSubImage2D)\r
-#define glCompressedTexSubImage3D GLEW_GET_FUN(__glewCompressedTexSubImage3D)\r
-#define glGetCompressedTexImage GLEW_GET_FUN(__glewGetCompressedTexImage)\r
-#define glLoadTransposeMatrixd GLEW_GET_FUN(__glewLoadTransposeMatrixd)\r
-#define glLoadTransposeMatrixf GLEW_GET_FUN(__glewLoadTransposeMatrixf)\r
-#define glMultTransposeMatrixd GLEW_GET_FUN(__glewMultTransposeMatrixd)\r
-#define glMultTransposeMatrixf GLEW_GET_FUN(__glewMultTransposeMatrixf)\r
-#define glMultiTexCoord1d GLEW_GET_FUN(__glewMultiTexCoord1d)\r
-#define glMultiTexCoord1dv GLEW_GET_FUN(__glewMultiTexCoord1dv)\r
-#define glMultiTexCoord1f GLEW_GET_FUN(__glewMultiTexCoord1f)\r
-#define glMultiTexCoord1fv GLEW_GET_FUN(__glewMultiTexCoord1fv)\r
-#define glMultiTexCoord1i GLEW_GET_FUN(__glewMultiTexCoord1i)\r
-#define glMultiTexCoord1iv GLEW_GET_FUN(__glewMultiTexCoord1iv)\r
-#define glMultiTexCoord1s GLEW_GET_FUN(__glewMultiTexCoord1s)\r
-#define glMultiTexCoord1sv GLEW_GET_FUN(__glewMultiTexCoord1sv)\r
-#define glMultiTexCoord2d GLEW_GET_FUN(__glewMultiTexCoord2d)\r
-#define glMultiTexCoord2dv GLEW_GET_FUN(__glewMultiTexCoord2dv)\r
-#define glMultiTexCoord2f GLEW_GET_FUN(__glewMultiTexCoord2f)\r
-#define glMultiTexCoord2fv GLEW_GET_FUN(__glewMultiTexCoord2fv)\r
-#define glMultiTexCoord2i GLEW_GET_FUN(__glewMultiTexCoord2i)\r
-#define glMultiTexCoord2iv GLEW_GET_FUN(__glewMultiTexCoord2iv)\r
-#define glMultiTexCoord2s GLEW_GET_FUN(__glewMultiTexCoord2s)\r
-#define glMultiTexCoord2sv GLEW_GET_FUN(__glewMultiTexCoord2sv)\r
-#define glMultiTexCoord3d GLEW_GET_FUN(__glewMultiTexCoord3d)\r
-#define glMultiTexCoord3dv GLEW_GET_FUN(__glewMultiTexCoord3dv)\r
-#define glMultiTexCoord3f GLEW_GET_FUN(__glewMultiTexCoord3f)\r
-#define glMultiTexCoord3fv GLEW_GET_FUN(__glewMultiTexCoord3fv)\r
-#define glMultiTexCoord3i GLEW_GET_FUN(__glewMultiTexCoord3i)\r
-#define glMultiTexCoord3iv GLEW_GET_FUN(__glewMultiTexCoord3iv)\r
-#define glMultiTexCoord3s GLEW_GET_FUN(__glewMultiTexCoord3s)\r
-#define glMultiTexCoord3sv GLEW_GET_FUN(__glewMultiTexCoord3sv)\r
-#define glMultiTexCoord4d GLEW_GET_FUN(__glewMultiTexCoord4d)\r
-#define glMultiTexCoord4dv GLEW_GET_FUN(__glewMultiTexCoord4dv)\r
-#define glMultiTexCoord4f GLEW_GET_FUN(__glewMultiTexCoord4f)\r
-#define glMultiTexCoord4fv GLEW_GET_FUN(__glewMultiTexCoord4fv)\r
-#define glMultiTexCoord4i GLEW_GET_FUN(__glewMultiTexCoord4i)\r
-#define glMultiTexCoord4iv GLEW_GET_FUN(__glewMultiTexCoord4iv)\r
-#define glMultiTexCoord4s GLEW_GET_FUN(__glewMultiTexCoord4s)\r
-#define glMultiTexCoord4sv GLEW_GET_FUN(__glewMultiTexCoord4sv)\r
-#define glSampleCoverage GLEW_GET_FUN(__glewSampleCoverage)\r
-\r
-#define GLEW_VERSION_1_3 GLEW_GET_VAR(__GLEW_VERSION_1_3)\r
-\r
-#endif /* GL_VERSION_1_3 */\r
-\r
-/* ----------------------------- GL_VERSION_1_4 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_1_4\r
-#define GL_VERSION_1_4 1\r
-\r
-#define GL_BLEND_DST_RGB 0x80C8\r
-#define GL_BLEND_SRC_RGB 0x80C9\r
-#define GL_BLEND_DST_ALPHA 0x80CA\r
-#define GL_BLEND_SRC_ALPHA 0x80CB\r
-#define GL_POINT_SIZE_MIN 0x8126\r
-#define GL_POINT_SIZE_MAX 0x8127\r
-#define GL_POINT_FADE_THRESHOLD_SIZE 0x8128\r
-#define GL_POINT_DISTANCE_ATTENUATION 0x8129\r
-#define GL_GENERATE_MIPMAP 0x8191\r
-#define GL_GENERATE_MIPMAP_HINT 0x8192\r
-#define GL_DEPTH_COMPONENT16 0x81A5\r
-#define GL_DEPTH_COMPONENT24 0x81A6\r
-#define GL_DEPTH_COMPONENT32 0x81A7\r
-#define GL_MIRRORED_REPEAT 0x8370\r
-#define GL_FOG_COORDINATE_SOURCE 0x8450\r
-#define GL_FOG_COORDINATE 0x8451\r
-#define GL_FRAGMENT_DEPTH 0x8452\r
-#define GL_CURRENT_FOG_COORDINATE 0x8453\r
-#define GL_FOG_COORDINATE_ARRAY_TYPE 0x8454\r
-#define GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455\r
-#define GL_FOG_COORDINATE_ARRAY_POINTER 0x8456\r
-#define GL_FOG_COORDINATE_ARRAY 0x8457\r
-#define GL_COLOR_SUM 0x8458\r
-#define GL_CURRENT_SECONDARY_COLOR 0x8459\r
-#define GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A\r
-#define GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B\r
-#define GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C\r
-#define GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D\r
-#define GL_SECONDARY_COLOR_ARRAY 0x845E\r
-#define GL_MAX_TEXTURE_LOD_BIAS 0x84FD\r
-#define GL_TEXTURE_FILTER_CONTROL 0x8500\r
-#define GL_TEXTURE_LOD_BIAS 0x8501\r
-#define GL_INCR_WRAP 0x8507\r
-#define GL_DECR_WRAP 0x8508\r
-#define GL_TEXTURE_DEPTH_SIZE 0x884A\r
-#define GL_DEPTH_TEXTURE_MODE 0x884B\r
-#define GL_TEXTURE_COMPARE_MODE 0x884C\r
-#define GL_TEXTURE_COMPARE_FUNC 0x884D\r
-#define GL_COMPARE_R_TO_TEXTURE 0x884E\r
-\r
-typedef void (GLAPIENTRY * PFNGLBLENDCOLORPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONPROC) (GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTERPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDDPROC) (GLdouble coord);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDDVPROC) (const GLdouble *coord);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFPROC) (GLfloat coord);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFVPROC) (const GLfloat *coord);\r
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);\r
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount);\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFPROC) (GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVPROC) (GLenum pname, const GLfloat *params);\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIPROC) (GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIVPROC) (GLenum pname, const GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BPROC) (GLbyte red, GLbyte green, GLbyte blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BVPROC) (const GLbyte *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DPROC) (GLdouble red, GLdouble green, GLdouble blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DVPROC) (const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FPROC) (GLfloat red, GLfloat green, GLfloat blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FVPROC) (const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IPROC) (GLint red, GLint green, GLint blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IVPROC) (const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SPROC) (GLshort red, GLshort green, GLshort blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SVPROC) (const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBPROC) (GLubyte red, GLubyte green, GLubyte blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBVPROC) (const GLubyte *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIPROC) (GLuint red, GLuint green, GLuint blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIVPROC) (const GLuint *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USPROC) (GLushort red, GLushort green, GLushort blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USVPROC) (const GLushort *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTERPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DPROC) (GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVPROC) (const GLdouble *p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FPROC) (GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVPROC) (const GLfloat *p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IPROC) (GLint x, GLint y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVPROC) (const GLint *p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SPROC) (GLshort x, GLshort y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVPROC) (const GLshort *p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DPROC) (GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVPROC) (const GLdouble *p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FPROC) (GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVPROC) (const GLfloat *p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IPROC) (GLint x, GLint y, GLint z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVPROC) (const GLint *p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SPROC) (GLshort x, GLshort y, GLshort z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVPROC) (const GLshort *p);\r
-\r
-#define glBlendColor GLEW_GET_FUN(__glewBlendColor)\r
-#define glBlendEquation GLEW_GET_FUN(__glewBlendEquation)\r
-#define glBlendFuncSeparate GLEW_GET_FUN(__glewBlendFuncSeparate)\r
-#define glFogCoordPointer GLEW_GET_FUN(__glewFogCoordPointer)\r
-#define glFogCoordd GLEW_GET_FUN(__glewFogCoordd)\r
-#define glFogCoorddv GLEW_GET_FUN(__glewFogCoorddv)\r
-#define glFogCoordf GLEW_GET_FUN(__glewFogCoordf)\r
-#define glFogCoordfv GLEW_GET_FUN(__glewFogCoordfv)\r
-#define glMultiDrawArrays GLEW_GET_FUN(__glewMultiDrawArrays)\r
-#define glMultiDrawElements GLEW_GET_FUN(__glewMultiDrawElements)\r
-#define glPointParameterf GLEW_GET_FUN(__glewPointParameterf)\r
-#define glPointParameterfv GLEW_GET_FUN(__glewPointParameterfv)\r
-#define glPointParameteri GLEW_GET_FUN(__glewPointParameteri)\r
-#define glPointParameteriv GLEW_GET_FUN(__glewPointParameteriv)\r
-#define glSecondaryColor3b GLEW_GET_FUN(__glewSecondaryColor3b)\r
-#define glSecondaryColor3bv GLEW_GET_FUN(__glewSecondaryColor3bv)\r
-#define glSecondaryColor3d GLEW_GET_FUN(__glewSecondaryColor3d)\r
-#define glSecondaryColor3dv GLEW_GET_FUN(__glewSecondaryColor3dv)\r
-#define glSecondaryColor3f GLEW_GET_FUN(__glewSecondaryColor3f)\r
-#define glSecondaryColor3fv GLEW_GET_FUN(__glewSecondaryColor3fv)\r
-#define glSecondaryColor3i GLEW_GET_FUN(__glewSecondaryColor3i)\r
-#define glSecondaryColor3iv GLEW_GET_FUN(__glewSecondaryColor3iv)\r
-#define glSecondaryColor3s GLEW_GET_FUN(__glewSecondaryColor3s)\r
-#define glSecondaryColor3sv GLEW_GET_FUN(__glewSecondaryColor3sv)\r
-#define glSecondaryColor3ub GLEW_GET_FUN(__glewSecondaryColor3ub)\r
-#define glSecondaryColor3ubv GLEW_GET_FUN(__glewSecondaryColor3ubv)\r
-#define glSecondaryColor3ui GLEW_GET_FUN(__glewSecondaryColor3ui)\r
-#define glSecondaryColor3uiv GLEW_GET_FUN(__glewSecondaryColor3uiv)\r
-#define glSecondaryColor3us GLEW_GET_FUN(__glewSecondaryColor3us)\r
-#define glSecondaryColor3usv GLEW_GET_FUN(__glewSecondaryColor3usv)\r
-#define glSecondaryColorPointer GLEW_GET_FUN(__glewSecondaryColorPointer)\r
-#define glWindowPos2d GLEW_GET_FUN(__glewWindowPos2d)\r
-#define glWindowPos2dv GLEW_GET_FUN(__glewWindowPos2dv)\r
-#define glWindowPos2f GLEW_GET_FUN(__glewWindowPos2f)\r
-#define glWindowPos2fv GLEW_GET_FUN(__glewWindowPos2fv)\r
-#define glWindowPos2i GLEW_GET_FUN(__glewWindowPos2i)\r
-#define glWindowPos2iv GLEW_GET_FUN(__glewWindowPos2iv)\r
-#define glWindowPos2s GLEW_GET_FUN(__glewWindowPos2s)\r
-#define glWindowPos2sv GLEW_GET_FUN(__glewWindowPos2sv)\r
-#define glWindowPos3d GLEW_GET_FUN(__glewWindowPos3d)\r
-#define glWindowPos3dv GLEW_GET_FUN(__glewWindowPos3dv)\r
-#define glWindowPos3f GLEW_GET_FUN(__glewWindowPos3f)\r
-#define glWindowPos3fv GLEW_GET_FUN(__glewWindowPos3fv)\r
-#define glWindowPos3i GLEW_GET_FUN(__glewWindowPos3i)\r
-#define glWindowPos3iv GLEW_GET_FUN(__glewWindowPos3iv)\r
-#define glWindowPos3s GLEW_GET_FUN(__glewWindowPos3s)\r
-#define glWindowPos3sv GLEW_GET_FUN(__glewWindowPos3sv)\r
-\r
-#define GLEW_VERSION_1_4 GLEW_GET_VAR(__GLEW_VERSION_1_4)\r
-\r
-#endif /* GL_VERSION_1_4 */\r
-\r
-/* ----------------------------- GL_VERSION_1_5 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_1_5\r
-#define GL_VERSION_1_5 1\r
-\r
-#define GL_FOG_COORD_SRC GL_FOG_COORDINATE_SOURCE\r
-#define GL_FOG_COORD GL_FOG_COORDINATE\r
-#define GL_FOG_COORD_ARRAY GL_FOG_COORDINATE_ARRAY\r
-#define GL_SRC0_RGB GL_SOURCE0_RGB\r
-#define GL_FOG_COORD_ARRAY_POINTER GL_FOG_COORDINATE_ARRAY_POINTER\r
-#define GL_FOG_COORD_ARRAY_TYPE GL_FOG_COORDINATE_ARRAY_TYPE\r
-#define GL_SRC1_ALPHA GL_SOURCE1_ALPHA\r
-#define GL_CURRENT_FOG_COORD GL_CURRENT_FOG_COORDINATE\r
-#define GL_FOG_COORD_ARRAY_STRIDE GL_FOG_COORDINATE_ARRAY_STRIDE\r
-#define GL_SRC0_ALPHA GL_SOURCE0_ALPHA\r
-#define GL_SRC1_RGB GL_SOURCE1_RGB\r
-#define GL_FOG_COORD_ARRAY_BUFFER_BINDING GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING\r
-#define GL_SRC2_ALPHA GL_SOURCE2_ALPHA\r
-#define GL_SRC2_RGB GL_SOURCE2_RGB\r
-#define GL_BUFFER_SIZE 0x8764\r
-#define GL_BUFFER_USAGE 0x8765\r
-#define GL_QUERY_COUNTER_BITS 0x8864\r
-#define GL_CURRENT_QUERY 0x8865\r
-#define GL_QUERY_RESULT 0x8866\r
-#define GL_QUERY_RESULT_AVAILABLE 0x8867\r
-#define GL_ARRAY_BUFFER 0x8892\r
-#define GL_ELEMENT_ARRAY_BUFFER 0x8893\r
-#define GL_ARRAY_BUFFER_BINDING 0x8894\r
-#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895\r
-#define GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896\r
-#define GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897\r
-#define GL_COLOR_ARRAY_BUFFER_BINDING 0x8898\r
-#define GL_INDEX_ARRAY_BUFFER_BINDING 0x8899\r
-#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A\r
-#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B\r
-#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C\r
-#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D\r
-#define GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E\r
-#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F\r
-#define GL_READ_ONLY 0x88B8\r
-#define GL_WRITE_ONLY 0x88B9\r
-#define GL_READ_WRITE 0x88BA\r
-#define GL_BUFFER_ACCESS 0x88BB\r
-#define GL_BUFFER_MAPPED 0x88BC\r
-#define GL_BUFFER_MAP_POINTER 0x88BD\r
-#define GL_STREAM_DRAW 0x88E0\r
-#define GL_STREAM_READ 0x88E1\r
-#define GL_STREAM_COPY 0x88E2\r
-#define GL_STATIC_DRAW 0x88E4\r
-#define GL_STATIC_READ 0x88E5\r
-#define GL_STATIC_COPY 0x88E6\r
-#define GL_DYNAMIC_DRAW 0x88E8\r
-#define GL_DYNAMIC_READ 0x88E9\r
-#define GL_DYNAMIC_COPY 0x88EA\r
-#define GL_SAMPLES_PASSED 0x8914\r
-\r
-typedef ptrdiff_t GLintptr;\r
-typedef ptrdiff_t GLsizeiptr;\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINQUERYPROC) (GLenum target, GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERPROC) (GLenum target, GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLBUFFERDATAPROC) (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);\r
-typedef void (GLAPIENTRY * PFNGLBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data);\r
-typedef void (GLAPIENTRY * PFNGLDELETEBUFFERSPROC) (GLsizei n, const GLuint* buffers);\r
-typedef void (GLAPIENTRY * PFNGLDELETEQUERIESPROC) (GLsizei n, const GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLENDQUERYPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLGENBUFFERSPROC) (GLsizei n, GLuint* buffers);\r
-typedef void (GLAPIENTRY * PFNGLGENQUERIESPROC) (GLsizei n, GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVPROC) (GLenum target, GLenum pname, GLvoid** params);\r
-typedef void (GLAPIENTRY * PFNGLGETBUFFERSUBDATAPROC) (GLenum target, GLintptr offset, GLsizeiptr size, GLvoid* data);\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVPROC) (GLuint id, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVPROC) (GLuint id, GLenum pname, GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYIVPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERPROC) (GLuint buffer);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISQUERYPROC) (GLuint id);\r
-typedef GLvoid* (GLAPIENTRY * PFNGLMAPBUFFERPROC) (GLenum target, GLenum access);\r
-typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFERPROC) (GLenum target);\r
-\r
-#define glBeginQuery GLEW_GET_FUN(__glewBeginQuery)\r
-#define glBindBuffer GLEW_GET_FUN(__glewBindBuffer)\r
-#define glBufferData GLEW_GET_FUN(__glewBufferData)\r
-#define glBufferSubData GLEW_GET_FUN(__glewBufferSubData)\r
-#define glDeleteBuffers GLEW_GET_FUN(__glewDeleteBuffers)\r
-#define glDeleteQueries GLEW_GET_FUN(__glewDeleteQueries)\r
-#define glEndQuery GLEW_GET_FUN(__glewEndQuery)\r
-#define glGenBuffers GLEW_GET_FUN(__glewGenBuffers)\r
-#define glGenQueries GLEW_GET_FUN(__glewGenQueries)\r
-#define glGetBufferParameteriv GLEW_GET_FUN(__glewGetBufferParameteriv)\r
-#define glGetBufferPointerv GLEW_GET_FUN(__glewGetBufferPointerv)\r
-#define glGetBufferSubData GLEW_GET_FUN(__glewGetBufferSubData)\r
-#define glGetQueryObjectiv GLEW_GET_FUN(__glewGetQueryObjectiv)\r
-#define glGetQueryObjectuiv GLEW_GET_FUN(__glewGetQueryObjectuiv)\r
-#define glGetQueryiv GLEW_GET_FUN(__glewGetQueryiv)\r
-#define glIsBuffer GLEW_GET_FUN(__glewIsBuffer)\r
-#define glIsQuery GLEW_GET_FUN(__glewIsQuery)\r
-#define glMapBuffer GLEW_GET_FUN(__glewMapBuffer)\r
-#define glUnmapBuffer GLEW_GET_FUN(__glewUnmapBuffer)\r
-\r
-#define GLEW_VERSION_1_5 GLEW_GET_VAR(__GLEW_VERSION_1_5)\r
-\r
-#endif /* GL_VERSION_1_5 */\r
-\r
-/* ----------------------------- GL_VERSION_2_0 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_2_0\r
-#define GL_VERSION_2_0 1\r
-\r
-#define GL_BLEND_EQUATION_RGB GL_BLEND_EQUATION\r
-#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622\r
-#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623\r
-#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624\r
-#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625\r
-#define GL_CURRENT_VERTEX_ATTRIB 0x8626\r
-#define GL_VERTEX_PROGRAM_POINT_SIZE 0x8642\r
-#define GL_VERTEX_PROGRAM_TWO_SIDE 0x8643\r
-#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645\r
-#define GL_STENCIL_BACK_FUNC 0x8800\r
-#define GL_STENCIL_BACK_FAIL 0x8801\r
-#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802\r
-#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803\r
-#define GL_MAX_DRAW_BUFFERS 0x8824\r
-#define GL_DRAW_BUFFER0 0x8825\r
-#define GL_DRAW_BUFFER1 0x8826\r
-#define GL_DRAW_BUFFER2 0x8827\r
-#define GL_DRAW_BUFFER3 0x8828\r
-#define GL_DRAW_BUFFER4 0x8829\r
-#define GL_DRAW_BUFFER5 0x882A\r
-#define GL_DRAW_BUFFER6 0x882B\r
-#define GL_DRAW_BUFFER7 0x882C\r
-#define GL_DRAW_BUFFER8 0x882D\r
-#define GL_DRAW_BUFFER9 0x882E\r
-#define GL_DRAW_BUFFER10 0x882F\r
-#define GL_DRAW_BUFFER11 0x8830\r
-#define GL_DRAW_BUFFER12 0x8831\r
-#define GL_DRAW_BUFFER13 0x8832\r
-#define GL_DRAW_BUFFER14 0x8833\r
-#define GL_DRAW_BUFFER15 0x8834\r
-#define GL_BLEND_EQUATION_ALPHA 0x883D\r
-#define GL_POINT_SPRITE 0x8861\r
-#define GL_COORD_REPLACE 0x8862\r
-#define GL_MAX_VERTEX_ATTRIBS 0x8869\r
-#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A\r
-#define GL_MAX_TEXTURE_COORDS 0x8871\r
-#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872\r
-#define GL_FRAGMENT_SHADER 0x8B30\r
-#define GL_VERTEX_SHADER 0x8B31\r
-#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49\r
-#define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A\r
-#define GL_MAX_VARYING_FLOATS 0x8B4B\r
-#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C\r
-#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D\r
-#define GL_SHADER_TYPE 0x8B4F\r
-#define GL_FLOAT_VEC2 0x8B50\r
-#define GL_FLOAT_VEC3 0x8B51\r
-#define GL_FLOAT_VEC4 0x8B52\r
-#define GL_INT_VEC2 0x8B53\r
-#define GL_INT_VEC3 0x8B54\r
-#define GL_INT_VEC4 0x8B55\r
-#define GL_BOOL 0x8B56\r
-#define GL_BOOL_VEC2 0x8B57\r
-#define GL_BOOL_VEC3 0x8B58\r
-#define GL_BOOL_VEC4 0x8B59\r
-#define GL_FLOAT_MAT2 0x8B5A\r
-#define GL_FLOAT_MAT3 0x8B5B\r
-#define GL_FLOAT_MAT4 0x8B5C\r
-#define GL_SAMPLER_1D 0x8B5D\r
-#define GL_SAMPLER_2D 0x8B5E\r
-#define GL_SAMPLER_3D 0x8B5F\r
-#define GL_SAMPLER_CUBE 0x8B60\r
-#define GL_SAMPLER_1D_SHADOW 0x8B61\r
-#define GL_SAMPLER_2D_SHADOW 0x8B62\r
-#define GL_DELETE_STATUS 0x8B80\r
-#define GL_COMPILE_STATUS 0x8B81\r
-#define GL_LINK_STATUS 0x8B82\r
-#define GL_VALIDATE_STATUS 0x8B83\r
-#define GL_INFO_LOG_LENGTH 0x8B84\r
-#define GL_ATTACHED_SHADERS 0x8B85\r
-#define GL_ACTIVE_UNIFORMS 0x8B86\r
-#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87\r
-#define GL_SHADER_SOURCE_LENGTH 0x8B88\r
-#define GL_ACTIVE_ATTRIBUTES 0x8B89\r
-#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A\r
-#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B\r
-#define GL_SHADING_LANGUAGE_VERSION 0x8B8C\r
-#define GL_CURRENT_PROGRAM 0x8B8D\r
-#define GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0\r
-#define GL_LOWER_LEFT 0x8CA1\r
-#define GL_UPPER_LEFT 0x8CA2\r
-#define GL_STENCIL_BACK_REF 0x8CA3\r
-#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4\r
-#define GL_STENCIL_BACK_WRITEMASK 0x8CA5\r
-\r
-typedef void (GLAPIENTRY * PFNGLATTACHSHADERPROC) (GLuint program, GLuint shader);\r
-typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONPROC) (GLuint program, GLuint index, const GLchar* name);\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEPROC) (GLenum, GLenum);\r
-typedef void (GLAPIENTRY * PFNGLCOMPILESHADERPROC) (GLuint shader);\r
-typedef GLuint (GLAPIENTRY * PFNGLCREATEPROGRAMPROC) (void);\r
-typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROC) (GLenum type);\r
-typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMPROC) (GLuint program);\r
-typedef void (GLAPIENTRY * PFNGLDELETESHADERPROC) (GLuint shader);\r
-typedef void (GLAPIENTRY * PFNGLDETACHSHADERPROC) (GLuint program, GLuint shader);\r
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYPROC) (GLuint);\r
-typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSPROC) (GLsizei n, const GLenum* bufs);\r
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEATTRIBPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMPROC) (GLuint program, GLuint index, GLsizei maxLength, GLsizei* length, GLint* size, GLenum* type, GLchar* name);\r
-typedef void (GLAPIENTRY * PFNGLGETATTACHEDSHADERSPROC) (GLuint program, GLsizei maxCount, GLsizei* count, GLuint* shaders);\r
-typedef GLint (GLAPIENTRY * PFNGLGETATTRIBLOCATIONPROC) (GLuint program, const GLchar* name);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMINFOLOGPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLchar* infoLog);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVPROC) (GLuint program, GLenum pname, GLint* param);\r
-typedef void (GLAPIENTRY * PFNGLGETSHADERINFOLOGPROC) (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog);\r
-typedef void (GLAPIENTRY * PFNGLGETSHADERSOURCEPROC) (GLuint obj, GLsizei maxLength, GLsizei* length, GLchar* source);\r
-typedef void (GLAPIENTRY * PFNGLGETSHADERIVPROC) (GLuint shader, GLenum pname, GLint* param);\r
-typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMLOCATIONPROC) (GLuint program, const GLchar* name);\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMFVPROC) (GLuint program, GLint location, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMIVPROC) (GLuint program, GLint location, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVPROC) (GLuint, GLenum, GLvoid**);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVPROC) (GLuint, GLenum, GLdouble*);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVPROC) (GLuint, GLenum, GLfloat*);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVPROC) (GLuint, GLenum, GLint*);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMPROC) (GLuint program);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISSHADERPROC) (GLuint shader);\r
-typedef void (GLAPIENTRY * PFNGLLINKPROGRAMPROC) (GLuint program);\r
-typedef void (GLAPIENTRY * PFNGLSHADERSOURCEPROC) (GLuint shader, GLsizei count, const GLchar** strings, const GLint* lengths);\r
-typedef void (GLAPIENTRY * PFNGLSTENCILFUNCSEPARATEPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);\r
-typedef void (GLAPIENTRY * PFNGLSTENCILMASKSEPARATEPROC) (GLenum, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLSTENCILOPSEPARATEPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1FPROC) (GLint location, GLfloat v0);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1FVPROC) (GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1IPROC) (GLint location, GLint v0);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1IVPROC) (GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2FPROC) (GLint location, GLfloat v0, GLfloat v1);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2FVPROC) (GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2IPROC) (GLint location, GLint v0, GLint v1);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2IVPROC) (GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3FVPROC) (GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3IPROC) (GLint location, GLint v0, GLint v1, GLint v2);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3IVPROC) (GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4FPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4FVPROC) (GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4IPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4IVPROC) (GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUSEPROGRAMPROC) (GLuint program);\r
-typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMPROC) (GLuint program);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DPROC) (GLuint index, GLdouble x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FPROC) (GLuint index, GLfloat x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SPROC) (GLuint index, GLshort x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DPROC) (GLuint index, GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FPROC) (GLuint index, GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SPROC) (GLuint index, GLshort x, GLshort y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SPROC) (GLuint index, GLshort x, GLshort y, GLshort z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NBVPROC) (GLuint index, const GLbyte* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NIVPROC) (GLuint index, const GLint* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NSVPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBVPROC) (GLuint index, const GLubyte* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUIVPROC) (GLuint index, const GLuint* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUSVPROC) (GLuint index, const GLushort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4BVPROC) (GLuint index, const GLbyte* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4IVPROC) (GLuint index, const GLint* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVPROC) (GLuint index, const GLubyte* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UIVPROC) (GLuint index, const GLuint* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4USVPROC) (GLuint index, const GLushort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* pointer);\r
-\r
-#define glAttachShader GLEW_GET_FUN(__glewAttachShader)\r
-#define glBindAttribLocation GLEW_GET_FUN(__glewBindAttribLocation)\r
-#define glBlendEquationSeparate GLEW_GET_FUN(__glewBlendEquationSeparate)\r
-#define glCompileShader GLEW_GET_FUN(__glewCompileShader)\r
-#define glCreateProgram GLEW_GET_FUN(__glewCreateProgram)\r
-#define glCreateShader GLEW_GET_FUN(__glewCreateShader)\r
-#define glDeleteProgram GLEW_GET_FUN(__glewDeleteProgram)\r
-#define glDeleteShader GLEW_GET_FUN(__glewDeleteShader)\r
-#define glDetachShader GLEW_GET_FUN(__glewDetachShader)\r
-#define glDisableVertexAttribArray GLEW_GET_FUN(__glewDisableVertexAttribArray)\r
-#define glDrawBuffers GLEW_GET_FUN(__glewDrawBuffers)\r
-#define glEnableVertexAttribArray GLEW_GET_FUN(__glewEnableVertexAttribArray)\r
-#define glGetActiveAttrib GLEW_GET_FUN(__glewGetActiveAttrib)\r
-#define glGetActiveUniform GLEW_GET_FUN(__glewGetActiveUniform)\r
-#define glGetAttachedShaders GLEW_GET_FUN(__glewGetAttachedShaders)\r
-#define glGetAttribLocation GLEW_GET_FUN(__glewGetAttribLocation)\r
-#define glGetProgramInfoLog GLEW_GET_FUN(__glewGetProgramInfoLog)\r
-#define glGetProgramiv GLEW_GET_FUN(__glewGetProgramiv)\r
-#define glGetShaderInfoLog GLEW_GET_FUN(__glewGetShaderInfoLog)\r
-#define glGetShaderSource GLEW_GET_FUN(__glewGetShaderSource)\r
-#define glGetShaderiv GLEW_GET_FUN(__glewGetShaderiv)\r
-#define glGetUniformLocation GLEW_GET_FUN(__glewGetUniformLocation)\r
-#define glGetUniformfv GLEW_GET_FUN(__glewGetUniformfv)\r
-#define glGetUniformiv GLEW_GET_FUN(__glewGetUniformiv)\r
-#define glGetVertexAttribPointerv GLEW_GET_FUN(__glewGetVertexAttribPointerv)\r
-#define glGetVertexAttribdv GLEW_GET_FUN(__glewGetVertexAttribdv)\r
-#define glGetVertexAttribfv GLEW_GET_FUN(__glewGetVertexAttribfv)\r
-#define glGetVertexAttribiv GLEW_GET_FUN(__glewGetVertexAttribiv)\r
-#define glIsProgram GLEW_GET_FUN(__glewIsProgram)\r
-#define glIsShader GLEW_GET_FUN(__glewIsShader)\r
-#define glLinkProgram GLEW_GET_FUN(__glewLinkProgram)\r
-#define glShaderSource GLEW_GET_FUN(__glewShaderSource)\r
-#define glStencilFuncSeparate GLEW_GET_FUN(__glewStencilFuncSeparate)\r
-#define glStencilMaskSeparate GLEW_GET_FUN(__glewStencilMaskSeparate)\r
-#define glStencilOpSeparate GLEW_GET_FUN(__glewStencilOpSeparate)\r
-#define glUniform1f GLEW_GET_FUN(__glewUniform1f)\r
-#define glUniform1fv GLEW_GET_FUN(__glewUniform1fv)\r
-#define glUniform1i GLEW_GET_FUN(__glewUniform1i)\r
-#define glUniform1iv GLEW_GET_FUN(__glewUniform1iv)\r
-#define glUniform2f GLEW_GET_FUN(__glewUniform2f)\r
-#define glUniform2fv GLEW_GET_FUN(__glewUniform2fv)\r
-#define glUniform2i GLEW_GET_FUN(__glewUniform2i)\r
-#define glUniform2iv GLEW_GET_FUN(__glewUniform2iv)\r
-#define glUniform3f GLEW_GET_FUN(__glewUniform3f)\r
-#define glUniform3fv GLEW_GET_FUN(__glewUniform3fv)\r
-#define glUniform3i GLEW_GET_FUN(__glewUniform3i)\r
-#define glUniform3iv GLEW_GET_FUN(__glewUniform3iv)\r
-#define glUniform4f GLEW_GET_FUN(__glewUniform4f)\r
-#define glUniform4fv GLEW_GET_FUN(__glewUniform4fv)\r
-#define glUniform4i GLEW_GET_FUN(__glewUniform4i)\r
-#define glUniform4iv GLEW_GET_FUN(__glewUniform4iv)\r
-#define glUniformMatrix2fv GLEW_GET_FUN(__glewUniformMatrix2fv)\r
-#define glUniformMatrix3fv GLEW_GET_FUN(__glewUniformMatrix3fv)\r
-#define glUniformMatrix4fv GLEW_GET_FUN(__glewUniformMatrix4fv)\r
-#define glUseProgram GLEW_GET_FUN(__glewUseProgram)\r
-#define glValidateProgram GLEW_GET_FUN(__glewValidateProgram)\r
-#define glVertexAttrib1d GLEW_GET_FUN(__glewVertexAttrib1d)\r
-#define glVertexAttrib1dv GLEW_GET_FUN(__glewVertexAttrib1dv)\r
-#define glVertexAttrib1f GLEW_GET_FUN(__glewVertexAttrib1f)\r
-#define glVertexAttrib1fv GLEW_GET_FUN(__glewVertexAttrib1fv)\r
-#define glVertexAttrib1s GLEW_GET_FUN(__glewVertexAttrib1s)\r
-#define glVertexAttrib1sv GLEW_GET_FUN(__glewVertexAttrib1sv)\r
-#define glVertexAttrib2d GLEW_GET_FUN(__glewVertexAttrib2d)\r
-#define glVertexAttrib2dv GLEW_GET_FUN(__glewVertexAttrib2dv)\r
-#define glVertexAttrib2f GLEW_GET_FUN(__glewVertexAttrib2f)\r
-#define glVertexAttrib2fv GLEW_GET_FUN(__glewVertexAttrib2fv)\r
-#define glVertexAttrib2s GLEW_GET_FUN(__glewVertexAttrib2s)\r
-#define glVertexAttrib2sv GLEW_GET_FUN(__glewVertexAttrib2sv)\r
-#define glVertexAttrib3d GLEW_GET_FUN(__glewVertexAttrib3d)\r
-#define glVertexAttrib3dv GLEW_GET_FUN(__glewVertexAttrib3dv)\r
-#define glVertexAttrib3f GLEW_GET_FUN(__glewVertexAttrib3f)\r
-#define glVertexAttrib3fv GLEW_GET_FUN(__glewVertexAttrib3fv)\r
-#define glVertexAttrib3s GLEW_GET_FUN(__glewVertexAttrib3s)\r
-#define glVertexAttrib3sv GLEW_GET_FUN(__glewVertexAttrib3sv)\r
-#define glVertexAttrib4Nbv GLEW_GET_FUN(__glewVertexAttrib4Nbv)\r
-#define glVertexAttrib4Niv GLEW_GET_FUN(__glewVertexAttrib4Niv)\r
-#define glVertexAttrib4Nsv GLEW_GET_FUN(__glewVertexAttrib4Nsv)\r
-#define glVertexAttrib4Nub GLEW_GET_FUN(__glewVertexAttrib4Nub)\r
-#define glVertexAttrib4Nubv GLEW_GET_FUN(__glewVertexAttrib4Nubv)\r
-#define glVertexAttrib4Nuiv GLEW_GET_FUN(__glewVertexAttrib4Nuiv)\r
-#define glVertexAttrib4Nusv GLEW_GET_FUN(__glewVertexAttrib4Nusv)\r
-#define glVertexAttrib4bv GLEW_GET_FUN(__glewVertexAttrib4bv)\r
-#define glVertexAttrib4d GLEW_GET_FUN(__glewVertexAttrib4d)\r
-#define glVertexAttrib4dv GLEW_GET_FUN(__glewVertexAttrib4dv)\r
-#define glVertexAttrib4f GLEW_GET_FUN(__glewVertexAttrib4f)\r
-#define glVertexAttrib4fv GLEW_GET_FUN(__glewVertexAttrib4fv)\r
-#define glVertexAttrib4iv GLEW_GET_FUN(__glewVertexAttrib4iv)\r
-#define glVertexAttrib4s GLEW_GET_FUN(__glewVertexAttrib4s)\r
-#define glVertexAttrib4sv GLEW_GET_FUN(__glewVertexAttrib4sv)\r
-#define glVertexAttrib4ubv GLEW_GET_FUN(__glewVertexAttrib4ubv)\r
-#define glVertexAttrib4uiv GLEW_GET_FUN(__glewVertexAttrib4uiv)\r
-#define glVertexAttrib4usv GLEW_GET_FUN(__glewVertexAttrib4usv)\r
-#define glVertexAttribPointer GLEW_GET_FUN(__glewVertexAttribPointer)\r
-\r
-#define GLEW_VERSION_2_0 GLEW_GET_VAR(__GLEW_VERSION_2_0)\r
-\r
-#endif /* GL_VERSION_2_0 */\r
-\r
-/* ----------------------------- GL_VERSION_2_1 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_2_1\r
-#define GL_VERSION_2_1 1\r
-\r
-#define GL_CURRENT_RASTER_SECONDARY_COLOR 0x845F\r
-#define GL_PIXEL_PACK_BUFFER 0x88EB\r
-#define GL_PIXEL_UNPACK_BUFFER 0x88EC\r
-#define GL_PIXEL_PACK_BUFFER_BINDING 0x88ED\r
-#define GL_PIXEL_UNPACK_BUFFER_BINDING 0x88EF\r
-#define GL_FLOAT_MAT2x3 0x8B65\r
-#define GL_FLOAT_MAT2x4 0x8B66\r
-#define GL_FLOAT_MAT3x2 0x8B67\r
-#define GL_FLOAT_MAT3x4 0x8B68\r
-#define GL_FLOAT_MAT4x2 0x8B69\r
-#define GL_FLOAT_MAT4x3 0x8B6A\r
-#define GL_SRGB 0x8C40\r
-#define GL_SRGB8 0x8C41\r
-#define GL_SRGB_ALPHA 0x8C42\r
-#define GL_SRGB8_ALPHA8 0x8C43\r
-#define GL_SLUMINANCE_ALPHA 0x8C44\r
-#define GL_SLUMINANCE8_ALPHA8 0x8C45\r
-#define GL_SLUMINANCE 0x8C46\r
-#define GL_SLUMINANCE8 0x8C47\r
-#define GL_COMPRESSED_SRGB 0x8C48\r
-#define GL_COMPRESSED_SRGB_ALPHA 0x8C49\r
-#define GL_COMPRESSED_SLUMINANCE 0x8C4A\r
-#define GL_COMPRESSED_SLUMINANCE_ALPHA 0x8C4B\r
-\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X2FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X3FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);\r
-\r
-#define glUniformMatrix2x3fv GLEW_GET_FUN(__glewUniformMatrix2x3fv)\r
-#define glUniformMatrix2x4fv GLEW_GET_FUN(__glewUniformMatrix2x4fv)\r
-#define glUniformMatrix3x2fv GLEW_GET_FUN(__glewUniformMatrix3x2fv)\r
-#define glUniformMatrix3x4fv GLEW_GET_FUN(__glewUniformMatrix3x4fv)\r
-#define glUniformMatrix4x2fv GLEW_GET_FUN(__glewUniformMatrix4x2fv)\r
-#define glUniformMatrix4x3fv GLEW_GET_FUN(__glewUniformMatrix4x3fv)\r
-\r
-#define GLEW_VERSION_2_1 GLEW_GET_VAR(__GLEW_VERSION_2_1)\r
-\r
-#endif /* GL_VERSION_2_1 */\r
-\r
-/* ----------------------------- GL_VERSION_3_0 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_3_0\r
-#define GL_VERSION_3_0 1\r
-\r
-#define GL_MAX_CLIP_DISTANCES GL_MAX_CLIP_PLANES\r
-#define GL_CLIP_DISTANCE5 GL_CLIP_PLANE5\r
-#define GL_CLIP_DISTANCE1 GL_CLIP_PLANE1\r
-#define GL_CLIP_DISTANCE3 GL_CLIP_PLANE3\r
-#define GL_COMPARE_REF_TO_TEXTURE GL_COMPARE_R_TO_TEXTURE_ARB\r
-#define GL_CLIP_DISTANCE0 GL_CLIP_PLANE0\r
-#define GL_CLIP_DISTANCE4 GL_CLIP_PLANE4\r
-#define GL_CLIP_DISTANCE2 GL_CLIP_PLANE2\r
-#define GL_MAX_VARYING_COMPONENTS GL_MAX_VARYING_FLOATS\r
-#define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x0001\r
-#define GL_MAJOR_VERSION 0x821B\r
-#define GL_MINOR_VERSION 0x821C\r
-#define GL_NUM_EXTENSIONS 0x821D\r
-#define GL_CONTEXT_FLAGS 0x821E\r
-#define GL_DEPTH_BUFFER 0x8223\r
-#define GL_STENCIL_BUFFER 0x8224\r
-#define GL_COMPRESSED_RED 0x8225\r
-#define GL_COMPRESSED_RG 0x8226\r
-#define GL_RGBA32F 0x8814\r
-#define GL_RGB32F 0x8815\r
-#define GL_RGBA16F 0x881A\r
-#define GL_RGB16F 0x881B\r
-#define GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD\r
-#define GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF\r
-#define GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904\r
-#define GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905\r
-#define GL_CLAMP_VERTEX_COLOR 0x891A\r
-#define GL_CLAMP_FRAGMENT_COLOR 0x891B\r
-#define GL_CLAMP_READ_COLOR 0x891C\r
-#define GL_FIXED_ONLY 0x891D\r
-#define GL_TEXTURE_RED_TYPE 0x8C10\r
-#define GL_TEXTURE_GREEN_TYPE 0x8C11\r
-#define GL_TEXTURE_BLUE_TYPE 0x8C12\r
-#define GL_TEXTURE_ALPHA_TYPE 0x8C13\r
-#define GL_TEXTURE_LUMINANCE_TYPE 0x8C14\r
-#define GL_TEXTURE_INTENSITY_TYPE 0x8C15\r
-#define GL_TEXTURE_DEPTH_TYPE 0x8C16\r
-#define GL_UNSIGNED_NORMALIZED 0x8C17\r
-#define GL_TEXTURE_1D_ARRAY 0x8C18\r
-#define GL_PROXY_TEXTURE_1D_ARRAY 0x8C19\r
-#define GL_TEXTURE_2D_ARRAY 0x8C1A\r
-#define GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B\r
-#define GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C\r
-#define GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D\r
-#define GL_R11F_G11F_B10F 0x8C3A\r
-#define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B\r
-#define GL_RGB9_E5 0x8C3D\r
-#define GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E\r
-#define GL_TEXTURE_SHARED_SIZE 0x8C3F\r
-#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F\r
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80\r
-#define GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85\r
-#define GL_PRIMITIVES_GENERATED 0x8C87\r
-#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88\r
-#define GL_RASTERIZER_DISCARD 0x8C89\r
-#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A\r
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B\r
-#define GL_INTERLEAVED_ATTRIBS 0x8C8C\r
-#define GL_SEPARATE_ATTRIBS 0x8C8D\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F\r
-#define GL_RGBA32UI 0x8D70\r
-#define GL_RGB32UI 0x8D71\r
-#define GL_RGBA16UI 0x8D76\r
-#define GL_RGB16UI 0x8D77\r
-#define GL_RGBA8UI 0x8D7C\r
-#define GL_RGB8UI 0x8D7D\r
-#define GL_RGBA32I 0x8D82\r
-#define GL_RGB32I 0x8D83\r
-#define GL_RGBA16I 0x8D88\r
-#define GL_RGB16I 0x8D89\r
-#define GL_RGBA8I 0x8D8E\r
-#define GL_RGB8I 0x8D8F\r
-#define GL_RED_INTEGER 0x8D94\r
-#define GL_GREEN_INTEGER 0x8D95\r
-#define GL_BLUE_INTEGER 0x8D96\r
-#define GL_ALPHA_INTEGER 0x8D97\r
-#define GL_RGB_INTEGER 0x8D98\r
-#define GL_RGBA_INTEGER 0x8D99\r
-#define GL_BGR_INTEGER 0x8D9A\r
-#define GL_BGRA_INTEGER 0x8D9B\r
-#define GL_SAMPLER_1D_ARRAY 0x8DC0\r
-#define GL_SAMPLER_2D_ARRAY 0x8DC1\r
-#define GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3\r
-#define GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4\r
-#define GL_SAMPLER_CUBE_SHADOW 0x8DC5\r
-#define GL_UNSIGNED_INT_VEC2 0x8DC6\r
-#define GL_UNSIGNED_INT_VEC3 0x8DC7\r
-#define GL_UNSIGNED_INT_VEC4 0x8DC8\r
-#define GL_INT_SAMPLER_1D 0x8DC9\r
-#define GL_INT_SAMPLER_2D 0x8DCA\r
-#define GL_INT_SAMPLER_3D 0x8DCB\r
-#define GL_INT_SAMPLER_CUBE 0x8DCC\r
-#define GL_INT_SAMPLER_1D_ARRAY 0x8DCE\r
-#define GL_INT_SAMPLER_2D_ARRAY 0x8DCF\r
-#define GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1\r
-#define GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2\r
-#define GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3\r
-#define GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4\r
-#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6\r
-#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7\r
-#define GL_QUERY_WAIT 0x8E13\r
-#define GL_QUERY_NO_WAIT 0x8E14\r
-#define GL_QUERY_BY_REGION_WAIT 0x8E15\r
-#define GL_QUERY_BY_REGION_NO_WAIT 0x8E16\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERPROC) (GLuint, GLenum);\r
-typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKPROC) (GLenum);\r
-typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONPROC) (GLuint, GLuint, const GLchar*);\r
-typedef void (GLAPIENTRY * PFNGLCLAMPCOLORPROC) (GLenum, GLenum);\r
-typedef void (GLAPIENTRY * PFNGLCLEARBUFFERFIPROC) (GLenum, GLint, GLfloat, GLint);\r
-typedef void (GLAPIENTRY * PFNGLCLEARBUFFERFVPROC) (GLenum, GLint, const GLfloat*);\r
-typedef void (GLAPIENTRY * PFNGLCLEARBUFFERIVPROC) (GLenum, GLint, const GLint*);\r
-typedef void (GLAPIENTRY * PFNGLCLEARBUFFERUIVPROC) (GLenum, GLint, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLCOLORMASKIPROC) (GLuint, GLboolean, GLboolean, GLboolean, GLboolean);\r
-typedef void (GLAPIENTRY * PFNGLDISABLEIPROC) (GLenum, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLENABLEIPROC) (GLenum, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLGETBOOLEANI_VPROC) (GLenum, GLuint, GLboolean*);\r
-typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATALOCATIONPROC) (GLuint, const GLchar*);\r
-typedef const GLubyte* (GLAPIENTRY * PFNGLGETSTRINGIPROC) (GLenum, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVPROC) (GLenum, GLenum, GLint*);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVPROC) (GLenum, GLenum, GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGPROC) (GLuint, GLuint, GLsizei, GLsizei *, GLsizei *, GLenum *, GLchar *);\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMUIVPROC) (GLuint, GLint, GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIIVPROC) (GLuint, GLenum, GLint*);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIUIVPROC) (GLuint, GLenum, GLuint*);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDIPROC) (GLenum, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVPROC) (GLenum, GLenum, const GLint*);\r
-typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVPROC) (GLenum, GLenum, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSPROC) (GLuint, GLsizei, const GLchar **, GLenum);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UIPROC) (GLint, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UIVPROC) (GLint, GLsizei, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UIPROC) (GLint, GLuint, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UIVPROC) (GLint, GLsizei, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UIPROC) (GLint, GLuint, GLuint, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UIVPROC) (GLint, GLsizei, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UIPROC) (GLint, GLuint, GLuint, GLuint, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UIVPROC) (GLint, GLsizei, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IPROC) (GLuint, GLint);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IVPROC) (GLuint, const GLint*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIPROC) (GLuint, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIVPROC) (GLuint, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IPROC) (GLuint, GLint, GLint);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IVPROC) (GLuint, const GLint*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIPROC) (GLuint, GLuint, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIVPROC) (GLuint, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IPROC) (GLuint, GLint, GLint, GLint);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IVPROC) (GLuint, const GLint*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIPROC) (GLuint, GLuint, GLuint, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIVPROC) (GLuint, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4BVPROC) (GLuint, const GLbyte*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IPROC) (GLuint, GLint, GLint, GLint, GLint);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IVPROC) (GLuint, const GLint*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4SVPROC) (GLuint, const GLshort*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UBVPROC) (GLuint, const GLubyte*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIPROC) (GLuint, GLuint, GLuint, GLuint, GLuint);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIVPROC) (GLuint, const GLuint*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4USVPROC) (GLuint, const GLushort*);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIPOINTERPROC) (GLuint, GLint, GLenum, GLsizei, const GLvoid*);\r
-\r
-#define glBeginConditionalRender GLEW_GET_FUN(__glewBeginConditionalRender)\r
-#define glBeginTransformFeedback GLEW_GET_FUN(__glewBeginTransformFeedback)\r
-#define glBindFragDataLocation GLEW_GET_FUN(__glewBindFragDataLocation)\r
-#define glClampColor GLEW_GET_FUN(__glewClampColor)\r
-#define glClearBufferfi GLEW_GET_FUN(__glewClearBufferfi)\r
-#define glClearBufferfv GLEW_GET_FUN(__glewClearBufferfv)\r
-#define glClearBufferiv GLEW_GET_FUN(__glewClearBufferiv)\r
-#define glClearBufferuiv GLEW_GET_FUN(__glewClearBufferuiv)\r
-#define glColorMaski GLEW_GET_FUN(__glewColorMaski)\r
-#define glDisablei GLEW_GET_FUN(__glewDisablei)\r
-#define glEnablei GLEW_GET_FUN(__glewEnablei)\r
-#define glEndConditionalRender GLEW_GET_FUN(__glewEndConditionalRender)\r
-#define glEndTransformFeedback GLEW_GET_FUN(__glewEndTransformFeedback)\r
-#define glGetBooleani_v GLEW_GET_FUN(__glewGetBooleani_v)\r
-#define glGetFragDataLocation GLEW_GET_FUN(__glewGetFragDataLocation)\r
-#define glGetStringi GLEW_GET_FUN(__glewGetStringi)\r
-#define glGetTexParameterIiv GLEW_GET_FUN(__glewGetTexParameterIiv)\r
-#define glGetTexParameterIuiv GLEW_GET_FUN(__glewGetTexParameterIuiv)\r
-#define glGetTransformFeedbackVarying GLEW_GET_FUN(__glewGetTransformFeedbackVarying)\r
-#define glGetUniformuiv GLEW_GET_FUN(__glewGetUniformuiv)\r
-#define glGetVertexAttribIiv GLEW_GET_FUN(__glewGetVertexAttribIiv)\r
-#define glGetVertexAttribIuiv GLEW_GET_FUN(__glewGetVertexAttribIuiv)\r
-#define glIsEnabledi GLEW_GET_FUN(__glewIsEnabledi)\r
-#define glTexParameterIiv GLEW_GET_FUN(__glewTexParameterIiv)\r
-#define glTexParameterIuiv GLEW_GET_FUN(__glewTexParameterIuiv)\r
-#define glTransformFeedbackVaryings GLEW_GET_FUN(__glewTransformFeedbackVaryings)\r
-#define glUniform1ui GLEW_GET_FUN(__glewUniform1ui)\r
-#define glUniform1uiv GLEW_GET_FUN(__glewUniform1uiv)\r
-#define glUniform2ui GLEW_GET_FUN(__glewUniform2ui)\r
-#define glUniform2uiv GLEW_GET_FUN(__glewUniform2uiv)\r
-#define glUniform3ui GLEW_GET_FUN(__glewUniform3ui)\r
-#define glUniform3uiv GLEW_GET_FUN(__glewUniform3uiv)\r
-#define glUniform4ui GLEW_GET_FUN(__glewUniform4ui)\r
-#define glUniform4uiv GLEW_GET_FUN(__glewUniform4uiv)\r
-#define glVertexAttribI1i GLEW_GET_FUN(__glewVertexAttribI1i)\r
-#define glVertexAttribI1iv GLEW_GET_FUN(__glewVertexAttribI1iv)\r
-#define glVertexAttribI1ui GLEW_GET_FUN(__glewVertexAttribI1ui)\r
-#define glVertexAttribI1uiv GLEW_GET_FUN(__glewVertexAttribI1uiv)\r
-#define glVertexAttribI2i GLEW_GET_FUN(__glewVertexAttribI2i)\r
-#define glVertexAttribI2iv GLEW_GET_FUN(__glewVertexAttribI2iv)\r
-#define glVertexAttribI2ui GLEW_GET_FUN(__glewVertexAttribI2ui)\r
-#define glVertexAttribI2uiv GLEW_GET_FUN(__glewVertexAttribI2uiv)\r
-#define glVertexAttribI3i GLEW_GET_FUN(__glewVertexAttribI3i)\r
-#define glVertexAttribI3iv GLEW_GET_FUN(__glewVertexAttribI3iv)\r
-#define glVertexAttribI3ui GLEW_GET_FUN(__glewVertexAttribI3ui)\r
-#define glVertexAttribI3uiv GLEW_GET_FUN(__glewVertexAttribI3uiv)\r
-#define glVertexAttribI4bv GLEW_GET_FUN(__glewVertexAttribI4bv)\r
-#define glVertexAttribI4i GLEW_GET_FUN(__glewVertexAttribI4i)\r
-#define glVertexAttribI4iv GLEW_GET_FUN(__glewVertexAttribI4iv)\r
-#define glVertexAttribI4sv GLEW_GET_FUN(__glewVertexAttribI4sv)\r
-#define glVertexAttribI4ubv GLEW_GET_FUN(__glewVertexAttribI4ubv)\r
-#define glVertexAttribI4ui GLEW_GET_FUN(__glewVertexAttribI4ui)\r
-#define glVertexAttribI4uiv GLEW_GET_FUN(__glewVertexAttribI4uiv)\r
-#define glVertexAttribI4usv GLEW_GET_FUN(__glewVertexAttribI4usv)\r
-#define glVertexAttribIPointer GLEW_GET_FUN(__glewVertexAttribIPointer)\r
-\r
-#define GLEW_VERSION_3_0 GLEW_GET_VAR(__GLEW_VERSION_3_0)\r
-\r
-#endif /* GL_VERSION_3_0 */\r
-\r
-/* ----------------------------- GL_VERSION_3_1 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_3_1\r
-#define GL_VERSION_3_1 1\r
-\r
-#define GL_TEXTURE_RECTANGLE 0x84F5\r
-#define GL_TEXTURE_BINDING_RECTANGLE 0x84F6\r
-#define GL_PROXY_TEXTURE_RECTANGLE 0x84F7\r
-#define GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8\r
-#define GL_SAMPLER_2D_RECT 0x8B63\r
-#define GL_SAMPLER_2D_RECT_SHADOW 0x8B64\r
-#define GL_TEXTURE_BUFFER 0x8C2A\r
-#define GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B\r
-#define GL_TEXTURE_BINDING_BUFFER 0x8C2C\r
-#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D\r
-#define GL_TEXTURE_BUFFER_FORMAT 0x8C2E\r
-#define GL_SAMPLER_BUFFER 0x8DC2\r
-#define GL_INT_SAMPLER_2D_RECT 0x8DCD\r
-#define GL_INT_SAMPLER_BUFFER 0x8DD0\r
-#define GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5\r
-#define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8\r
-#define GL_RED_SNORM 0x8F90\r
-#define GL_RG_SNORM 0x8F91\r
-#define GL_RGB_SNORM 0x8F92\r
-#define GL_RGBA_SNORM 0x8F93\r
-#define GL_R8_SNORM 0x8F94\r
-#define GL_RG8_SNORM 0x8F95\r
-#define GL_RGB8_SNORM 0x8F96\r
-#define GL_RGBA8_SNORM 0x8F97\r
-#define GL_R16_SNORM 0x8F98\r
-#define GL_RG16_SNORM 0x8F99\r
-#define GL_RGB16_SNORM 0x8F9A\r
-#define GL_RGBA16_SNORM 0x8F9B\r
-#define GL_SIGNED_NORMALIZED 0x8F9C\r
-#define GL_PRIMITIVE_RESTART 0x8F9D\r
-#define GL_PRIMITIVE_RESTART_INDEX 0x8F9E\r
-#define GL_BUFFER_ACCESS_FLAGS 0x911F\r
-#define GL_BUFFER_MAP_LENGTH 0x9120\r
-#define GL_BUFFER_MAP_OFFSET 0x9121\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDPROC) (GLenum, GLint, GLsizei, GLsizei);\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDPROC) (GLenum, GLsizei, GLenum, const GLvoid*, GLsizei);\r
-typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTINDEXPROC) (GLuint);\r
-typedef void (GLAPIENTRY * PFNGLTEXBUFFERPROC) (GLenum, GLenum, GLuint);\r
-\r
-#define glDrawArraysInstanced GLEW_GET_FUN(__glewDrawArraysInstanced)\r
-#define glDrawElementsInstanced GLEW_GET_FUN(__glewDrawElementsInstanced)\r
-#define glPrimitiveRestartIndex GLEW_GET_FUN(__glewPrimitiveRestartIndex)\r
-#define glTexBuffer GLEW_GET_FUN(__glewTexBuffer)\r
-\r
-#define GLEW_VERSION_3_1 GLEW_GET_VAR(__GLEW_VERSION_3_1)\r
-\r
-#endif /* GL_VERSION_3_1 */\r
-\r
-/* ----------------------------- GL_VERSION_3_2 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_3_2\r
-#define GL_VERSION_3_2 1\r
-\r
-#define GL_CONTEXT_CORE_PROFILE_BIT 0x00000001\r
-#define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002\r
-#define GL_LINES_ADJACENCY 0x000A\r
-#define GL_LINE_STRIP_ADJACENCY 0x000B\r
-#define GL_TRIANGLES_ADJACENCY 0x000C\r
-#define GL_TRIANGLE_STRIP_ADJACENCY 0x000D\r
-#define GL_PROGRAM_POINT_SIZE 0x8642\r
-#define GL_GEOMETRY_VERTICES_OUT 0x8916\r
-#define GL_GEOMETRY_INPUT_TYPE 0x8917\r
-#define GL_GEOMETRY_OUTPUT_TYPE 0x8918\r
-#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29\r
-#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7\r
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8\r
-#define GL_GEOMETRY_SHADER 0x8DD9\r
-#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF\r
-#define GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0\r
-#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1\r
-#define GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122\r
-#define GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123\r
-#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124\r
-#define GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125\r
-#define GL_CONTEXT_PROFILE_MASK 0x9126\r
-\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREPROC) (GLenum, GLenum, GLuint, GLint);\r
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERI64VPROC) (GLenum, GLenum, GLint64 *);\r
-typedef void (GLAPIENTRY * PFNGLGETINTEGER64I_VPROC) (GLenum, GLuint, GLint64 *);\r
-\r
-#define glFramebufferTexture GLEW_GET_FUN(__glewFramebufferTexture)\r
-#define glGetBufferParameteri64v GLEW_GET_FUN(__glewGetBufferParameteri64v)\r
-#define glGetInteger64i_v GLEW_GET_FUN(__glewGetInteger64i_v)\r
-\r
-#define GLEW_VERSION_3_2 GLEW_GET_VAR(__GLEW_VERSION_3_2)\r
-\r
-#endif /* GL_VERSION_3_2 */\r
-\r
-/* ----------------------------- GL_VERSION_3_3 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_3_3\r
-#define GL_VERSION_3_3 1\r
-\r
-#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE\r
-#define GL_ANY_SAMPLES_PASSED 0x8C2F\r
-#define GL_TEXTURE_SWIZZLE_R 0x8E42\r
-#define GL_TEXTURE_SWIZZLE_G 0x8E43\r
-#define GL_TEXTURE_SWIZZLE_B 0x8E44\r
-#define GL_TEXTURE_SWIZZLE_A 0x8E45\r
-#define GL_TEXTURE_SWIZZLE_RGBA 0x8E46\r
-#define GL_RGB10_A2UI 0x906F\r
-\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORPROC) (GLuint index, GLuint divisor);\r
-\r
-#define glVertexAttribDivisor GLEW_GET_FUN(__glewVertexAttribDivisor)\r
-\r
-#define GLEW_VERSION_3_3 GLEW_GET_VAR(__GLEW_VERSION_3_3)\r
-\r
-#endif /* GL_VERSION_3_3 */\r
-\r
-/* ----------------------------- GL_VERSION_4_0 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_4_0\r
-#define GL_VERSION_4_0 1\r
-\r
-#define GL_GEOMETRY_SHADER_INVOCATIONS 0x887F\r
-#define GL_SAMPLE_SHADING 0x8C36\r
-#define GL_MIN_SAMPLE_SHADING_VALUE 0x8C37\r
-#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS 0x8E5A\r
-#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET 0x8E5B\r
-#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET 0x8E5C\r
-#define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS 0x8E5D\r
-#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5E\r
-#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET 0x8E5F\r
-#define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS 0x8F9F\r
-#define GL_TEXTURE_CUBE_MAP_ARRAY 0x9009\r
-#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY 0x900A\r
-#define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY 0x900B\r
-#define GL_SAMPLER_CUBE_MAP_ARRAY 0x900C\r
-#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW 0x900D\r
-#define GL_INT_SAMPLER_CUBE_MAP_ARRAY 0x900E\r
-#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY 0x900F\r
-\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIPROC) (GLuint buf, GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);\r
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCIPROC) (GLuint buf, GLenum src, GLenum dst);\r
-typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGPROC) (GLclampf value);\r
-\r
-#define glBlendEquationSeparatei GLEW_GET_FUN(__glewBlendEquationSeparatei)\r
-#define glBlendEquationi GLEW_GET_FUN(__glewBlendEquationi)\r
-#define glBlendFuncSeparatei GLEW_GET_FUN(__glewBlendFuncSeparatei)\r
-#define glBlendFunci GLEW_GET_FUN(__glewBlendFunci)\r
-#define glMinSampleShading GLEW_GET_FUN(__glewMinSampleShading)\r
-\r
-#define GLEW_VERSION_4_0 GLEW_GET_VAR(__GLEW_VERSION_4_0)\r
-\r
-#endif /* GL_VERSION_4_0 */\r
-\r
-/* ----------------------------- GL_VERSION_4_1 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_4_1\r
-#define GL_VERSION_4_1 1\r
-\r
-#define GLEW_VERSION_4_1 GLEW_GET_VAR(__GLEW_VERSION_4_1)\r
-\r
-#endif /* GL_VERSION_4_1 */\r
-\r
-/* ----------------------------- GL_VERSION_4_2 ---------------------------- */\r
-\r
-#ifndef GL_VERSION_4_2\r
-#define GL_VERSION_4_2 1\r
-\r
-#define GLEW_VERSION_4_2 GLEW_GET_VAR(__GLEW_VERSION_4_2)\r
-\r
-#endif /* GL_VERSION_4_2 */\r
-\r
-/* -------------------------- GL_3DFX_multisample -------------------------- */\r
-\r
-#ifndef GL_3DFX_multisample\r
-#define GL_3DFX_multisample 1\r
-\r
-#define GL_MULTISAMPLE_3DFX 0x86B2\r
-#define GL_SAMPLE_BUFFERS_3DFX 0x86B3\r
-#define GL_SAMPLES_3DFX 0x86B4\r
-#define GL_MULTISAMPLE_BIT_3DFX 0x20000000\r
-\r
-#define GLEW_3DFX_multisample GLEW_GET_VAR(__GLEW_3DFX_multisample)\r
-\r
-#endif /* GL_3DFX_multisample */\r
-\r
-/* ---------------------------- GL_3DFX_tbuffer ---------------------------- */\r
-\r
-#ifndef GL_3DFX_tbuffer\r
-#define GL_3DFX_tbuffer 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLTBUFFERMASK3DFXPROC) (GLuint mask);\r
-\r
-#define glTbufferMask3DFX GLEW_GET_FUN(__glewTbufferMask3DFX)\r
-\r
-#define GLEW_3DFX_tbuffer GLEW_GET_VAR(__GLEW_3DFX_tbuffer)\r
-\r
-#endif /* GL_3DFX_tbuffer */\r
-\r
-/* -------------------- GL_3DFX_texture_compression_FXT1 ------------------- */\r
-\r
-#ifndef GL_3DFX_texture_compression_FXT1\r
-#define GL_3DFX_texture_compression_FXT1 1\r
-\r
-#define GL_COMPRESSED_RGB_FXT1_3DFX 0x86B0\r
-#define GL_COMPRESSED_RGBA_FXT1_3DFX 0x86B1\r
-\r
-#define GLEW_3DFX_texture_compression_FXT1 GLEW_GET_VAR(__GLEW_3DFX_texture_compression_FXT1)\r
-\r
-#endif /* GL_3DFX_texture_compression_FXT1 */\r
-\r
-/* ----------------------- GL_AMD_blend_minmax_factor ---------------------- */\r
-\r
-#ifndef GL_AMD_blend_minmax_factor\r
-#define GL_AMD_blend_minmax_factor 1\r
-\r
-#define GL_FACTOR_MIN_AMD 0x901C\r
-#define GL_FACTOR_MAX_AMD 0x901D\r
-\r
-#define GLEW_AMD_blend_minmax_factor GLEW_GET_VAR(__GLEW_AMD_blend_minmax_factor)\r
-\r
-#endif /* GL_AMD_blend_minmax_factor */\r
-\r
-/* ----------------------- GL_AMD_conservative_depth ----------------------- */\r
-\r
-#ifndef GL_AMD_conservative_depth\r
-#define GL_AMD_conservative_depth 1\r
-\r
-#define GLEW_AMD_conservative_depth GLEW_GET_VAR(__GLEW_AMD_conservative_depth)\r
-\r
-#endif /* GL_AMD_conservative_depth */\r
-\r
-/* -------------------------- GL_AMD_debug_output -------------------------- */\r
-\r
-#ifndef GL_AMD_debug_output\r
-#define GL_AMD_debug_output 1\r
-\r
-#define GL_MAX_DEBUG_MESSAGE_LENGTH_AMD 0x9143\r
-#define GL_MAX_DEBUG_LOGGED_MESSAGES_AMD 0x9144\r
-#define GL_DEBUG_LOGGED_MESSAGES_AMD 0x9145\r
-#define GL_DEBUG_SEVERITY_HIGH_AMD 0x9146\r
-#define GL_DEBUG_SEVERITY_MEDIUM_AMD 0x9147\r
-#define GL_DEBUG_SEVERITY_LOW_AMD 0x9148\r
-#define GL_DEBUG_CATEGORY_API_ERROR_AMD 0x9149\r
-#define GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD 0x914A\r
-#define GL_DEBUG_CATEGORY_DEPRECATION_AMD 0x914B\r
-#define GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD 0x914C\r
-#define GL_DEBUG_CATEGORY_PERFORMANCE_AMD 0x914D\r
-#define GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD 0x914E\r
-#define GL_DEBUG_CATEGORY_APPLICATION_AMD 0x914F\r
-#define GL_DEBUG_CATEGORY_OTHER_AMD 0x9150\r
-\r
-typedef void (APIENTRY *GLDEBUGPROCAMD)(GLuint id, GLenum category, GLenum severity, GLsizei length, const GLchar* message, GLvoid* userParam);\r
-\r
-typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECALLBACKAMDPROC) (GLDEBUGPROCAMD callback, void* userParam);\r
-typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEENABLEAMDPROC) (GLenum category, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled);\r
-typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEINSERTAMDPROC) (GLenum category, GLenum severity, GLuint id, GLsizei length, const char* buf);\r
-typedef GLuint (GLAPIENTRY * PFNGLGETDEBUGMESSAGELOGAMDPROC) (GLuint count, GLsizei bufsize, GLenum* categories, GLuint* severities, GLuint* ids, GLsizei* lengths, char* message);\r
-\r
-#define glDebugMessageCallbackAMD GLEW_GET_FUN(__glewDebugMessageCallbackAMD)\r
-#define glDebugMessageEnableAMD GLEW_GET_FUN(__glewDebugMessageEnableAMD)\r
-#define glDebugMessageInsertAMD GLEW_GET_FUN(__glewDebugMessageInsertAMD)\r
-#define glGetDebugMessageLogAMD GLEW_GET_FUN(__glewGetDebugMessageLogAMD)\r
-\r
-#define GLEW_AMD_debug_output GLEW_GET_VAR(__GLEW_AMD_debug_output)\r
-\r
-#endif /* GL_AMD_debug_output */\r
-\r
-/* ---------------------- GL_AMD_depth_clamp_separate ---------------------- */\r
-\r
-#ifndef GL_AMD_depth_clamp_separate\r
-#define GL_AMD_depth_clamp_separate 1\r
-\r
-#define GL_DEPTH_CLAMP_NEAR_AMD 0x901E\r
-#define GL_DEPTH_CLAMP_FAR_AMD 0x901F\r
-\r
-#define GLEW_AMD_depth_clamp_separate GLEW_GET_VAR(__GLEW_AMD_depth_clamp_separate)\r
-\r
-#endif /* GL_AMD_depth_clamp_separate */\r
-\r
-/* ----------------------- GL_AMD_draw_buffers_blend ----------------------- */\r
-\r
-#ifndef GL_AMD_draw_buffers_blend\r
-#define GL_AMD_draw_buffers_blend 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONINDEXEDAMDPROC) (GLuint buf, GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);\r
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCINDEXEDAMDPROC) (GLuint buf, GLenum src, GLenum dst);\r
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);\r
-\r
-#define glBlendEquationIndexedAMD GLEW_GET_FUN(__glewBlendEquationIndexedAMD)\r
-#define glBlendEquationSeparateIndexedAMD GLEW_GET_FUN(__glewBlendEquationSeparateIndexedAMD)\r
-#define glBlendFuncIndexedAMD GLEW_GET_FUN(__glewBlendFuncIndexedAMD)\r
-#define glBlendFuncSeparateIndexedAMD GLEW_GET_FUN(__glewBlendFuncSeparateIndexedAMD)\r
-\r
-#define GLEW_AMD_draw_buffers_blend GLEW_GET_VAR(__GLEW_AMD_draw_buffers_blend)\r
-\r
-#endif /* GL_AMD_draw_buffers_blend */\r
-\r
-/* ----------------------- GL_AMD_multi_draw_indirect ---------------------- */\r
-\r
-#ifndef GL_AMD_multi_draw_indirect\r
-#define GL_AMD_multi_draw_indirect 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC) (GLenum mode, const void* indirect, GLsizei primcount, GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC) (GLenum mode, GLenum type, const void* indirect, GLsizei primcount, GLsizei stride);\r
-\r
-#define glMultiDrawArraysIndirectAMD GLEW_GET_FUN(__glewMultiDrawArraysIndirectAMD)\r
-#define glMultiDrawElementsIndirectAMD GLEW_GET_FUN(__glewMultiDrawElementsIndirectAMD)\r
-\r
-#define GLEW_AMD_multi_draw_indirect GLEW_GET_VAR(__GLEW_AMD_multi_draw_indirect)\r
-\r
-#endif /* GL_AMD_multi_draw_indirect */\r
-\r
-/* ------------------------- GL_AMD_name_gen_delete ------------------------ */\r
-\r
-#ifndef GL_AMD_name_gen_delete\r
-#define GL_AMD_name_gen_delete 1\r
-\r
-#define GL_DATA_BUFFER_AMD 0x9151\r
-#define GL_PERFORMANCE_MONITOR_AMD 0x9152\r
-#define GL_QUERY_OBJECT_AMD 0x9153\r
-#define GL_VERTEX_ARRAY_OBJECT_AMD 0x9154\r
-#define GL_SAMPLER_OBJECT_AMD 0x9155\r
-\r
-typedef void (GLAPIENTRY * PFNGLDELETENAMESAMDPROC) (GLenum identifier, GLuint num, const GLuint* names);\r
-typedef void (GLAPIENTRY * PFNGLGENNAMESAMDPROC) (GLenum identifier, GLuint num, GLuint* names);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISNAMEAMDPROC) (GLenum identifier, GLuint name);\r
-\r
-#define glDeleteNamesAMD GLEW_GET_FUN(__glewDeleteNamesAMD)\r
-#define glGenNamesAMD GLEW_GET_FUN(__glewGenNamesAMD)\r
-#define glIsNameAMD GLEW_GET_FUN(__glewIsNameAMD)\r
-\r
-#define GLEW_AMD_name_gen_delete GLEW_GET_VAR(__GLEW_AMD_name_gen_delete)\r
-\r
-#endif /* GL_AMD_name_gen_delete */\r
-\r
-/* ----------------------- GL_AMD_performance_monitor ---------------------- */\r
-\r
-#ifndef GL_AMD_performance_monitor\r
-#define GL_AMD_performance_monitor 1\r
-\r
-#define GL_UNSIGNED_INT 0x1405\r
-#define GL_FLOAT 0x1406\r
-#define GL_COUNTER_TYPE_AMD 0x8BC0\r
-#define GL_COUNTER_RANGE_AMD 0x8BC1\r
-#define GL_UNSIGNED_INT64_AMD 0x8BC2\r
-#define GL_PERCENTAGE_AMD 0x8BC3\r
-#define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4\r
-#define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5\r
-#define GL_PERFMON_RESULT_AMD 0x8BC6\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);\r
-typedef void (GLAPIENTRY * PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint* monitors);\r
-typedef void (GLAPIENTRY * PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);\r
-typedef void (GLAPIENTRY * PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint* monitors);\r
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint *bytesWritten);\r
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, void* data);\r
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, char *counterString);\r
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint* numCounters, GLint *maxActiveCounters, GLsizei countersSize, GLuint *counters);\r
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei* length, char *groupString);\r
-typedef void (GLAPIENTRY * PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint* numGroups, GLsizei groupsSize, GLuint *groups);\r
-typedef void (GLAPIENTRY * PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* counterList);\r
-\r
-#define glBeginPerfMonitorAMD GLEW_GET_FUN(__glewBeginPerfMonitorAMD)\r
-#define glDeletePerfMonitorsAMD GLEW_GET_FUN(__glewDeletePerfMonitorsAMD)\r
-#define glEndPerfMonitorAMD GLEW_GET_FUN(__glewEndPerfMonitorAMD)\r
-#define glGenPerfMonitorsAMD GLEW_GET_FUN(__glewGenPerfMonitorsAMD)\r
-#define glGetPerfMonitorCounterDataAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterDataAMD)\r
-#define glGetPerfMonitorCounterInfoAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterInfoAMD)\r
-#define glGetPerfMonitorCounterStringAMD GLEW_GET_FUN(__glewGetPerfMonitorCounterStringAMD)\r
-#define glGetPerfMonitorCountersAMD GLEW_GET_FUN(__glewGetPerfMonitorCountersAMD)\r
-#define glGetPerfMonitorGroupStringAMD GLEW_GET_FUN(__glewGetPerfMonitorGroupStringAMD)\r
-#define glGetPerfMonitorGroupsAMD GLEW_GET_FUN(__glewGetPerfMonitorGroupsAMD)\r
-#define glSelectPerfMonitorCountersAMD GLEW_GET_FUN(__glewSelectPerfMonitorCountersAMD)\r
-\r
-#define GLEW_AMD_performance_monitor GLEW_GET_VAR(__GLEW_AMD_performance_monitor)\r
-\r
-#endif /* GL_AMD_performance_monitor */\r
-\r
-/* ------------------------ GL_AMD_sample_positions ------------------------ */\r
-\r
-#ifndef GL_AMD_sample_positions\r
-#define GL_AMD_sample_positions 1\r
-\r
-#define GL_SUBSAMPLE_DISTANCE_AMD 0x883F\r
-\r
-typedef void (GLAPIENTRY * PFNGLSETMULTISAMPLEFVAMDPROC) (GLenum pname, GLuint index, const GLfloat* val);\r
-\r
-#define glSetMultisamplefvAMD GLEW_GET_FUN(__glewSetMultisamplefvAMD)\r
-\r
-#define GLEW_AMD_sample_positions GLEW_GET_VAR(__GLEW_AMD_sample_positions)\r
-\r
-#endif /* GL_AMD_sample_positions */\r
-\r
-/* ------------------ GL_AMD_seamless_cubemap_per_texture ------------------ */\r
-\r
-#ifndef GL_AMD_seamless_cubemap_per_texture\r
-#define GL_AMD_seamless_cubemap_per_texture 1\r
-\r
-#define GL_TEXTURE_CUBE_MAP_SEAMLESS_ARB 0x884F\r
-\r
-#define GLEW_AMD_seamless_cubemap_per_texture GLEW_GET_VAR(__GLEW_AMD_seamless_cubemap_per_texture)\r
-\r
-#endif /* GL_AMD_seamless_cubemap_per_texture */\r
-\r
-/* ---------------------- GL_AMD_shader_stencil_export --------------------- */\r
-\r
-#ifndef GL_AMD_shader_stencil_export\r
-#define GL_AMD_shader_stencil_export 1\r
-\r
-#define GLEW_AMD_shader_stencil_export GLEW_GET_VAR(__GLEW_AMD_shader_stencil_export)\r
-\r
-#endif /* GL_AMD_shader_stencil_export */\r
-\r
-/* ------------------------ GL_AMD_texture_texture4 ------------------------ */\r
-\r
-#ifndef GL_AMD_texture_texture4\r
-#define GL_AMD_texture_texture4 1\r
-\r
-#define GLEW_AMD_texture_texture4 GLEW_GET_VAR(__GLEW_AMD_texture_texture4)\r
-\r
-#endif /* GL_AMD_texture_texture4 */\r
-\r
-/* --------------- GL_AMD_transform_feedback3_lines_triangles -------------- */\r
-\r
-#ifndef GL_AMD_transform_feedback3_lines_triangles\r
-#define GL_AMD_transform_feedback3_lines_triangles 1\r
-\r
-#define GLEW_AMD_transform_feedback3_lines_triangles GLEW_GET_VAR(__GLEW_AMD_transform_feedback3_lines_triangles)\r
-\r
-#endif /* GL_AMD_transform_feedback3_lines_triangles */\r
-\r
-/* -------------------- GL_AMD_vertex_shader_tessellator ------------------- */\r
-\r
-#ifndef GL_AMD_vertex_shader_tessellator\r
-#define GL_AMD_vertex_shader_tessellator 1\r
-\r
-#define GL_SAMPLER_BUFFER_AMD 0x9001\r
-#define GL_INT_SAMPLER_BUFFER_AMD 0x9002\r
-#define GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD 0x9003\r
-#define GL_TESSELLATION_MODE_AMD 0x9004\r
-#define GL_TESSELLATION_FACTOR_AMD 0x9005\r
-#define GL_DISCRETE_AMD 0x9006\r
-#define GL_CONTINUOUS_AMD 0x9007\r
-\r
-typedef void (GLAPIENTRY * PFNGLTESSELLATIONFACTORAMDPROC) (GLfloat factor);\r
-typedef void (GLAPIENTRY * PFNGLTESSELLATIONMODEAMDPROC) (GLenum mode);\r
-\r
-#define glTessellationFactorAMD GLEW_GET_FUN(__glewTessellationFactorAMD)\r
-#define glTessellationModeAMD GLEW_GET_FUN(__glewTessellationModeAMD)\r
-\r
-#define GLEW_AMD_vertex_shader_tessellator GLEW_GET_VAR(__GLEW_AMD_vertex_shader_tessellator)\r
-\r
-#endif /* GL_AMD_vertex_shader_tessellator */\r
-\r
-/* ----------------------- GL_APPLE_aux_depth_stencil ---------------------- */\r
-\r
-#ifndef GL_APPLE_aux_depth_stencil\r
-#define GL_APPLE_aux_depth_stencil 1\r
-\r
-#define GL_AUX_DEPTH_STENCIL_APPLE 0x8A14\r
-\r
-#define GLEW_APPLE_aux_depth_stencil GLEW_GET_VAR(__GLEW_APPLE_aux_depth_stencil)\r
-\r
-#endif /* GL_APPLE_aux_depth_stencil */\r
-\r
-/* ------------------------ GL_APPLE_client_storage ------------------------ */\r
-\r
-#ifndef GL_APPLE_client_storage\r
-#define GL_APPLE_client_storage 1\r
-\r
-#define GL_UNPACK_CLIENT_STORAGE_APPLE 0x85B2\r
-\r
-#define GLEW_APPLE_client_storage GLEW_GET_VAR(__GLEW_APPLE_client_storage)\r
-\r
-#endif /* GL_APPLE_client_storage */\r
-\r
-/* ------------------------- GL_APPLE_element_array ------------------------ */\r
-\r
-#ifndef GL_APPLE_element_array\r
-#define GL_APPLE_element_array 1\r
-\r
-#define GL_ELEMENT_ARRAY_APPLE 0x8A0C\r
-#define GL_ELEMENT_ARRAY_TYPE_APPLE 0x8A0D\r
-#define GL_ELEMENT_ARRAY_POINTER_APPLE 0x8A0E\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, GLint first, GLsizei count);\r
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, GLint first, GLsizei count);\r
-typedef void (GLAPIENTRY * PFNGLELEMENTPOINTERAPPLEPROC) (GLenum type, const void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC) (GLenum mode, const GLint* first, const GLsizei *count, GLsizei primcount);\r
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC) (GLenum mode, GLuint start, GLuint end, const GLint* first, const GLsizei *count, GLsizei primcount);\r
-\r
-#define glDrawElementArrayAPPLE GLEW_GET_FUN(__glewDrawElementArrayAPPLE)\r
-#define glDrawRangeElementArrayAPPLE GLEW_GET_FUN(__glewDrawRangeElementArrayAPPLE)\r
-#define glElementPointerAPPLE GLEW_GET_FUN(__glewElementPointerAPPLE)\r
-#define glMultiDrawElementArrayAPPLE GLEW_GET_FUN(__glewMultiDrawElementArrayAPPLE)\r
-#define glMultiDrawRangeElementArrayAPPLE GLEW_GET_FUN(__glewMultiDrawRangeElementArrayAPPLE)\r
-\r
-#define GLEW_APPLE_element_array GLEW_GET_VAR(__GLEW_APPLE_element_array)\r
-\r
-#endif /* GL_APPLE_element_array */\r
-\r
-/* ----------------------------- GL_APPLE_fence ---------------------------- */\r
-\r
-#ifndef GL_APPLE_fence\r
-#define GL_APPLE_fence 1\r
-\r
-#define GL_DRAW_PIXELS_APPLE 0x8A0A\r
-#define GL_FENCE_APPLE 0x8A0B\r
-\r
-typedef void (GLAPIENTRY * PFNGLDELETEFENCESAPPLEPROC) (GLsizei n, const GLuint* fences);\r
-typedef void (GLAPIENTRY * PFNGLFINISHFENCEAPPLEPROC) (GLuint fence);\r
-typedef void (GLAPIENTRY * PFNGLFINISHOBJECTAPPLEPROC) (GLenum object, GLint name);\r
-typedef void (GLAPIENTRY * PFNGLGENFENCESAPPLEPROC) (GLsizei n, GLuint* fences);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISFENCEAPPLEPROC) (GLuint fence);\r
-typedef void (GLAPIENTRY * PFNGLSETFENCEAPPLEPROC) (GLuint fence);\r
-typedef GLboolean (GLAPIENTRY * PFNGLTESTFENCEAPPLEPROC) (GLuint fence);\r
-typedef GLboolean (GLAPIENTRY * PFNGLTESTOBJECTAPPLEPROC) (GLenum object, GLuint name);\r
-\r
-#define glDeleteFencesAPPLE GLEW_GET_FUN(__glewDeleteFencesAPPLE)\r
-#define glFinishFenceAPPLE GLEW_GET_FUN(__glewFinishFenceAPPLE)\r
-#define glFinishObjectAPPLE GLEW_GET_FUN(__glewFinishObjectAPPLE)\r
-#define glGenFencesAPPLE GLEW_GET_FUN(__glewGenFencesAPPLE)\r
-#define glIsFenceAPPLE GLEW_GET_FUN(__glewIsFenceAPPLE)\r
-#define glSetFenceAPPLE GLEW_GET_FUN(__glewSetFenceAPPLE)\r
-#define glTestFenceAPPLE GLEW_GET_FUN(__glewTestFenceAPPLE)\r
-#define glTestObjectAPPLE GLEW_GET_FUN(__glewTestObjectAPPLE)\r
-\r
-#define GLEW_APPLE_fence GLEW_GET_VAR(__GLEW_APPLE_fence)\r
-\r
-#endif /* GL_APPLE_fence */\r
-\r
-/* ------------------------- GL_APPLE_float_pixels ------------------------- */\r
-\r
-#ifndef GL_APPLE_float_pixels\r
-#define GL_APPLE_float_pixels 1\r
-\r
-#define GL_HALF_APPLE 0x140B\r
-#define GL_RGBA_FLOAT32_APPLE 0x8814\r
-#define GL_RGB_FLOAT32_APPLE 0x8815\r
-#define GL_ALPHA_FLOAT32_APPLE 0x8816\r
-#define GL_INTENSITY_FLOAT32_APPLE 0x8817\r
-#define GL_LUMINANCE_FLOAT32_APPLE 0x8818\r
-#define GL_LUMINANCE_ALPHA_FLOAT32_APPLE 0x8819\r
-#define GL_RGBA_FLOAT16_APPLE 0x881A\r
-#define GL_RGB_FLOAT16_APPLE 0x881B\r
-#define GL_ALPHA_FLOAT16_APPLE 0x881C\r
-#define GL_INTENSITY_FLOAT16_APPLE 0x881D\r
-#define GL_LUMINANCE_FLOAT16_APPLE 0x881E\r
-#define GL_LUMINANCE_ALPHA_FLOAT16_APPLE 0x881F\r
-#define GL_COLOR_FLOAT_APPLE 0x8A0F\r
-\r
-#define GLEW_APPLE_float_pixels GLEW_GET_VAR(__GLEW_APPLE_float_pixels)\r
-\r
-#endif /* GL_APPLE_float_pixels */\r
-\r
-/* ---------------------- GL_APPLE_flush_buffer_range ---------------------- */\r
-\r
-#ifndef GL_APPLE_flush_buffer_range\r
-#define GL_APPLE_flush_buffer_range 1\r
-\r
-#define GL_BUFFER_SERIALIZED_MODIFY_APPLE 0x8A12\r
-#define GL_BUFFER_FLUSHING_UNMAP_APPLE 0x8A13\r
-\r
-typedef void (GLAPIENTRY * PFNGLBUFFERPARAMETERIAPPLEPROC) (GLenum target, GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC) (GLenum target, GLintptr offset, GLsizeiptr size);\r
-\r
-#define glBufferParameteriAPPLE GLEW_GET_FUN(__glewBufferParameteriAPPLE)\r
-#define glFlushMappedBufferRangeAPPLE GLEW_GET_FUN(__glewFlushMappedBufferRangeAPPLE)\r
-\r
-#define GLEW_APPLE_flush_buffer_range GLEW_GET_VAR(__GLEW_APPLE_flush_buffer_range)\r
-\r
-#endif /* GL_APPLE_flush_buffer_range */\r
-\r
-/* ----------------------- GL_APPLE_object_purgeable ----------------------- */\r
-\r
-#ifndef GL_APPLE_object_purgeable\r
-#define GL_APPLE_object_purgeable 1\r
-\r
-#define GL_BUFFER_OBJECT_APPLE 0x85B3\r
-#define GL_RELEASED_APPLE 0x8A19\r
-#define GL_VOLATILE_APPLE 0x8A1A\r
-#define GL_RETAINED_APPLE 0x8A1B\r
-#define GL_UNDEFINED_APPLE 0x8A1C\r
-#define GL_PURGEABLE_APPLE 0x8A1D\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERIVAPPLEPROC) (GLenum objectType, GLuint name, GLenum pname, GLint* params);\r
-typedef GLenum (GLAPIENTRY * PFNGLOBJECTPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option);\r
-typedef GLenum (GLAPIENTRY * PFNGLOBJECTUNPURGEABLEAPPLEPROC) (GLenum objectType, GLuint name, GLenum option);\r
-\r
-#define glGetObjectParameterivAPPLE GLEW_GET_FUN(__glewGetObjectParameterivAPPLE)\r
-#define glObjectPurgeableAPPLE GLEW_GET_FUN(__glewObjectPurgeableAPPLE)\r
-#define glObjectUnpurgeableAPPLE GLEW_GET_FUN(__glewObjectUnpurgeableAPPLE)\r
-\r
-#define GLEW_APPLE_object_purgeable GLEW_GET_VAR(__GLEW_APPLE_object_purgeable)\r
-\r
-#endif /* GL_APPLE_object_purgeable */\r
-\r
-/* ------------------------- GL_APPLE_pixel_buffer ------------------------- */\r
-\r
-#ifndef GL_APPLE_pixel_buffer\r
-#define GL_APPLE_pixel_buffer 1\r
-\r
-#define GL_MIN_PBUFFER_VIEWPORT_DIMS_APPLE 0x8A10\r
-\r
-#define GLEW_APPLE_pixel_buffer GLEW_GET_VAR(__GLEW_APPLE_pixel_buffer)\r
-\r
-#endif /* GL_APPLE_pixel_buffer */\r
-\r
-/* ---------------------------- GL_APPLE_rgb_422 --------------------------- */\r
-\r
-#ifndef GL_APPLE_rgb_422\r
-#define GL_APPLE_rgb_422 1\r
-\r
-#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA\r
-#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB\r
-#define GL_RGB_422_APPLE 0x8A1F\r
-\r
-#define GLEW_APPLE_rgb_422 GLEW_GET_VAR(__GLEW_APPLE_rgb_422)\r
-\r
-#endif /* GL_APPLE_rgb_422 */\r
-\r
-/* --------------------------- GL_APPLE_row_bytes -------------------------- */\r
-\r
-#ifndef GL_APPLE_row_bytes\r
-#define GL_APPLE_row_bytes 1\r
-\r
-#define GL_PACK_ROW_BYTES_APPLE 0x8A15\r
-#define GL_UNPACK_ROW_BYTES_APPLE 0x8A16\r
-\r
-#define GLEW_APPLE_row_bytes GLEW_GET_VAR(__GLEW_APPLE_row_bytes)\r
-\r
-#endif /* GL_APPLE_row_bytes */\r
-\r
-/* ------------------------ GL_APPLE_specular_vector ----------------------- */\r
-\r
-#ifndef GL_APPLE_specular_vector\r
-#define GL_APPLE_specular_vector 1\r
-\r
-#define GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE 0x85B0\r
-\r
-#define GLEW_APPLE_specular_vector GLEW_GET_VAR(__GLEW_APPLE_specular_vector)\r
-\r
-#endif /* GL_APPLE_specular_vector */\r
-\r
-/* ------------------------- GL_APPLE_texture_range ------------------------ */\r
-\r
-#ifndef GL_APPLE_texture_range\r
-#define GL_APPLE_texture_range 1\r
-\r
-#define GL_TEXTURE_RANGE_LENGTH_APPLE 0x85B7\r
-#define GL_TEXTURE_RANGE_POINTER_APPLE 0x85B8\r
-#define GL_TEXTURE_STORAGE_HINT_APPLE 0x85BC\r
-#define GL_STORAGE_PRIVATE_APPLE 0x85BD\r
-#define GL_STORAGE_CACHED_APPLE 0x85BE\r
-#define GL_STORAGE_SHARED_APPLE 0x85BF\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC) (GLenum target, GLenum pname, GLvoid **params);\r
-typedef void (GLAPIENTRY * PFNGLTEXTURERANGEAPPLEPROC) (GLenum target, GLsizei length, GLvoid *pointer);\r
-\r
-#define glGetTexParameterPointervAPPLE GLEW_GET_FUN(__glewGetTexParameterPointervAPPLE)\r
-#define glTextureRangeAPPLE GLEW_GET_FUN(__glewTextureRangeAPPLE)\r
-\r
-#define GLEW_APPLE_texture_range GLEW_GET_VAR(__GLEW_APPLE_texture_range)\r
-\r
-#endif /* GL_APPLE_texture_range */\r
-\r
-/* ------------------------ GL_APPLE_transform_hint ------------------------ */\r
-\r
-#ifndef GL_APPLE_transform_hint\r
-#define GL_APPLE_transform_hint 1\r
-\r
-#define GL_TRANSFORM_HINT_APPLE 0x85B1\r
-\r
-#define GLEW_APPLE_transform_hint GLEW_GET_VAR(__GLEW_APPLE_transform_hint)\r
-\r
-#endif /* GL_APPLE_transform_hint */\r
-\r
-/* ---------------------- GL_APPLE_vertex_array_object --------------------- */\r
-\r
-#ifndef GL_APPLE_vertex_array_object\r
-#define GL_APPLE_vertex_array_object 1\r
-\r
-#define GL_VERTEX_ARRAY_BINDING_APPLE 0x85B5\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYAPPLEPROC) (GLuint array);\r
-typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint* arrays);\r
-typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSAPPLEPROC) (GLsizei n, const GLuint* arrays);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYAPPLEPROC) (GLuint array);\r
-\r
-#define glBindVertexArrayAPPLE GLEW_GET_FUN(__glewBindVertexArrayAPPLE)\r
-#define glDeleteVertexArraysAPPLE GLEW_GET_FUN(__glewDeleteVertexArraysAPPLE)\r
-#define glGenVertexArraysAPPLE GLEW_GET_FUN(__glewGenVertexArraysAPPLE)\r
-#define glIsVertexArrayAPPLE GLEW_GET_FUN(__glewIsVertexArrayAPPLE)\r
-\r
-#define GLEW_APPLE_vertex_array_object GLEW_GET_VAR(__GLEW_APPLE_vertex_array_object)\r
-\r
-#endif /* GL_APPLE_vertex_array_object */\r
-\r
-/* ---------------------- GL_APPLE_vertex_array_range ---------------------- */\r
-\r
-#ifndef GL_APPLE_vertex_array_range\r
-#define GL_APPLE_vertex_array_range 1\r
-\r
-#define GL_VERTEX_ARRAY_RANGE_APPLE 0x851D\r
-#define GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE 0x851E\r
-#define GL_VERTEX_ARRAY_STORAGE_HINT_APPLE 0x851F\r
-#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_APPLE 0x8520\r
-#define GL_VERTEX_ARRAY_RANGE_POINTER_APPLE 0x8521\r
-#define GL_STORAGE_CLIENT_APPLE 0x85B4\r
-#define GL_STORAGE_CACHED_APPLE 0x85BE\r
-#define GL_STORAGE_SHARED_APPLE 0x85BF\r
-\r
-typedef void (GLAPIENTRY * PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYPARAMETERIAPPLEPROC) (GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYRANGEAPPLEPROC) (GLsizei length, void* pointer);\r
-\r
-#define glFlushVertexArrayRangeAPPLE GLEW_GET_FUN(__glewFlushVertexArrayRangeAPPLE)\r
-#define glVertexArrayParameteriAPPLE GLEW_GET_FUN(__glewVertexArrayParameteriAPPLE)\r
-#define glVertexArrayRangeAPPLE GLEW_GET_FUN(__glewVertexArrayRangeAPPLE)\r
-\r
-#define GLEW_APPLE_vertex_array_range GLEW_GET_VAR(__GLEW_APPLE_vertex_array_range)\r
-\r
-#endif /* GL_APPLE_vertex_array_range */\r
-\r
-/* ------------------- GL_APPLE_vertex_program_evaluators ------------------ */\r
-\r
-#ifndef GL_APPLE_vertex_program_evaluators\r
-#define GL_APPLE_vertex_program_evaluators 1\r
-\r
-#define GL_VERTEX_ATTRIB_MAP1_APPLE 0x8A00\r
-#define GL_VERTEX_ATTRIB_MAP2_APPLE 0x8A01\r
-#define GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE 0x8A02\r
-#define GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE 0x8A03\r
-#define GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE 0x8A04\r
-#define GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE 0x8A05\r
-#define GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE 0x8A06\r
-#define GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE 0x8A07\r
-#define GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE 0x8A08\r
-#define GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE 0x8A09\r
-\r
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname);\r
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBAPPLEPROC) (GLuint index, GLenum pname);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXATTRIBENABLEDAPPLEPROC) (GLuint index, GLenum pname);\r
-typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB1DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble* points);\r
-typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB1FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat* points);\r
-typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2DAPPLEPROC) (GLuint index, GLuint size, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble* points);\r
-typedef void (GLAPIENTRY * PFNGLMAPVERTEXATTRIB2FAPPLEPROC) (GLuint index, GLuint size, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat* points);\r
-\r
-#define glDisableVertexAttribAPPLE GLEW_GET_FUN(__glewDisableVertexAttribAPPLE)\r
-#define glEnableVertexAttribAPPLE GLEW_GET_FUN(__glewEnableVertexAttribAPPLE)\r
-#define glIsVertexAttribEnabledAPPLE GLEW_GET_FUN(__glewIsVertexAttribEnabledAPPLE)\r
-#define glMapVertexAttrib1dAPPLE GLEW_GET_FUN(__glewMapVertexAttrib1dAPPLE)\r
-#define glMapVertexAttrib1fAPPLE GLEW_GET_FUN(__glewMapVertexAttrib1fAPPLE)\r
-#define glMapVertexAttrib2dAPPLE GLEW_GET_FUN(__glewMapVertexAttrib2dAPPLE)\r
-#define glMapVertexAttrib2fAPPLE GLEW_GET_FUN(__glewMapVertexAttrib2fAPPLE)\r
-\r
-#define GLEW_APPLE_vertex_program_evaluators GLEW_GET_VAR(__GLEW_APPLE_vertex_program_evaluators)\r
-\r
-#endif /* GL_APPLE_vertex_program_evaluators */\r
-\r
-/* --------------------------- GL_APPLE_ycbcr_422 -------------------------- */\r
-\r
-#ifndef GL_APPLE_ycbcr_422\r
-#define GL_APPLE_ycbcr_422 1\r
-\r
-#define GL_YCBCR_422_APPLE 0x85B9\r
-#define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA\r
-#define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB\r
-\r
-#define GLEW_APPLE_ycbcr_422 GLEW_GET_VAR(__GLEW_APPLE_ycbcr_422)\r
-\r
-#endif /* GL_APPLE_ycbcr_422 */\r
-\r
-/* ------------------------ GL_ARB_ES2_compatibility ----------------------- */\r
-\r
-#ifndef GL_ARB_ES2_compatibility\r
-#define GL_ARB_ES2_compatibility 1\r
-\r
-#define GL_FIXED 0x140C\r
-#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A\r
-#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B\r
-#define GL_LOW_FLOAT 0x8DF0\r
-#define GL_MEDIUM_FLOAT 0x8DF1\r
-#define GL_HIGH_FLOAT 0x8DF2\r
-#define GL_LOW_INT 0x8DF3\r
-#define GL_MEDIUM_INT 0x8DF4\r
-#define GL_HIGH_INT 0x8DF5\r
-#define GL_SHADER_BINARY_FORMATS 0x8DF8\r
-#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9\r
-#define GL_SHADER_COMPILER 0x8DFA\r
-#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB\r
-#define GL_MAX_VARYING_VECTORS 0x8DFC\r
-#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD\r
-\r
-typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFPROC) (GLclampf d);\r
-typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFPROC) (GLclampf n, GLclampf f);\r
-typedef void (GLAPIENTRY * PFNGLGETSHADERPRECISIONFORMATPROC) (GLenum shadertype, GLenum precisiontype, GLint* range, GLint *precision);\r
-typedef void (GLAPIENTRY * PFNGLRELEASESHADERCOMPILERPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLSHADERBINARYPROC) (GLsizei count, const GLuint* shaders, GLenum binaryformat, const GLvoid*binary, GLsizei length);\r
-\r
-#define glClearDepthf GLEW_GET_FUN(__glewClearDepthf)\r
-#define glDepthRangef GLEW_GET_FUN(__glewDepthRangef)\r
-#define glGetShaderPrecisionFormat GLEW_GET_FUN(__glewGetShaderPrecisionFormat)\r
-#define glReleaseShaderCompiler GLEW_GET_FUN(__glewReleaseShaderCompiler)\r
-#define glShaderBinary GLEW_GET_FUN(__glewShaderBinary)\r
-\r
-#define GLEW_ARB_ES2_compatibility GLEW_GET_VAR(__GLEW_ARB_ES2_compatibility)\r
-\r
-#endif /* GL_ARB_ES2_compatibility */\r
-\r
-/* -------------------------- GL_ARB_base_instance ------------------------- */\r
-\r
-#ifndef GL_ARB_base_instance\r
-#define GL_ARB_base_instance 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount, GLuint baseinstance);\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount, GLuint baseinstance);\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount, GLint basevertex, GLuint baseinstance);\r
-\r
-#define glDrawArraysInstancedBaseInstance GLEW_GET_FUN(__glewDrawArraysInstancedBaseInstance)\r
-#define glDrawElementsInstancedBaseInstance GLEW_GET_FUN(__glewDrawElementsInstancedBaseInstance)\r
-#define glDrawElementsInstancedBaseVertexBaseInstance GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertexBaseInstance)\r
-\r
-#define GLEW_ARB_base_instance GLEW_GET_VAR(__GLEW_ARB_base_instance)\r
-\r
-#endif /* GL_ARB_base_instance */\r
-\r
-/* ----------------------- GL_ARB_blend_func_extended ---------------------- */\r
-\r
-#ifndef GL_ARB_blend_func_extended\r
-#define GL_ARB_blend_func_extended 1\r
-\r
-#define GL_SRC1_COLOR 0x88F9\r
-#define GL_ONE_MINUS_SRC1_COLOR 0x88FA\r
-#define GL_ONE_MINUS_SRC1_ALPHA 0x88FB\r
-#define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS 0x88FC\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONINDEXEDPROC) (GLuint program, GLuint colorNumber, GLuint index, const char * name);\r
-typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATAINDEXPROC) (GLuint program, const char * name);\r
-\r
-#define glBindFragDataLocationIndexed GLEW_GET_FUN(__glewBindFragDataLocationIndexed)\r
-#define glGetFragDataIndex GLEW_GET_FUN(__glewGetFragDataIndex)\r
-\r
-#define GLEW_ARB_blend_func_extended GLEW_GET_VAR(__GLEW_ARB_blend_func_extended)\r
-\r
-#endif /* GL_ARB_blend_func_extended */\r
-\r
-/* ---------------------------- GL_ARB_cl_event ---------------------------- */\r
-\r
-#ifndef GL_ARB_cl_event\r
-#define GL_ARB_cl_event 1\r
-\r
-#define GL_SYNC_CL_EVENT_ARB 0x8240\r
-#define GL_SYNC_CL_EVENT_COMPLETE_ARB 0x8241\r
-\r
-typedef struct _cl_context *cl_context;\r
-typedef struct _cl_event *cl_event;\r
-\r
-typedef GLsync (GLAPIENTRY * PFNGLCREATESYNCFROMCLEVENTARBPROC) (cl_context context, cl_event event, GLbitfield flags);\r
-\r
-#define glCreateSyncFromCLeventARB GLEW_GET_FUN(__glewCreateSyncFromCLeventARB)\r
-\r
-#define GLEW_ARB_cl_event GLEW_GET_VAR(__GLEW_ARB_cl_event)\r
-\r
-#endif /* GL_ARB_cl_event */\r
-\r
-/* ----------------------- GL_ARB_color_buffer_float ----------------------- */\r
-\r
-#ifndef GL_ARB_color_buffer_float\r
-#define GL_ARB_color_buffer_float 1\r
-\r
-#define GL_RGBA_FLOAT_MODE_ARB 0x8820\r
-#define GL_CLAMP_VERTEX_COLOR_ARB 0x891A\r
-#define GL_CLAMP_FRAGMENT_COLOR_ARB 0x891B\r
-#define GL_CLAMP_READ_COLOR_ARB 0x891C\r
-#define GL_FIXED_ONLY_ARB 0x891D\r
-\r
-typedef void (GLAPIENTRY * PFNGLCLAMPCOLORARBPROC) (GLenum target, GLenum clamp);\r
-\r
-#define glClampColorARB GLEW_GET_FUN(__glewClampColorARB)\r
-\r
-#define GLEW_ARB_color_buffer_float GLEW_GET_VAR(__GLEW_ARB_color_buffer_float)\r
-\r
-#endif /* GL_ARB_color_buffer_float */\r
-\r
-/* -------------------------- GL_ARB_compatibility ------------------------- */\r
-\r
-#ifndef GL_ARB_compatibility\r
-#define GL_ARB_compatibility 1\r
-\r
-#define GLEW_ARB_compatibility GLEW_GET_VAR(__GLEW_ARB_compatibility)\r
-\r
-#endif /* GL_ARB_compatibility */\r
-\r
-/* ---------------- GL_ARB_compressed_texture_pixel_storage ---------------- */\r
-\r
-#ifndef GL_ARB_compressed_texture_pixel_storage\r
-#define GL_ARB_compressed_texture_pixel_storage 1\r
-\r
-#define GL_UNPACK_COMPRESSED_BLOCK_WIDTH 0x9127\r
-#define GL_UNPACK_COMPRESSED_BLOCK_HEIGHT 0x9128\r
-#define GL_UNPACK_COMPRESSED_BLOCK_DEPTH 0x9129\r
-#define GL_UNPACK_COMPRESSED_BLOCK_SIZE 0x912A\r
-#define GL_PACK_COMPRESSED_BLOCK_WIDTH 0x912B\r
-#define GL_PACK_COMPRESSED_BLOCK_HEIGHT 0x912C\r
-#define GL_PACK_COMPRESSED_BLOCK_DEPTH 0x912D\r
-#define GL_PACK_COMPRESSED_BLOCK_SIZE 0x912E\r
-\r
-#define GLEW_ARB_compressed_texture_pixel_storage GLEW_GET_VAR(__GLEW_ARB_compressed_texture_pixel_storage)\r
-\r
-#endif /* GL_ARB_compressed_texture_pixel_storage */\r
-\r
-/* ----------------------- GL_ARB_conservative_depth ----------------------- */\r
-\r
-#ifndef GL_ARB_conservative_depth\r
-#define GL_ARB_conservative_depth 1\r
-\r
-#define GLEW_ARB_conservative_depth GLEW_GET_VAR(__GLEW_ARB_conservative_depth)\r
-\r
-#endif /* GL_ARB_conservative_depth */\r
-\r
-/* --------------------------- GL_ARB_copy_buffer -------------------------- */\r
-\r
-#ifndef GL_ARB_copy_buffer\r
-#define GL_ARB_copy_buffer 1\r
-\r
-#define GL_COPY_READ_BUFFER 0x8F36\r
-#define GL_COPY_WRITE_BUFFER 0x8F37\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOPYBUFFERSUBDATAPROC) (GLenum readtarget, GLenum writetarget, GLintptr readoffset, GLintptr writeoffset, GLsizeiptr size);\r
-\r
-#define glCopyBufferSubData GLEW_GET_FUN(__glewCopyBufferSubData)\r
-\r
-#define GLEW_ARB_copy_buffer GLEW_GET_VAR(__GLEW_ARB_copy_buffer)\r
-\r
-#endif /* GL_ARB_copy_buffer */\r
-\r
-/* -------------------------- GL_ARB_debug_output -------------------------- */\r
-\r
-#ifndef GL_ARB_debug_output\r
-#define GL_ARB_debug_output 1\r
-\r
-#define GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB 0x8242\r
-#define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB 0x8243\r
-#define GL_DEBUG_CALLBACK_FUNCTION_ARB 0x8244\r
-#define GL_DEBUG_CALLBACK_USER_PARAM_ARB 0x8245\r
-#define GL_DEBUG_SOURCE_API_ARB 0x8246\r
-#define GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB 0x8247\r
-#define GL_DEBUG_SOURCE_SHADER_COMPILER_ARB 0x8248\r
-#define GL_DEBUG_SOURCE_THIRD_PARTY_ARB 0x8249\r
-#define GL_DEBUG_SOURCE_APPLICATION_ARB 0x824A\r
-#define GL_DEBUG_SOURCE_OTHER_ARB 0x824B\r
-#define GL_DEBUG_TYPE_ERROR_ARB 0x824C\r
-#define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB 0x824D\r
-#define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB 0x824E\r
-#define GL_DEBUG_TYPE_PORTABILITY_ARB 0x824F\r
-#define GL_DEBUG_TYPE_PERFORMANCE_ARB 0x8250\r
-#define GL_DEBUG_TYPE_OTHER_ARB 0x8251\r
-#define GL_MAX_DEBUG_MESSAGE_LENGTH_ARB 0x9143\r
-#define GL_MAX_DEBUG_LOGGED_MESSAGES_ARB 0x9144\r
-#define GL_DEBUG_LOGGED_MESSAGES_ARB 0x9145\r
-#define GL_DEBUG_SEVERITY_HIGH_ARB 0x9146\r
-#define GL_DEBUG_SEVERITY_MEDIUM_ARB 0x9147\r
-#define GL_DEBUG_SEVERITY_LOW_ARB 0x9148\r
-\r
-typedef void (APIENTRY *GLDEBUGPROCARB)(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar* message, GLvoid* userParam);\r
-\r
-typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECALLBACKARBPROC) (GLDEBUGPROCARB callback, void* userParam);\r
-typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGECONTROLARBPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint* ids, GLboolean enabled);\r
-typedef void (GLAPIENTRY * PFNGLDEBUGMESSAGEINSERTARBPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const char* buf);\r
-typedef GLuint (GLAPIENTRY * PFNGLGETDEBUGMESSAGELOGARBPROC) (GLuint count, GLsizei bufsize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, char* messageLog);\r
-\r
-#define glDebugMessageCallbackARB GLEW_GET_FUN(__glewDebugMessageCallbackARB)\r
-#define glDebugMessageControlARB GLEW_GET_FUN(__glewDebugMessageControlARB)\r
-#define glDebugMessageInsertARB GLEW_GET_FUN(__glewDebugMessageInsertARB)\r
-#define glGetDebugMessageLogARB GLEW_GET_FUN(__glewGetDebugMessageLogARB)\r
-\r
-#define GLEW_ARB_debug_output GLEW_GET_VAR(__GLEW_ARB_debug_output)\r
-\r
-#endif /* GL_ARB_debug_output */\r
-\r
-/* ----------------------- GL_ARB_depth_buffer_float ----------------------- */\r
-\r
-#ifndef GL_ARB_depth_buffer_float\r
-#define GL_ARB_depth_buffer_float 1\r
-\r
-#define GL_DEPTH_COMPONENT32F 0x8CAC\r
-#define GL_DEPTH32F_STENCIL8 0x8CAD\r
-#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD\r
-\r
-#define GLEW_ARB_depth_buffer_float GLEW_GET_VAR(__GLEW_ARB_depth_buffer_float)\r
-\r
-#endif /* GL_ARB_depth_buffer_float */\r
-\r
-/* --------------------------- GL_ARB_depth_clamp -------------------------- */\r
-\r
-#ifndef GL_ARB_depth_clamp\r
-#define GL_ARB_depth_clamp 1\r
-\r
-#define GL_DEPTH_CLAMP 0x864F\r
-\r
-#define GLEW_ARB_depth_clamp GLEW_GET_VAR(__GLEW_ARB_depth_clamp)\r
-\r
-#endif /* GL_ARB_depth_clamp */\r
-\r
-/* -------------------------- GL_ARB_depth_texture ------------------------- */\r
-\r
-#ifndef GL_ARB_depth_texture\r
-#define GL_ARB_depth_texture 1\r
-\r
-#define GL_DEPTH_COMPONENT16_ARB 0x81A5\r
-#define GL_DEPTH_COMPONENT24_ARB 0x81A6\r
-#define GL_DEPTH_COMPONENT32_ARB 0x81A7\r
-#define GL_TEXTURE_DEPTH_SIZE_ARB 0x884A\r
-#define GL_DEPTH_TEXTURE_MODE_ARB 0x884B\r
-\r
-#define GLEW_ARB_depth_texture GLEW_GET_VAR(__GLEW_ARB_depth_texture)\r
-\r
-#endif /* GL_ARB_depth_texture */\r
-\r
-/* -------------------------- GL_ARB_draw_buffers -------------------------- */\r
-\r
-#ifndef GL_ARB_draw_buffers\r
-#define GL_ARB_draw_buffers 1\r
-\r
-#define GL_MAX_DRAW_BUFFERS_ARB 0x8824\r
-#define GL_DRAW_BUFFER0_ARB 0x8825\r
-#define GL_DRAW_BUFFER1_ARB 0x8826\r
-#define GL_DRAW_BUFFER2_ARB 0x8827\r
-#define GL_DRAW_BUFFER3_ARB 0x8828\r
-#define GL_DRAW_BUFFER4_ARB 0x8829\r
-#define GL_DRAW_BUFFER5_ARB 0x882A\r
-#define GL_DRAW_BUFFER6_ARB 0x882B\r
-#define GL_DRAW_BUFFER7_ARB 0x882C\r
-#define GL_DRAW_BUFFER8_ARB 0x882D\r
-#define GL_DRAW_BUFFER9_ARB 0x882E\r
-#define GL_DRAW_BUFFER10_ARB 0x882F\r
-#define GL_DRAW_BUFFER11_ARB 0x8830\r
-#define GL_DRAW_BUFFER12_ARB 0x8831\r
-#define GL_DRAW_BUFFER13_ARB 0x8832\r
-#define GL_DRAW_BUFFER14_ARB 0x8833\r
-#define GL_DRAW_BUFFER15_ARB 0x8834\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSARBPROC) (GLsizei n, const GLenum* bufs);\r
-\r
-#define glDrawBuffersARB GLEW_GET_FUN(__glewDrawBuffersARB)\r
-\r
-#define GLEW_ARB_draw_buffers GLEW_GET_VAR(__GLEW_ARB_draw_buffers)\r
-\r
-#endif /* GL_ARB_draw_buffers */\r
-\r
-/* ----------------------- GL_ARB_draw_buffers_blend ----------------------- */\r
-\r
-#ifndef GL_ARB_draw_buffers_blend\r
-#define GL_ARB_draw_buffers_blend 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEIARBPROC) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONIARBPROC) (GLuint buf, GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEIARBPROC) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);\r
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCIARBPROC) (GLuint buf, GLenum src, GLenum dst);\r
-\r
-#define glBlendEquationSeparateiARB GLEW_GET_FUN(__glewBlendEquationSeparateiARB)\r
-#define glBlendEquationiARB GLEW_GET_FUN(__glewBlendEquationiARB)\r
-#define glBlendFuncSeparateiARB GLEW_GET_FUN(__glewBlendFuncSeparateiARB)\r
-#define glBlendFunciARB GLEW_GET_FUN(__glewBlendFunciARB)\r
-\r
-#define GLEW_ARB_draw_buffers_blend GLEW_GET_VAR(__GLEW_ARB_draw_buffers_blend)\r
-\r
-#endif /* GL_ARB_draw_buffers_blend */\r
-\r
-/* -------------------- GL_ARB_draw_elements_base_vertex ------------------- */\r
-\r
-#ifndef GL_ARB_draw_elements_base_vertex\r
-#define GL_ARB_draw_elements_base_vertex 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, void* indices, GLint basevertex);\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount, GLint basevertex);\r
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, void* indices, GLint basevertex);\r
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC) (GLenum mode, GLsizei* count, GLenum type, GLvoid**indices, GLsizei primcount, GLint *basevertex);\r
-\r
-#define glDrawElementsBaseVertex GLEW_GET_FUN(__glewDrawElementsBaseVertex)\r
-#define glDrawElementsInstancedBaseVertex GLEW_GET_FUN(__glewDrawElementsInstancedBaseVertex)\r
-#define glDrawRangeElementsBaseVertex GLEW_GET_FUN(__glewDrawRangeElementsBaseVertex)\r
-#define glMultiDrawElementsBaseVertex GLEW_GET_FUN(__glewMultiDrawElementsBaseVertex)\r
-\r
-#define GLEW_ARB_draw_elements_base_vertex GLEW_GET_VAR(__GLEW_ARB_draw_elements_base_vertex)\r
-\r
-#endif /* GL_ARB_draw_elements_base_vertex */\r
-\r
-/* -------------------------- GL_ARB_draw_indirect ------------------------- */\r
-\r
-#ifndef GL_ARB_draw_indirect\r
-#define GL_ARB_draw_indirect 1\r
-\r
-#define GL_DRAW_INDIRECT_BUFFER 0x8F3F\r
-#define GL_DRAW_INDIRECT_BUFFER_BINDING 0x8F43\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINDIRECTPROC) (GLenum mode, const void* indirect);\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINDIRECTPROC) (GLenum mode, GLenum type, const void* indirect);\r
-\r
-#define glDrawArraysIndirect GLEW_GET_FUN(__glewDrawArraysIndirect)\r
-#define glDrawElementsIndirect GLEW_GET_FUN(__glewDrawElementsIndirect)\r
-\r
-#define GLEW_ARB_draw_indirect GLEW_GET_VAR(__GLEW_ARB_draw_indirect)\r
-\r
-#endif /* GL_ARB_draw_indirect */\r
-\r
-/* ------------------------- GL_ARB_draw_instanced ------------------------- */\r
-\r
-#ifndef GL_ARB_draw_instanced\r
-#define GL_ARB_draw_instanced 1\r
-\r
-#define GLEW_ARB_draw_instanced GLEW_GET_VAR(__GLEW_ARB_draw_instanced)\r
-\r
-#endif /* GL_ARB_draw_instanced */\r
-\r
-/* -------------------- GL_ARB_explicit_attrib_location -------------------- */\r
-\r
-#ifndef GL_ARB_explicit_attrib_location\r
-#define GL_ARB_explicit_attrib_location 1\r
-\r
-#define GLEW_ARB_explicit_attrib_location GLEW_GET_VAR(__GLEW_ARB_explicit_attrib_location)\r
-\r
-#endif /* GL_ARB_explicit_attrib_location */\r
-\r
-/* ------------------- GL_ARB_fragment_coord_conventions ------------------- */\r
-\r
-#ifndef GL_ARB_fragment_coord_conventions\r
-#define GL_ARB_fragment_coord_conventions 1\r
-\r
-#define GLEW_ARB_fragment_coord_conventions GLEW_GET_VAR(__GLEW_ARB_fragment_coord_conventions)\r
-\r
-#endif /* GL_ARB_fragment_coord_conventions */\r
-\r
-/* ------------------------ GL_ARB_fragment_program ------------------------ */\r
-\r
-#ifndef GL_ARB_fragment_program\r
-#define GL_ARB_fragment_program 1\r
-\r
-#define GL_FRAGMENT_PROGRAM_ARB 0x8804\r
-#define GL_PROGRAM_ALU_INSTRUCTIONS_ARB 0x8805\r
-#define GL_PROGRAM_TEX_INSTRUCTIONS_ARB 0x8806\r
-#define GL_PROGRAM_TEX_INDIRECTIONS_ARB 0x8807\r
-#define GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x8808\r
-#define GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x8809\r
-#define GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x880A\r
-#define GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB 0x880B\r
-#define GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB 0x880C\r
-#define GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB 0x880D\r
-#define GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB 0x880E\r
-#define GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB 0x880F\r
-#define GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB 0x8810\r
-#define GL_MAX_TEXTURE_COORDS_ARB 0x8871\r
-#define GL_MAX_TEXTURE_IMAGE_UNITS_ARB 0x8872\r
-\r
-#define GLEW_ARB_fragment_program GLEW_GET_VAR(__GLEW_ARB_fragment_program)\r
-\r
-#endif /* GL_ARB_fragment_program */\r
-\r
-/* --------------------- GL_ARB_fragment_program_shadow -------------------- */\r
-\r
-#ifndef GL_ARB_fragment_program_shadow\r
-#define GL_ARB_fragment_program_shadow 1\r
-\r
-#define GLEW_ARB_fragment_program_shadow GLEW_GET_VAR(__GLEW_ARB_fragment_program_shadow)\r
-\r
-#endif /* GL_ARB_fragment_program_shadow */\r
-\r
-/* ------------------------- GL_ARB_fragment_shader ------------------------ */\r
-\r
-#ifndef GL_ARB_fragment_shader\r
-#define GL_ARB_fragment_shader 1\r
-\r
-#define GL_FRAGMENT_SHADER_ARB 0x8B30\r
-#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB 0x8B49\r
-#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB 0x8B8B\r
-\r
-#define GLEW_ARB_fragment_shader GLEW_GET_VAR(__GLEW_ARB_fragment_shader)\r
-\r
-#endif /* GL_ARB_fragment_shader */\r
-\r
-/* ----------------------- GL_ARB_framebuffer_object ----------------------- */\r
-\r
-#ifndef GL_ARB_framebuffer_object\r
-#define GL_ARB_framebuffer_object 1\r
-\r
-#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506\r
-#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210\r
-#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211\r
-#define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212\r
-#define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213\r
-#define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214\r
-#define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215\r
-#define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216\r
-#define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217\r
-#define GL_FRAMEBUFFER_DEFAULT 0x8218\r
-#define GL_FRAMEBUFFER_UNDEFINED 0x8219\r
-#define GL_DEPTH_STENCIL_ATTACHMENT 0x821A\r
-#define GL_INDEX 0x8222\r
-#define GL_MAX_RENDERBUFFER_SIZE 0x84E8\r
-#define GL_DEPTH_STENCIL 0x84F9\r
-#define GL_UNSIGNED_INT_24_8 0x84FA\r
-#define GL_DEPTH24_STENCIL8 0x88F0\r
-#define GL_TEXTURE_STENCIL_SIZE 0x88F1\r
-#define GL_UNSIGNED_NORMALIZED 0x8C17\r
-#define GL_SRGB 0x8C40\r
-#define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6\r
-#define GL_FRAMEBUFFER_BINDING 0x8CA6\r
-#define GL_RENDERBUFFER_BINDING 0x8CA7\r
-#define GL_READ_FRAMEBUFFER 0x8CA8\r
-#define GL_DRAW_FRAMEBUFFER 0x8CA9\r
-#define GL_READ_FRAMEBUFFER_BINDING 0x8CAA\r
-#define GL_RENDERBUFFER_SAMPLES 0x8CAB\r
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0\r
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1\r
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2\r
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3\r
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4\r
-#define GL_FRAMEBUFFER_COMPLETE 0x8CD5\r
-#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6\r
-#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7\r
-#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8CDB\r
-#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC\r
-#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD\r
-#define GL_MAX_COLOR_ATTACHMENTS 0x8CDF\r
-#define GL_COLOR_ATTACHMENT0 0x8CE0\r
-#define GL_COLOR_ATTACHMENT1 0x8CE1\r
-#define GL_COLOR_ATTACHMENT2 0x8CE2\r
-#define GL_COLOR_ATTACHMENT3 0x8CE3\r
-#define GL_COLOR_ATTACHMENT4 0x8CE4\r
-#define GL_COLOR_ATTACHMENT5 0x8CE5\r
-#define GL_COLOR_ATTACHMENT6 0x8CE6\r
-#define GL_COLOR_ATTACHMENT7 0x8CE7\r
-#define GL_COLOR_ATTACHMENT8 0x8CE8\r
-#define GL_COLOR_ATTACHMENT9 0x8CE9\r
-#define GL_COLOR_ATTACHMENT10 0x8CEA\r
-#define GL_COLOR_ATTACHMENT11 0x8CEB\r
-#define GL_COLOR_ATTACHMENT12 0x8CEC\r
-#define GL_COLOR_ATTACHMENT13 0x8CED\r
-#define GL_COLOR_ATTACHMENT14 0x8CEE\r
-#define GL_COLOR_ATTACHMENT15 0x8CEF\r
-#define GL_DEPTH_ATTACHMENT 0x8D00\r
-#define GL_STENCIL_ATTACHMENT 0x8D20\r
-#define GL_FRAMEBUFFER 0x8D40\r
-#define GL_RENDERBUFFER 0x8D41\r
-#define GL_RENDERBUFFER_WIDTH 0x8D42\r
-#define GL_RENDERBUFFER_HEIGHT 0x8D43\r
-#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44\r
-#define GL_STENCIL_INDEX1 0x8D46\r
-#define GL_STENCIL_INDEX4 0x8D47\r
-#define GL_STENCIL_INDEX8 0x8D48\r
-#define GL_STENCIL_INDEX16 0x8D49\r
-#define GL_RENDERBUFFER_RED_SIZE 0x8D50\r
-#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51\r
-#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52\r
-#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53\r
-#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54\r
-#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55\r
-#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56\r
-#define GL_MAX_SAMPLES 0x8D57\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFERPROC) (GLenum target, GLuint framebuffer);\r
-typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFERPROC) (GLenum target, GLuint renderbuffer);\r
-typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFERPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);\r
-typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSPROC) (GLsizei n, const GLuint* framebuffers);\r
-typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSPROC) (GLsizei n, const GLuint* renderbuffers);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFERPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE1DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint layer);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERPROC) (GLenum target,GLenum attachment, GLuint texture,GLint level,GLint layer);\r
-typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSPROC) (GLsizei n, GLuint* framebuffers);\r
-typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSPROC) (GLsizei n, GLuint* renderbuffers);\r
-typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFERPROC) (GLuint framebuffer);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFERPROC) (GLuint renderbuffer);\r
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);\r
-\r
-#define glBindFramebuffer GLEW_GET_FUN(__glewBindFramebuffer)\r
-#define glBindRenderbuffer GLEW_GET_FUN(__glewBindRenderbuffer)\r
-#define glBlitFramebuffer GLEW_GET_FUN(__glewBlitFramebuffer)\r
-#define glCheckFramebufferStatus GLEW_GET_FUN(__glewCheckFramebufferStatus)\r
-#define glDeleteFramebuffers GLEW_GET_FUN(__glewDeleteFramebuffers)\r
-#define glDeleteRenderbuffers GLEW_GET_FUN(__glewDeleteRenderbuffers)\r
-#define glFramebufferRenderbuffer GLEW_GET_FUN(__glewFramebufferRenderbuffer)\r
-#define glFramebufferTexture1D GLEW_GET_FUN(__glewFramebufferTexture1D)\r
-#define glFramebufferTexture2D GLEW_GET_FUN(__glewFramebufferTexture2D)\r
-#define glFramebufferTexture3D GLEW_GET_FUN(__glewFramebufferTexture3D)\r
-#define glFramebufferTextureLayer GLEW_GET_FUN(__glewFramebufferTextureLayer)\r
-#define glGenFramebuffers GLEW_GET_FUN(__glewGenFramebuffers)\r
-#define glGenRenderbuffers GLEW_GET_FUN(__glewGenRenderbuffers)\r
-#define glGenerateMipmap GLEW_GET_FUN(__glewGenerateMipmap)\r
-#define glGetFramebufferAttachmentParameteriv GLEW_GET_FUN(__glewGetFramebufferAttachmentParameteriv)\r
-#define glGetRenderbufferParameteriv GLEW_GET_FUN(__glewGetRenderbufferParameteriv)\r
-#define glIsFramebuffer GLEW_GET_FUN(__glewIsFramebuffer)\r
-#define glIsRenderbuffer GLEW_GET_FUN(__glewIsRenderbuffer)\r
-#define glRenderbufferStorage GLEW_GET_FUN(__glewRenderbufferStorage)\r
-#define glRenderbufferStorageMultisample GLEW_GET_FUN(__glewRenderbufferStorageMultisample)\r
-\r
-#define GLEW_ARB_framebuffer_object GLEW_GET_VAR(__GLEW_ARB_framebuffer_object)\r
-\r
-#endif /* GL_ARB_framebuffer_object */\r
-\r
-/* ------------------------ GL_ARB_framebuffer_sRGB ------------------------ */\r
-\r
-#ifndef GL_ARB_framebuffer_sRGB\r
-#define GL_ARB_framebuffer_sRGB 1\r
-\r
-#define GL_FRAMEBUFFER_SRGB 0x8DB9\r
-\r
-#define GLEW_ARB_framebuffer_sRGB GLEW_GET_VAR(__GLEW_ARB_framebuffer_sRGB)\r
-\r
-#endif /* GL_ARB_framebuffer_sRGB */\r
-\r
-/* ------------------------ GL_ARB_geometry_shader4 ------------------------ */\r
-\r
-#ifndef GL_ARB_geometry_shader4\r
-#define GL_ARB_geometry_shader4 1\r
-\r
-#define GL_LINES_ADJACENCY_ARB 0xA\r
-#define GL_LINE_STRIP_ADJACENCY_ARB 0xB\r
-#define GL_TRIANGLES_ADJACENCY_ARB 0xC\r
-#define GL_TRIANGLE_STRIP_ADJACENCY_ARB 0xD\r
-#define GL_PROGRAM_POINT_SIZE_ARB 0x8642\r
-#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB 0x8C29\r
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4\r
-#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB 0x8DA7\r
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB 0x8DA8\r
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB 0x8DA9\r
-#define GL_GEOMETRY_SHADER_ARB 0x8DD9\r
-#define GL_GEOMETRY_VERTICES_OUT_ARB 0x8DDA\r
-#define GL_GEOMETRY_INPUT_TYPE_ARB 0x8DDB\r
-#define GL_GEOMETRY_OUTPUT_TYPE_ARB 0x8DDC\r
-#define GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB 0x8DDD\r
-#define GL_MAX_VERTEX_VARYING_COMPONENTS_ARB 0x8DDE\r
-#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB 0x8DDF\r
-#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB 0x8DE0\r
-#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB 0x8DE1\r
-\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREFACEARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYERARBPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIARBPROC) (GLuint program, GLenum pname, GLint value);\r
-\r
-#define glFramebufferTextureARB GLEW_GET_FUN(__glewFramebufferTextureARB)\r
-#define glFramebufferTextureFaceARB GLEW_GET_FUN(__glewFramebufferTextureFaceARB)\r
-#define glFramebufferTextureLayerARB GLEW_GET_FUN(__glewFramebufferTextureLayerARB)\r
-#define glProgramParameteriARB GLEW_GET_FUN(__glewProgramParameteriARB)\r
-\r
-#define GLEW_ARB_geometry_shader4 GLEW_GET_VAR(__GLEW_ARB_geometry_shader4)\r
-\r
-#endif /* GL_ARB_geometry_shader4 */\r
-\r
-/* ----------------------- GL_ARB_get_program_binary ----------------------- */\r
-\r
-#ifndef GL_ARB_get_program_binary\r
-#define GL_ARB_get_program_binary 1\r
-\r
-#define GL_PROGRAM_BINARY_RETRIEVABLE_HINT 0x8257\r
-#define GL_PROGRAM_BINARY_LENGTH 0x8741\r
-#define GL_NUM_PROGRAM_BINARY_FORMATS 0x87FE\r
-#define GL_PROGRAM_BINARY_FORMATS 0x87FF\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMBINARYPROC) (GLuint program, GLsizei bufSize, GLsizei* length, GLenum *binaryFormat, GLvoid*binary);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMBINARYPROC) (GLuint program, GLenum binaryFormat, const void* binary, GLsizei length);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIPROC) (GLuint program, GLenum pname, GLint value);\r
-\r
-#define glGetProgramBinary GLEW_GET_FUN(__glewGetProgramBinary)\r
-#define glProgramBinary GLEW_GET_FUN(__glewProgramBinary)\r
-#define glProgramParameteri GLEW_GET_FUN(__glewProgramParameteri)\r
-\r
-#define GLEW_ARB_get_program_binary GLEW_GET_VAR(__GLEW_ARB_get_program_binary)\r
-\r
-#endif /* GL_ARB_get_program_binary */\r
-\r
-/* --------------------------- GL_ARB_gpu_shader5 -------------------------- */\r
-\r
-#ifndef GL_ARB_gpu_shader5\r
-#define GL_ARB_gpu_shader5 1\r
-\r
-#define GL_GEOMETRY_SHADER_INVOCATIONS 0x887F\r
-#define GL_MAX_GEOMETRY_SHADER_INVOCATIONS 0x8E5A\r
-#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET 0x8E5B\r
-#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET 0x8E5C\r
-#define GL_FRAGMENT_INTERPOLATION_OFFSET_BITS 0x8E5D\r
-#define GL_MAX_VERTEX_STREAMS 0x8E71\r
-\r
-#define GLEW_ARB_gpu_shader5 GLEW_GET_VAR(__GLEW_ARB_gpu_shader5)\r
-\r
-#endif /* GL_ARB_gpu_shader5 */\r
-\r
-/* ------------------------- GL_ARB_gpu_shader_fp64 ------------------------ */\r
-\r
-#ifndef GL_ARB_gpu_shader_fp64\r
-#define GL_ARB_gpu_shader_fp64 1\r
-\r
-#define GL_DOUBLE_MAT2 0x8F46\r
-#define GL_DOUBLE_MAT3 0x8F47\r
-#define GL_DOUBLE_MAT4 0x8F48\r
-#define GL_DOUBLE_MAT2x3 0x8F49\r
-#define GL_DOUBLE_MAT2x4 0x8F4A\r
-#define GL_DOUBLE_MAT3x2 0x8F4B\r
-#define GL_DOUBLE_MAT3x4 0x8F4C\r
-#define GL_DOUBLE_MAT4x2 0x8F4D\r
-#define GL_DOUBLE_MAT4x3 0x8F4E\r
-#define GL_DOUBLE_VEC2 0x8FFC\r
-#define GL_DOUBLE_VEC3 0x8FFD\r
-#define GL_DOUBLE_VEC4 0x8FFE\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMDVPROC) (GLuint program, GLint location, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1DEXTPROC) (GLuint program, GLint location, GLdouble x);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1DVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2DEXTPROC) (GLuint program, GLint location, GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2DVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3DEXTPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3DVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4DEXTPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4DVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3DVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1DPROC) (GLint location, GLdouble x);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1DVPROC) (GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2DPROC) (GLint location, GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2DVPROC) (GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3DVPROC) (GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4DPROC) (GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4DVPROC) (GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3X4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X2DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4X3DVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-\r
-#define glGetUniformdv GLEW_GET_FUN(__glewGetUniformdv)\r
-#define glProgramUniform1dEXT GLEW_GET_FUN(__glewProgramUniform1dEXT)\r
-#define glProgramUniform1dvEXT GLEW_GET_FUN(__glewProgramUniform1dvEXT)\r
-#define glProgramUniform2dEXT GLEW_GET_FUN(__glewProgramUniform2dEXT)\r
-#define glProgramUniform2dvEXT GLEW_GET_FUN(__glewProgramUniform2dvEXT)\r
-#define glProgramUniform3dEXT GLEW_GET_FUN(__glewProgramUniform3dEXT)\r
-#define glProgramUniform3dvEXT GLEW_GET_FUN(__glewProgramUniform3dvEXT)\r
-#define glProgramUniform4dEXT GLEW_GET_FUN(__glewProgramUniform4dEXT)\r
-#define glProgramUniform4dvEXT GLEW_GET_FUN(__glewProgramUniform4dvEXT)\r
-#define glProgramUniformMatrix2dvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2dvEXT)\r
-#define glProgramUniformMatrix2x3dvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x3dvEXT)\r
-#define glProgramUniformMatrix2x4dvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x4dvEXT)\r
-#define glProgramUniformMatrix3dvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3dvEXT)\r
-#define glProgramUniformMatrix3x2dvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x2dvEXT)\r
-#define glProgramUniformMatrix3x4dvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x4dvEXT)\r
-#define glProgramUniformMatrix4dvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4dvEXT)\r
-#define glProgramUniformMatrix4x2dvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x2dvEXT)\r
-#define glProgramUniformMatrix4x3dvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x3dvEXT)\r
-#define glUniform1d GLEW_GET_FUN(__glewUniform1d)\r
-#define glUniform1dv GLEW_GET_FUN(__glewUniform1dv)\r
-#define glUniform2d GLEW_GET_FUN(__glewUniform2d)\r
-#define glUniform2dv GLEW_GET_FUN(__glewUniform2dv)\r
-#define glUniform3d GLEW_GET_FUN(__glewUniform3d)\r
-#define glUniform3dv GLEW_GET_FUN(__glewUniform3dv)\r
-#define glUniform4d GLEW_GET_FUN(__glewUniform4d)\r
-#define glUniform4dv GLEW_GET_FUN(__glewUniform4dv)\r
-#define glUniformMatrix2dv GLEW_GET_FUN(__glewUniformMatrix2dv)\r
-#define glUniformMatrix2x3dv GLEW_GET_FUN(__glewUniformMatrix2x3dv)\r
-#define glUniformMatrix2x4dv GLEW_GET_FUN(__glewUniformMatrix2x4dv)\r
-#define glUniformMatrix3dv GLEW_GET_FUN(__glewUniformMatrix3dv)\r
-#define glUniformMatrix3x2dv GLEW_GET_FUN(__glewUniformMatrix3x2dv)\r
-#define glUniformMatrix3x4dv GLEW_GET_FUN(__glewUniformMatrix3x4dv)\r
-#define glUniformMatrix4dv GLEW_GET_FUN(__glewUniformMatrix4dv)\r
-#define glUniformMatrix4x2dv GLEW_GET_FUN(__glewUniformMatrix4x2dv)\r
-#define glUniformMatrix4x3dv GLEW_GET_FUN(__glewUniformMatrix4x3dv)\r
-\r
-#define GLEW_ARB_gpu_shader_fp64 GLEW_GET_VAR(__GLEW_ARB_gpu_shader_fp64)\r
-\r
-#endif /* GL_ARB_gpu_shader_fp64 */\r
-\r
-/* ------------------------ GL_ARB_half_float_pixel ------------------------ */\r
-\r
-#ifndef GL_ARB_half_float_pixel\r
-#define GL_ARB_half_float_pixel 1\r
-\r
-#define GL_HALF_FLOAT_ARB 0x140B\r
-\r
-#define GLEW_ARB_half_float_pixel GLEW_GET_VAR(__GLEW_ARB_half_float_pixel)\r
-\r
-#endif /* GL_ARB_half_float_pixel */\r
-\r
-/* ------------------------ GL_ARB_half_float_vertex ----------------------- */\r
-\r
-#ifndef GL_ARB_half_float_vertex\r
-#define GL_ARB_half_float_vertex 1\r
-\r
-#define GL_HALF_FLOAT 0x140B\r
-\r
-#define GLEW_ARB_half_float_vertex GLEW_GET_VAR(__GLEW_ARB_half_float_vertex)\r
-\r
-#endif /* GL_ARB_half_float_vertex */\r
-\r
-/* ----------------------------- GL_ARB_imaging ---------------------------- */\r
-\r
-#ifndef GL_ARB_imaging\r
-#define GL_ARB_imaging 1\r
-\r
-#define GL_CONSTANT_COLOR 0x8001\r
-#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002\r
-#define GL_CONSTANT_ALPHA 0x8003\r
-#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004\r
-#define GL_BLEND_COLOR 0x8005\r
-#define GL_FUNC_ADD 0x8006\r
-#define GL_MIN 0x8007\r
-#define GL_MAX 0x8008\r
-#define GL_BLEND_EQUATION 0x8009\r
-#define GL_FUNC_SUBTRACT 0x800A\r
-#define GL_FUNC_REVERSE_SUBTRACT 0x800B\r
-#define GL_CONVOLUTION_1D 0x8010\r
-#define GL_CONVOLUTION_2D 0x8011\r
-#define GL_SEPARABLE_2D 0x8012\r
-#define GL_CONVOLUTION_BORDER_MODE 0x8013\r
-#define GL_CONVOLUTION_FILTER_SCALE 0x8014\r
-#define GL_CONVOLUTION_FILTER_BIAS 0x8015\r
-#define GL_REDUCE 0x8016\r
-#define GL_CONVOLUTION_FORMAT 0x8017\r
-#define GL_CONVOLUTION_WIDTH 0x8018\r
-#define GL_CONVOLUTION_HEIGHT 0x8019\r
-#define GL_MAX_CONVOLUTION_WIDTH 0x801A\r
-#define GL_MAX_CONVOLUTION_HEIGHT 0x801B\r
-#define GL_POST_CONVOLUTION_RED_SCALE 0x801C\r
-#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D\r
-#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E\r
-#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F\r
-#define GL_POST_CONVOLUTION_RED_BIAS 0x8020\r
-#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021\r
-#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022\r
-#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023\r
-#define GL_HISTOGRAM 0x8024\r
-#define GL_PROXY_HISTOGRAM 0x8025\r
-#define GL_HISTOGRAM_WIDTH 0x8026\r
-#define GL_HISTOGRAM_FORMAT 0x8027\r
-#define GL_HISTOGRAM_RED_SIZE 0x8028\r
-#define GL_HISTOGRAM_GREEN_SIZE 0x8029\r
-#define GL_HISTOGRAM_BLUE_SIZE 0x802A\r
-#define GL_HISTOGRAM_ALPHA_SIZE 0x802B\r
-#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C\r
-#define GL_HISTOGRAM_SINK 0x802D\r
-#define GL_MINMAX 0x802E\r
-#define GL_MINMAX_FORMAT 0x802F\r
-#define GL_MINMAX_SINK 0x8030\r
-#define GL_TABLE_TOO_LARGE 0x8031\r
-#define GL_COLOR_MATRIX 0x80B1\r
-#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2\r
-#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3\r
-#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4\r
-#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5\r
-#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6\r
-#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7\r
-#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8\r
-#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9\r
-#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA\r
-#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB\r
-#define GL_COLOR_TABLE 0x80D0\r
-#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1\r
-#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2\r
-#define GL_PROXY_COLOR_TABLE 0x80D3\r
-#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4\r
-#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5\r
-#define GL_COLOR_TABLE_SCALE 0x80D6\r
-#define GL_COLOR_TABLE_BIAS 0x80D7\r
-#define GL_COLOR_TABLE_FORMAT 0x80D8\r
-#define GL_COLOR_TABLE_WIDTH 0x80D9\r
-#define GL_COLOR_TABLE_RED_SIZE 0x80DA\r
-#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB\r
-#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC\r
-#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD\r
-#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE\r
-#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF\r
-#define GL_IGNORE_BORDER 0x8150\r
-#define GL_CONSTANT_BORDER 0x8151\r
-#define GL_WRAP_BORDER 0x8152\r
-#define GL_REPLICATE_BORDER 0x8153\r
-#define GL_CONVOLUTION_BORDER_COLOR 0x8154\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid *data);\r
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *table);\r
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);\r
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid *image);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *image);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFPROC) (GLenum target, GLenum pname, GLfloat params);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, const GLfloat *params);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIPROC) (GLenum target, GLenum pname, GLint params);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, const GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLCOPYCOLORSUBTABLEPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLCOPYCOLORTABLEPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPROC) (GLenum target, GLenum format, GLenum type, GLvoid *table);\r
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);\r
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *image);\r
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);\r
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid *values);\r
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);\r
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPROC) (GLenum target, GLboolean reset, GLenum format, GLenum types, GLvoid *values);\r
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERFVPROC) (GLenum target, GLenum pname, GLfloat *params);\r
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERIVPROC) (GLenum target, GLenum pname, GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLGETSEPARABLEFILTERPROC) (GLenum target, GLenum format, GLenum type, GLvoid *row, GLvoid *column, GLvoid *span);\r
-typedef void (GLAPIENTRY * PFNGLHISTOGRAMPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);\r
-typedef void (GLAPIENTRY * PFNGLMINMAXPROC) (GLenum target, GLenum internalformat, GLboolean sink);\r
-typedef void (GLAPIENTRY * PFNGLRESETHISTOGRAMPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLRESETMINMAXPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLSEPARABLEFILTER2DPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *row, const GLvoid *column);\r
-\r
-#define glColorSubTable GLEW_GET_FUN(__glewColorSubTable)\r
-#define glColorTable GLEW_GET_FUN(__glewColorTable)\r
-#define glColorTableParameterfv GLEW_GET_FUN(__glewColorTableParameterfv)\r
-#define glColorTableParameteriv GLEW_GET_FUN(__glewColorTableParameteriv)\r
-#define glConvolutionFilter1D GLEW_GET_FUN(__glewConvolutionFilter1D)\r
-#define glConvolutionFilter2D GLEW_GET_FUN(__glewConvolutionFilter2D)\r
-#define glConvolutionParameterf GLEW_GET_FUN(__glewConvolutionParameterf)\r
-#define glConvolutionParameterfv GLEW_GET_FUN(__glewConvolutionParameterfv)\r
-#define glConvolutionParameteri GLEW_GET_FUN(__glewConvolutionParameteri)\r
-#define glConvolutionParameteriv GLEW_GET_FUN(__glewConvolutionParameteriv)\r
-#define glCopyColorSubTable GLEW_GET_FUN(__glewCopyColorSubTable)\r
-#define glCopyColorTable GLEW_GET_FUN(__glewCopyColorTable)\r
-#define glCopyConvolutionFilter1D GLEW_GET_FUN(__glewCopyConvolutionFilter1D)\r
-#define glCopyConvolutionFilter2D GLEW_GET_FUN(__glewCopyConvolutionFilter2D)\r
-#define glGetColorTable GLEW_GET_FUN(__glewGetColorTable)\r
-#define glGetColorTableParameterfv GLEW_GET_FUN(__glewGetColorTableParameterfv)\r
-#define glGetColorTableParameteriv GLEW_GET_FUN(__glewGetColorTableParameteriv)\r
-#define glGetConvolutionFilter GLEW_GET_FUN(__glewGetConvolutionFilter)\r
-#define glGetConvolutionParameterfv GLEW_GET_FUN(__glewGetConvolutionParameterfv)\r
-#define glGetConvolutionParameteriv GLEW_GET_FUN(__glewGetConvolutionParameteriv)\r
-#define glGetHistogram GLEW_GET_FUN(__glewGetHistogram)\r
-#define glGetHistogramParameterfv GLEW_GET_FUN(__glewGetHistogramParameterfv)\r
-#define glGetHistogramParameteriv GLEW_GET_FUN(__glewGetHistogramParameteriv)\r
-#define glGetMinmax GLEW_GET_FUN(__glewGetMinmax)\r
-#define glGetMinmaxParameterfv GLEW_GET_FUN(__glewGetMinmaxParameterfv)\r
-#define glGetMinmaxParameteriv GLEW_GET_FUN(__glewGetMinmaxParameteriv)\r
-#define glGetSeparableFilter GLEW_GET_FUN(__glewGetSeparableFilter)\r
-#define glHistogram GLEW_GET_FUN(__glewHistogram)\r
-#define glMinmax GLEW_GET_FUN(__glewMinmax)\r
-#define glResetHistogram GLEW_GET_FUN(__glewResetHistogram)\r
-#define glResetMinmax GLEW_GET_FUN(__glewResetMinmax)\r
-#define glSeparableFilter2D GLEW_GET_FUN(__glewSeparableFilter2D)\r
-\r
-#define GLEW_ARB_imaging GLEW_GET_VAR(__GLEW_ARB_imaging)\r
-\r
-#endif /* GL_ARB_imaging */\r
-\r
-/* ------------------------ GL_ARB_instanced_arrays ------------------------ */\r
-\r
-#ifndef GL_ARB_instanced_arrays\r
-#define GL_ARB_instanced_arrays 1\r
-\r
-#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB 0x88FE\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDARBPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDARBPROC) (GLenum mode, GLsizei count, GLenum type, const void* indices, GLsizei primcount);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBDIVISORARBPROC) (GLuint index, GLuint divisor);\r
-\r
-#define glDrawArraysInstancedARB GLEW_GET_FUN(__glewDrawArraysInstancedARB)\r
-#define glDrawElementsInstancedARB GLEW_GET_FUN(__glewDrawElementsInstancedARB)\r
-#define glVertexAttribDivisorARB GLEW_GET_FUN(__glewVertexAttribDivisorARB)\r
-\r
-#define GLEW_ARB_instanced_arrays GLEW_GET_VAR(__GLEW_ARB_instanced_arrays)\r
-\r
-#endif /* GL_ARB_instanced_arrays */\r
-\r
-/* ---------------------- GL_ARB_internalformat_query ---------------------- */\r
-\r
-#ifndef GL_ARB_internalformat_query\r
-#define GL_ARB_internalformat_query 1\r
-\r
-#define GL_NUM_SAMPLE_COUNTS 0x9380\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETINTERNALFORMATIVPROC) (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params);\r
-\r
-#define glGetInternalformativ GLEW_GET_FUN(__glewGetInternalformativ)\r
-\r
-#define GLEW_ARB_internalformat_query GLEW_GET_VAR(__GLEW_ARB_internalformat_query)\r
-\r
-#endif /* GL_ARB_internalformat_query */\r
-\r
-/* ---------------------- GL_ARB_map_buffer_alignment ---------------------- */\r
-\r
-#ifndef GL_ARB_map_buffer_alignment\r
-#define GL_ARB_map_buffer_alignment 1\r
-\r
-#define GL_MIN_MAP_BUFFER_ALIGNMENT 0x90BC\r
-\r
-#define GLEW_ARB_map_buffer_alignment GLEW_GET_VAR(__GLEW_ARB_map_buffer_alignment)\r
-\r
-#endif /* GL_ARB_map_buffer_alignment */\r
-\r
-/* ------------------------ GL_ARB_map_buffer_range ------------------------ */\r
-\r
-#ifndef GL_ARB_map_buffer_range\r
-#define GL_ARB_map_buffer_range 1\r
-\r
-#define GL_MAP_READ_BIT 0x0001\r
-#define GL_MAP_WRITE_BIT 0x0002\r
-#define GL_MAP_INVALIDATE_RANGE_BIT 0x0004\r
-#define GL_MAP_INVALIDATE_BUFFER_BIT 0x0008\r
-#define GL_MAP_FLUSH_EXPLICIT_BIT 0x0010\r
-#define GL_MAP_UNSYNCHRONIZED_BIT 0x0020\r
-\r
-typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length);\r
-typedef GLvoid * (GLAPIENTRY * PFNGLMAPBUFFERRANGEPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);\r
-\r
-#define glFlushMappedBufferRange GLEW_GET_FUN(__glewFlushMappedBufferRange)\r
-#define glMapBufferRange GLEW_GET_FUN(__glewMapBufferRange)\r
-\r
-#define GLEW_ARB_map_buffer_range GLEW_GET_VAR(__GLEW_ARB_map_buffer_range)\r
-\r
-#endif /* GL_ARB_map_buffer_range */\r
-\r
-/* ------------------------- GL_ARB_matrix_palette ------------------------- */\r
-\r
-#ifndef GL_ARB_matrix_palette\r
-#define GL_ARB_matrix_palette 1\r
-\r
-#define GL_MATRIX_PALETTE_ARB 0x8840\r
-#define GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB 0x8841\r
-#define GL_MAX_PALETTE_MATRICES_ARB 0x8842\r
-#define GL_CURRENT_PALETTE_MATRIX_ARB 0x8843\r
-#define GL_MATRIX_INDEX_ARRAY_ARB 0x8844\r
-#define GL_CURRENT_MATRIX_INDEX_ARB 0x8845\r
-#define GL_MATRIX_INDEX_ARRAY_SIZE_ARB 0x8846\r
-#define GL_MATRIX_INDEX_ARRAY_TYPE_ARB 0x8847\r
-#define GL_MATRIX_INDEX_ARRAY_STRIDE_ARB 0x8848\r
-#define GL_MATRIX_INDEX_ARRAY_POINTER_ARB 0x8849\r
-\r
-typedef void (GLAPIENTRY * PFNGLCURRENTPALETTEMATRIXARBPROC) (GLint index);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXINDEXPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUBVARBPROC) (GLint size, GLubyte *indices);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUIVARBPROC) (GLint size, GLuint *indices);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXINDEXUSVARBPROC) (GLint size, GLushort *indices);\r
-\r
-#define glCurrentPaletteMatrixARB GLEW_GET_FUN(__glewCurrentPaletteMatrixARB)\r
-#define glMatrixIndexPointerARB GLEW_GET_FUN(__glewMatrixIndexPointerARB)\r
-#define glMatrixIndexubvARB GLEW_GET_FUN(__glewMatrixIndexubvARB)\r
-#define glMatrixIndexuivARB GLEW_GET_FUN(__glewMatrixIndexuivARB)\r
-#define glMatrixIndexusvARB GLEW_GET_FUN(__glewMatrixIndexusvARB)\r
-\r
-#define GLEW_ARB_matrix_palette GLEW_GET_VAR(__GLEW_ARB_matrix_palette)\r
-\r
-#endif /* GL_ARB_matrix_palette */\r
-\r
-/* --------------------------- GL_ARB_multisample -------------------------- */\r
-\r
-#ifndef GL_ARB_multisample\r
-#define GL_ARB_multisample 1\r
-\r
-#define GL_MULTISAMPLE_ARB 0x809D\r
-#define GL_SAMPLE_ALPHA_TO_COVERAGE_ARB 0x809E\r
-#define GL_SAMPLE_ALPHA_TO_ONE_ARB 0x809F\r
-#define GL_SAMPLE_COVERAGE_ARB 0x80A0\r
-#define GL_SAMPLE_BUFFERS_ARB 0x80A8\r
-#define GL_SAMPLES_ARB 0x80A9\r
-#define GL_SAMPLE_COVERAGE_VALUE_ARB 0x80AA\r
-#define GL_SAMPLE_COVERAGE_INVERT_ARB 0x80AB\r
-#define GL_MULTISAMPLE_BIT_ARB 0x20000000\r
-\r
-typedef void (GLAPIENTRY * PFNGLSAMPLECOVERAGEARBPROC) (GLclampf value, GLboolean invert);\r
-\r
-#define glSampleCoverageARB GLEW_GET_FUN(__glewSampleCoverageARB)\r
-\r
-#define GLEW_ARB_multisample GLEW_GET_VAR(__GLEW_ARB_multisample)\r
-\r
-#endif /* GL_ARB_multisample */\r
-\r
-/* -------------------------- GL_ARB_multitexture -------------------------- */\r
-\r
-#ifndef GL_ARB_multitexture\r
-#define GL_ARB_multitexture 1\r
-\r
-#define GL_TEXTURE0_ARB 0x84C0\r
-#define GL_TEXTURE1_ARB 0x84C1\r
-#define GL_TEXTURE2_ARB 0x84C2\r
-#define GL_TEXTURE3_ARB 0x84C3\r
-#define GL_TEXTURE4_ARB 0x84C4\r
-#define GL_TEXTURE5_ARB 0x84C5\r
-#define GL_TEXTURE6_ARB 0x84C6\r
-#define GL_TEXTURE7_ARB 0x84C7\r
-#define GL_TEXTURE8_ARB 0x84C8\r
-#define GL_TEXTURE9_ARB 0x84C9\r
-#define GL_TEXTURE10_ARB 0x84CA\r
-#define GL_TEXTURE11_ARB 0x84CB\r
-#define GL_TEXTURE12_ARB 0x84CC\r
-#define GL_TEXTURE13_ARB 0x84CD\r
-#define GL_TEXTURE14_ARB 0x84CE\r
-#define GL_TEXTURE15_ARB 0x84CF\r
-#define GL_TEXTURE16_ARB 0x84D0\r
-#define GL_TEXTURE17_ARB 0x84D1\r
-#define GL_TEXTURE18_ARB 0x84D2\r
-#define GL_TEXTURE19_ARB 0x84D3\r
-#define GL_TEXTURE20_ARB 0x84D4\r
-#define GL_TEXTURE21_ARB 0x84D5\r
-#define GL_TEXTURE22_ARB 0x84D6\r
-#define GL_TEXTURE23_ARB 0x84D7\r
-#define GL_TEXTURE24_ARB 0x84D8\r
-#define GL_TEXTURE25_ARB 0x84D9\r
-#define GL_TEXTURE26_ARB 0x84DA\r
-#define GL_TEXTURE27_ARB 0x84DB\r
-#define GL_TEXTURE28_ARB 0x84DC\r
-#define GL_TEXTURE29_ARB 0x84DD\r
-#define GL_TEXTURE30_ARB 0x84DE\r
-#define GL_TEXTURE31_ARB 0x84DF\r
-#define GL_ACTIVE_TEXTURE_ARB 0x84E0\r
-#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1\r
-#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2\r
-\r
-typedef void (GLAPIENTRY * PFNGLACTIVETEXTUREARBPROC) (GLenum texture);\r
-typedef void (GLAPIENTRY * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v);\r
-\r
-#define glActiveTextureARB GLEW_GET_FUN(__glewActiveTextureARB)\r
-#define glClientActiveTextureARB GLEW_GET_FUN(__glewClientActiveTextureARB)\r
-#define glMultiTexCoord1dARB GLEW_GET_FUN(__glewMultiTexCoord1dARB)\r
-#define glMultiTexCoord1dvARB GLEW_GET_FUN(__glewMultiTexCoord1dvARB)\r
-#define glMultiTexCoord1fARB GLEW_GET_FUN(__glewMultiTexCoord1fARB)\r
-#define glMultiTexCoord1fvARB GLEW_GET_FUN(__glewMultiTexCoord1fvARB)\r
-#define glMultiTexCoord1iARB GLEW_GET_FUN(__glewMultiTexCoord1iARB)\r
-#define glMultiTexCoord1ivARB GLEW_GET_FUN(__glewMultiTexCoord1ivARB)\r
-#define glMultiTexCoord1sARB GLEW_GET_FUN(__glewMultiTexCoord1sARB)\r
-#define glMultiTexCoord1svARB GLEW_GET_FUN(__glewMultiTexCoord1svARB)\r
-#define glMultiTexCoord2dARB GLEW_GET_FUN(__glewMultiTexCoord2dARB)\r
-#define glMultiTexCoord2dvARB GLEW_GET_FUN(__glewMultiTexCoord2dvARB)\r
-#define glMultiTexCoord2fARB GLEW_GET_FUN(__glewMultiTexCoord2fARB)\r
-#define glMultiTexCoord2fvARB GLEW_GET_FUN(__glewMultiTexCoord2fvARB)\r
-#define glMultiTexCoord2iARB GLEW_GET_FUN(__glewMultiTexCoord2iARB)\r
-#define glMultiTexCoord2ivARB GLEW_GET_FUN(__glewMultiTexCoord2ivARB)\r
-#define glMultiTexCoord2sARB GLEW_GET_FUN(__glewMultiTexCoord2sARB)\r
-#define glMultiTexCoord2svARB GLEW_GET_FUN(__glewMultiTexCoord2svARB)\r
-#define glMultiTexCoord3dARB GLEW_GET_FUN(__glewMultiTexCoord3dARB)\r
-#define glMultiTexCoord3dvARB GLEW_GET_FUN(__glewMultiTexCoord3dvARB)\r
-#define glMultiTexCoord3fARB GLEW_GET_FUN(__glewMultiTexCoord3fARB)\r
-#define glMultiTexCoord3fvARB GLEW_GET_FUN(__glewMultiTexCoord3fvARB)\r
-#define glMultiTexCoord3iARB GLEW_GET_FUN(__glewMultiTexCoord3iARB)\r
-#define glMultiTexCoord3ivARB GLEW_GET_FUN(__glewMultiTexCoord3ivARB)\r
-#define glMultiTexCoord3sARB GLEW_GET_FUN(__glewMultiTexCoord3sARB)\r
-#define glMultiTexCoord3svARB GLEW_GET_FUN(__glewMultiTexCoord3svARB)\r
-#define glMultiTexCoord4dARB GLEW_GET_FUN(__glewMultiTexCoord4dARB)\r
-#define glMultiTexCoord4dvARB GLEW_GET_FUN(__glewMultiTexCoord4dvARB)\r
-#define glMultiTexCoord4fARB GLEW_GET_FUN(__glewMultiTexCoord4fARB)\r
-#define glMultiTexCoord4fvARB GLEW_GET_FUN(__glewMultiTexCoord4fvARB)\r
-#define glMultiTexCoord4iARB GLEW_GET_FUN(__glewMultiTexCoord4iARB)\r
-#define glMultiTexCoord4ivARB GLEW_GET_FUN(__glewMultiTexCoord4ivARB)\r
-#define glMultiTexCoord4sARB GLEW_GET_FUN(__glewMultiTexCoord4sARB)\r
-#define glMultiTexCoord4svARB GLEW_GET_FUN(__glewMultiTexCoord4svARB)\r
-\r
-#define GLEW_ARB_multitexture GLEW_GET_VAR(__GLEW_ARB_multitexture)\r
-\r
-#endif /* GL_ARB_multitexture */\r
-\r
-/* ------------------------- GL_ARB_occlusion_query ------------------------ */\r
-\r
-#ifndef GL_ARB_occlusion_query\r
-#define GL_ARB_occlusion_query 1\r
-\r
-#define GL_QUERY_COUNTER_BITS_ARB 0x8864\r
-#define GL_CURRENT_QUERY_ARB 0x8865\r
-#define GL_QUERY_RESULT_ARB 0x8866\r
-#define GL_QUERY_RESULT_AVAILABLE_ARB 0x8867\r
-#define GL_SAMPLES_PASSED_ARB 0x8914\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINQUERYARBPROC) (GLenum target, GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLDELETEQUERIESARBPROC) (GLsizei n, const GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLENDQUERYARBPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLGENQUERIESARBPROC) (GLsizei n, GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTIVARBPROC) (GLuint id, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUIVARBPROC) (GLuint id, GLenum pname, GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYIVARBPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISQUERYARBPROC) (GLuint id);\r
-\r
-#define glBeginQueryARB GLEW_GET_FUN(__glewBeginQueryARB)\r
-#define glDeleteQueriesARB GLEW_GET_FUN(__glewDeleteQueriesARB)\r
-#define glEndQueryARB GLEW_GET_FUN(__glewEndQueryARB)\r
-#define glGenQueriesARB GLEW_GET_FUN(__glewGenQueriesARB)\r
-#define glGetQueryObjectivARB GLEW_GET_FUN(__glewGetQueryObjectivARB)\r
-#define glGetQueryObjectuivARB GLEW_GET_FUN(__glewGetQueryObjectuivARB)\r
-#define glGetQueryivARB GLEW_GET_FUN(__glewGetQueryivARB)\r
-#define glIsQueryARB GLEW_GET_FUN(__glewIsQueryARB)\r
-\r
-#define GLEW_ARB_occlusion_query GLEW_GET_VAR(__GLEW_ARB_occlusion_query)\r
-\r
-#endif /* GL_ARB_occlusion_query */\r
-\r
-/* ------------------------ GL_ARB_occlusion_query2 ------------------------ */\r
-\r
-#ifndef GL_ARB_occlusion_query2\r
-#define GL_ARB_occlusion_query2 1\r
-\r
-#define GL_ANY_SAMPLES_PASSED 0x8C2F\r
-\r
-#define GLEW_ARB_occlusion_query2 GLEW_GET_VAR(__GLEW_ARB_occlusion_query2)\r
-\r
-#endif /* GL_ARB_occlusion_query2 */\r
-\r
-/* ----------------------- GL_ARB_pixel_buffer_object ---------------------- */\r
-\r
-#ifndef GL_ARB_pixel_buffer_object\r
-#define GL_ARB_pixel_buffer_object 1\r
-\r
-#define GL_PIXEL_PACK_BUFFER_ARB 0x88EB\r
-#define GL_PIXEL_UNPACK_BUFFER_ARB 0x88EC\r
-#define GL_PIXEL_PACK_BUFFER_BINDING_ARB 0x88ED\r
-#define GL_PIXEL_UNPACK_BUFFER_BINDING_ARB 0x88EF\r
-\r
-#define GLEW_ARB_pixel_buffer_object GLEW_GET_VAR(__GLEW_ARB_pixel_buffer_object)\r
-\r
-#endif /* GL_ARB_pixel_buffer_object */\r
-\r
-/* ------------------------ GL_ARB_point_parameters ------------------------ */\r
-\r
-#ifndef GL_ARB_point_parameters\r
-#define GL_ARB_point_parameters 1\r
-\r
-#define GL_POINT_SIZE_MIN_ARB 0x8126\r
-#define GL_POINT_SIZE_MAX_ARB 0x8127\r
-#define GL_POINT_FADE_THRESHOLD_SIZE_ARB 0x8128\r
-#define GL_POINT_DISTANCE_ATTENUATION_ARB 0x8129\r
-\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFARBPROC) (GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVARBPROC) (GLenum pname, const GLfloat* params);\r
-\r
-#define glPointParameterfARB GLEW_GET_FUN(__glewPointParameterfARB)\r
-#define glPointParameterfvARB GLEW_GET_FUN(__glewPointParameterfvARB)\r
-\r
-#define GLEW_ARB_point_parameters GLEW_GET_VAR(__GLEW_ARB_point_parameters)\r
-\r
-#endif /* GL_ARB_point_parameters */\r
-\r
-/* -------------------------- GL_ARB_point_sprite -------------------------- */\r
-\r
-#ifndef GL_ARB_point_sprite\r
-#define GL_ARB_point_sprite 1\r
-\r
-#define GL_POINT_SPRITE_ARB 0x8861\r
-#define GL_COORD_REPLACE_ARB 0x8862\r
-\r
-#define GLEW_ARB_point_sprite GLEW_GET_VAR(__GLEW_ARB_point_sprite)\r
-\r
-#endif /* GL_ARB_point_sprite */\r
-\r
-/* ------------------------ GL_ARB_provoking_vertex ------------------------ */\r
-\r
-#ifndef GL_ARB_provoking_vertex\r
-#define GL_ARB_provoking_vertex 1\r
-\r
-#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8E4C\r
-#define GL_FIRST_VERTEX_CONVENTION 0x8E4D\r
-#define GL_LAST_VERTEX_CONVENTION 0x8E4E\r
-#define GL_PROVOKING_VERTEX 0x8E4F\r
-\r
-typedef void (GLAPIENTRY * PFNGLPROVOKINGVERTEXPROC) (GLenum mode);\r
-\r
-#define glProvokingVertex GLEW_GET_FUN(__glewProvokingVertex)\r
-\r
-#define GLEW_ARB_provoking_vertex GLEW_GET_VAR(__GLEW_ARB_provoking_vertex)\r
-\r
-#endif /* GL_ARB_provoking_vertex */\r
-\r
-/* --------------------------- GL_ARB_robustness --------------------------- */\r
-\r
-#ifndef GL_ARB_robustness\r
-#define GL_ARB_robustness 1\r
-\r
-#define GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB 0x00000004\r
-#define GL_LOSE_CONTEXT_ON_RESET_ARB 0x8252\r
-#define GL_GUILTY_CONTEXT_RESET_ARB 0x8253\r
-#define GL_INNOCENT_CONTEXT_RESET_ARB 0x8254\r
-#define GL_UNKNOWN_CONTEXT_RESET_ARB 0x8255\r
-#define GL_RESET_NOTIFICATION_STRATEGY_ARB 0x8256\r
-#define GL_NO_RESET_NOTIFICATION_ARB 0x8261\r
-\r
-typedef GLenum (GLAPIENTRY * PFNGLGETGRAPHICSRESETSTATUSARBPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLGETNCOLORTABLEARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* table);\r
-typedef void (GLAPIENTRY * PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint lod, GLsizei bufSize, void* img);\r
-typedef void (GLAPIENTRY * PFNGLGETNCONVOLUTIONFILTERARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei bufSize, void* image);\r
-typedef void (GLAPIENTRY * PFNGLGETNHISTOGRAMARBPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values);\r
-typedef void (GLAPIENTRY * PFNGLGETNMAPDVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLGETNMAPFVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLGETNMAPIVARBPROC) (GLenum target, GLenum query, GLsizei bufSize, GLint* v);\r
-typedef void (GLAPIENTRY * PFNGLGETNMINMAXARBPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, GLsizei bufSize, void* values);\r
-typedef void (GLAPIENTRY * PFNGLGETNPIXELMAPFVARBPROC) (GLenum map, GLsizei bufSize, GLfloat* values);\r
-typedef void (GLAPIENTRY * PFNGLGETNPIXELMAPUIVARBPROC) (GLenum map, GLsizei bufSize, GLuint* values);\r
-typedef void (GLAPIENTRY * PFNGLGETNPIXELMAPUSVARBPROC) (GLenum map, GLsizei bufSize, GLushort* values);\r
-typedef void (GLAPIENTRY * PFNGLGETNPOLYGONSTIPPLEARBPROC) (GLsizei bufSize, GLubyte* pattern);\r
-typedef void (GLAPIENTRY * PFNGLGETNSEPARABLEFILTERARBPROC) (GLenum target, GLenum format, GLenum type, GLsizei rowBufSize, void* row, GLsizei columnBufSize, GLvoid*column, GLvoid*span);\r
-typedef void (GLAPIENTRY * PFNGLGETNTEXIMAGEARBPROC) (GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void* img);\r
-typedef void (GLAPIENTRY * PFNGLGETNUNIFORMDVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNUNIFORMFVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNUNIFORMIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNUNIFORMUIVARBPROC) (GLuint program, GLint location, GLsizei bufSize, GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLREADNPIXELSARBPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void* data);\r
-\r
-#define glGetGraphicsResetStatusARB GLEW_GET_FUN(__glewGetGraphicsResetStatusARB)\r
-#define glGetnColorTableARB GLEW_GET_FUN(__glewGetnColorTableARB)\r
-#define glGetnCompressedTexImageARB GLEW_GET_FUN(__glewGetnCompressedTexImageARB)\r
-#define glGetnConvolutionFilterARB GLEW_GET_FUN(__glewGetnConvolutionFilterARB)\r
-#define glGetnHistogramARB GLEW_GET_FUN(__glewGetnHistogramARB)\r
-#define glGetnMapdvARB GLEW_GET_FUN(__glewGetnMapdvARB)\r
-#define glGetnMapfvARB GLEW_GET_FUN(__glewGetnMapfvARB)\r
-#define glGetnMapivARB GLEW_GET_FUN(__glewGetnMapivARB)\r
-#define glGetnMinmaxARB GLEW_GET_FUN(__glewGetnMinmaxARB)\r
-#define glGetnPixelMapfvARB GLEW_GET_FUN(__glewGetnPixelMapfvARB)\r
-#define glGetnPixelMapuivARB GLEW_GET_FUN(__glewGetnPixelMapuivARB)\r
-#define glGetnPixelMapusvARB GLEW_GET_FUN(__glewGetnPixelMapusvARB)\r
-#define glGetnPolygonStippleARB GLEW_GET_FUN(__glewGetnPolygonStippleARB)\r
-#define glGetnSeparableFilterARB GLEW_GET_FUN(__glewGetnSeparableFilterARB)\r
-#define glGetnTexImageARB GLEW_GET_FUN(__glewGetnTexImageARB)\r
-#define glGetnUniformdvARB GLEW_GET_FUN(__glewGetnUniformdvARB)\r
-#define glGetnUniformfvARB GLEW_GET_FUN(__glewGetnUniformfvARB)\r
-#define glGetnUniformivARB GLEW_GET_FUN(__glewGetnUniformivARB)\r
-#define glGetnUniformuivARB GLEW_GET_FUN(__glewGetnUniformuivARB)\r
-#define glReadnPixelsARB GLEW_GET_FUN(__glewReadnPixelsARB)\r
-\r
-#define GLEW_ARB_robustness GLEW_GET_VAR(__GLEW_ARB_robustness)\r
-\r
-#endif /* GL_ARB_robustness */\r
-\r
-/* ------------------------- GL_ARB_sample_shading ------------------------- */\r
-\r
-#ifndef GL_ARB_sample_shading\r
-#define GL_ARB_sample_shading 1\r
-\r
-#define GL_SAMPLE_SHADING_ARB 0x8C36\r
-#define GL_MIN_SAMPLE_SHADING_VALUE_ARB 0x8C37\r
-\r
-typedef void (GLAPIENTRY * PFNGLMINSAMPLESHADINGARBPROC) (GLclampf value);\r
-\r
-#define glMinSampleShadingARB GLEW_GET_FUN(__glewMinSampleShadingARB)\r
-\r
-#define GLEW_ARB_sample_shading GLEW_GET_VAR(__GLEW_ARB_sample_shading)\r
-\r
-#endif /* GL_ARB_sample_shading */\r
-\r
-/* ------------------------- GL_ARB_sampler_objects ------------------------ */\r
-\r
-#ifndef GL_ARB_sampler_objects\r
-#define GL_ARB_sampler_objects 1\r
-\r
-#define GL_SAMPLER_BINDING 0x8919\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDSAMPLERPROC) (GLuint unit, GLuint sampler);\r
-typedef void (GLAPIENTRY * PFNGLDELETESAMPLERSPROC) (GLsizei count, const GLuint * samplers);\r
-typedef void (GLAPIENTRY * PFNGLGENSAMPLERSPROC) (GLsizei count, GLuint* samplers);\r
-typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISSAMPLERPROC) (GLuint sampler);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIIVPROC) (GLuint sampler, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIUIVPROC) (GLuint sampler, GLenum pname, const GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERFPROC) (GLuint sampler, GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERFVPROC) (GLuint sampler, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIPROC) (GLuint sampler, GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLERPARAMETERIVPROC) (GLuint sampler, GLenum pname, const GLint* params);\r
-\r
-#define glBindSampler GLEW_GET_FUN(__glewBindSampler)\r
-#define glDeleteSamplers GLEW_GET_FUN(__glewDeleteSamplers)\r
-#define glGenSamplers GLEW_GET_FUN(__glewGenSamplers)\r
-#define glGetSamplerParameterIiv GLEW_GET_FUN(__glewGetSamplerParameterIiv)\r
-#define glGetSamplerParameterIuiv GLEW_GET_FUN(__glewGetSamplerParameterIuiv)\r
-#define glGetSamplerParameterfv GLEW_GET_FUN(__glewGetSamplerParameterfv)\r
-#define glGetSamplerParameteriv GLEW_GET_FUN(__glewGetSamplerParameteriv)\r
-#define glIsSampler GLEW_GET_FUN(__glewIsSampler)\r
-#define glSamplerParameterIiv GLEW_GET_FUN(__glewSamplerParameterIiv)\r
-#define glSamplerParameterIuiv GLEW_GET_FUN(__glewSamplerParameterIuiv)\r
-#define glSamplerParameterf GLEW_GET_FUN(__glewSamplerParameterf)\r
-#define glSamplerParameterfv GLEW_GET_FUN(__glewSamplerParameterfv)\r
-#define glSamplerParameteri GLEW_GET_FUN(__glewSamplerParameteri)\r
-#define glSamplerParameteriv GLEW_GET_FUN(__glewSamplerParameteriv)\r
-\r
-#define GLEW_ARB_sampler_objects GLEW_GET_VAR(__GLEW_ARB_sampler_objects)\r
-\r
-#endif /* GL_ARB_sampler_objects */\r
-\r
-/* ------------------------ GL_ARB_seamless_cube_map ----------------------- */\r
-\r
-#ifndef GL_ARB_seamless_cube_map\r
-#define GL_ARB_seamless_cube_map 1\r
-\r
-#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F\r
-\r
-#define GLEW_ARB_seamless_cube_map GLEW_GET_VAR(__GLEW_ARB_seamless_cube_map)\r
-\r
-#endif /* GL_ARB_seamless_cube_map */\r
-\r
-/* --------------------- GL_ARB_separate_shader_objects -------------------- */\r
-\r
-#ifndef GL_ARB_separate_shader_objects\r
-#define GL_ARB_separate_shader_objects 1\r
-\r
-#define GL_VERTEX_SHADER_BIT 0x00000001\r
-#define GL_FRAGMENT_SHADER_BIT 0x00000002\r
-#define GL_GEOMETRY_SHADER_BIT 0x00000004\r
-#define GL_TESS_CONTROL_SHADER_BIT 0x00000008\r
-#define GL_TESS_EVALUATION_SHADER_BIT 0x00000010\r
-#define GL_PROGRAM_SEPARABLE 0x8258\r
-#define GL_ACTIVE_PROGRAM 0x8259\r
-#define GL_PROGRAM_PIPELINE_BINDING 0x825A\r
-#define GL_ALL_SHADER_BITS 0xFFFFFFFF\r
-\r
-typedef void (GLAPIENTRY * PFNGLACTIVESHADERPROGRAMPROC) (GLuint pipeline, GLuint program);\r
-typedef void (GLAPIENTRY * PFNGLBINDPROGRAMPIPELINEPROC) (GLuint pipeline);\r
-typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROGRAMVPROC) (GLenum type, GLsizei count, const char ** strings);\r
-typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMPIPELINESPROC) (GLsizei n, const GLuint* pipelines);\r
-typedef void (GLAPIENTRY * PFNGLGENPROGRAMPIPELINESPROC) (GLsizei n, GLuint* pipelines);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMPIPELINEINFOLOGPROC) (GLuint pipeline, GLsizei bufSize, GLsizei* length, char *infoLog);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMPIPELINEIVPROC) (GLuint pipeline, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMPIPELINEPROC) (GLuint pipeline);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1DPROC) (GLuint program, GLint location, GLdouble x);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FPROC) (GLuint program, GLint location, GLfloat x);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IPROC) (GLuint program, GLint location, GLint x);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIPROC) (GLuint program, GLint location, GLuint x);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FPROC) (GLuint program, GLint location, GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IPROC) (GLuint program, GLint location, GLint x, GLint y);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIPROC) (GLuint program, GLint location, GLuint x, GLuint y);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIPROC) (GLuint program, GLint location, GLuint x, GLuint y, GLuint z);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4DPROC) (GLuint program, GLint location, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4DVPROC) (GLuint program, GLint location, GLsizei count, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FVPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IVPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIPROC) (GLuint program, GLint location, GLuint x, GLuint y, GLuint z, GLuint w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIVPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLdouble* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUSEPROGRAMSTAGESPROC) (GLuint pipeline, GLbitfield stages, GLuint program);\r
-typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMPIPELINEPROC) (GLuint pipeline);\r
-\r
-#define glActiveShaderProgram GLEW_GET_FUN(__glewActiveShaderProgram)\r
-#define glBindProgramPipeline GLEW_GET_FUN(__glewBindProgramPipeline)\r
-#define glCreateShaderProgramv GLEW_GET_FUN(__glewCreateShaderProgramv)\r
-#define glDeleteProgramPipelines GLEW_GET_FUN(__glewDeleteProgramPipelines)\r
-#define glGenProgramPipelines GLEW_GET_FUN(__glewGenProgramPipelines)\r
-#define glGetProgramPipelineInfoLog GLEW_GET_FUN(__glewGetProgramPipelineInfoLog)\r
-#define glGetProgramPipelineiv GLEW_GET_FUN(__glewGetProgramPipelineiv)\r
-#define glIsProgramPipeline GLEW_GET_FUN(__glewIsProgramPipeline)\r
-#define glProgramUniform1d GLEW_GET_FUN(__glewProgramUniform1d)\r
-#define glProgramUniform1dv GLEW_GET_FUN(__glewProgramUniform1dv)\r
-#define glProgramUniform1f GLEW_GET_FUN(__glewProgramUniform1f)\r
-#define glProgramUniform1fv GLEW_GET_FUN(__glewProgramUniform1fv)\r
-#define glProgramUniform1i GLEW_GET_FUN(__glewProgramUniform1i)\r
-#define glProgramUniform1iv GLEW_GET_FUN(__glewProgramUniform1iv)\r
-#define glProgramUniform1ui GLEW_GET_FUN(__glewProgramUniform1ui)\r
-#define glProgramUniform1uiv GLEW_GET_FUN(__glewProgramUniform1uiv)\r
-#define glProgramUniform2d GLEW_GET_FUN(__glewProgramUniform2d)\r
-#define glProgramUniform2dv GLEW_GET_FUN(__glewProgramUniform2dv)\r
-#define glProgramUniform2f GLEW_GET_FUN(__glewProgramUniform2f)\r
-#define glProgramUniform2fv GLEW_GET_FUN(__glewProgramUniform2fv)\r
-#define glProgramUniform2i GLEW_GET_FUN(__glewProgramUniform2i)\r
-#define glProgramUniform2iv GLEW_GET_FUN(__glewProgramUniform2iv)\r
-#define glProgramUniform2ui GLEW_GET_FUN(__glewProgramUniform2ui)\r
-#define glProgramUniform2uiv GLEW_GET_FUN(__glewProgramUniform2uiv)\r
-#define glProgramUniform3d GLEW_GET_FUN(__glewProgramUniform3d)\r
-#define glProgramUniform3dv GLEW_GET_FUN(__glewProgramUniform3dv)\r
-#define glProgramUniform3f GLEW_GET_FUN(__glewProgramUniform3f)\r
-#define glProgramUniform3fv GLEW_GET_FUN(__glewProgramUniform3fv)\r
-#define glProgramUniform3i GLEW_GET_FUN(__glewProgramUniform3i)\r
-#define glProgramUniform3iv GLEW_GET_FUN(__glewProgramUniform3iv)\r
-#define glProgramUniform3ui GLEW_GET_FUN(__glewProgramUniform3ui)\r
-#define glProgramUniform3uiv GLEW_GET_FUN(__glewProgramUniform3uiv)\r
-#define glProgramUniform4d GLEW_GET_FUN(__glewProgramUniform4d)\r
-#define glProgramUniform4dv GLEW_GET_FUN(__glewProgramUniform4dv)\r
-#define glProgramUniform4f GLEW_GET_FUN(__glewProgramUniform4f)\r
-#define glProgramUniform4fv GLEW_GET_FUN(__glewProgramUniform4fv)\r
-#define glProgramUniform4i GLEW_GET_FUN(__glewProgramUniform4i)\r
-#define glProgramUniform4iv GLEW_GET_FUN(__glewProgramUniform4iv)\r
-#define glProgramUniform4ui GLEW_GET_FUN(__glewProgramUniform4ui)\r
-#define glProgramUniform4uiv GLEW_GET_FUN(__glewProgramUniform4uiv)\r
-#define glProgramUniformMatrix2dv GLEW_GET_FUN(__glewProgramUniformMatrix2dv)\r
-#define glProgramUniformMatrix2fv GLEW_GET_FUN(__glewProgramUniformMatrix2fv)\r
-#define glProgramUniformMatrix2x3dv GLEW_GET_FUN(__glewProgramUniformMatrix2x3dv)\r
-#define glProgramUniformMatrix2x3fv GLEW_GET_FUN(__glewProgramUniformMatrix2x3fv)\r
-#define glProgramUniformMatrix2x4dv GLEW_GET_FUN(__glewProgramUniformMatrix2x4dv)\r
-#define glProgramUniformMatrix2x4fv GLEW_GET_FUN(__glewProgramUniformMatrix2x4fv)\r
-#define glProgramUniformMatrix3dv GLEW_GET_FUN(__glewProgramUniformMatrix3dv)\r
-#define glProgramUniformMatrix3fv GLEW_GET_FUN(__glewProgramUniformMatrix3fv)\r
-#define glProgramUniformMatrix3x2dv GLEW_GET_FUN(__glewProgramUniformMatrix3x2dv)\r
-#define glProgramUniformMatrix3x2fv GLEW_GET_FUN(__glewProgramUniformMatrix3x2fv)\r
-#define glProgramUniformMatrix3x4dv GLEW_GET_FUN(__glewProgramUniformMatrix3x4dv)\r
-#define glProgramUniformMatrix3x4fv GLEW_GET_FUN(__glewProgramUniformMatrix3x4fv)\r
-#define glProgramUniformMatrix4dv GLEW_GET_FUN(__glewProgramUniformMatrix4dv)\r
-#define glProgramUniformMatrix4fv GLEW_GET_FUN(__glewProgramUniformMatrix4fv)\r
-#define glProgramUniformMatrix4x2dv GLEW_GET_FUN(__glewProgramUniformMatrix4x2dv)\r
-#define glProgramUniformMatrix4x2fv GLEW_GET_FUN(__glewProgramUniformMatrix4x2fv)\r
-#define glProgramUniformMatrix4x3dv GLEW_GET_FUN(__glewProgramUniformMatrix4x3dv)\r
-#define glProgramUniformMatrix4x3fv GLEW_GET_FUN(__glewProgramUniformMatrix4x3fv)\r
-#define glUseProgramStages GLEW_GET_FUN(__glewUseProgramStages)\r
-#define glValidateProgramPipeline GLEW_GET_FUN(__glewValidateProgramPipeline)\r
-\r
-#define GLEW_ARB_separate_shader_objects GLEW_GET_VAR(__GLEW_ARB_separate_shader_objects)\r
-\r
-#endif /* GL_ARB_separate_shader_objects */\r
-\r
-/* --------------------- GL_ARB_shader_atomic_counters --------------------- */\r
-\r
-#ifndef GL_ARB_shader_atomic_counters\r
-#define GL_ARB_shader_atomic_counters 1\r
-\r
-#define GL_ATOMIC_COUNTER_BUFFER 0x92C0\r
-#define GL_ATOMIC_COUNTER_BUFFER_BINDING 0x92C1\r
-#define GL_ATOMIC_COUNTER_BUFFER_START 0x92C2\r
-#define GL_ATOMIC_COUNTER_BUFFER_SIZE 0x92C3\r
-#define GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE 0x92C4\r
-#define GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS 0x92C5\r
-#define GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES 0x92C6\r
-#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER 0x92C7\r
-#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER 0x92C8\r
-#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER 0x92C9\r
-#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER 0x92CA\r
-#define GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER 0x92CB\r
-#define GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS 0x92CC\r
-#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS 0x92CD\r
-#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS 0x92CE\r
-#define GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS 0x92CF\r
-#define GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS 0x92D0\r
-#define GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS 0x92D1\r
-#define GL_MAX_VERTEX_ATOMIC_COUNTERS 0x92D2\r
-#define GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS 0x92D3\r
-#define GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS 0x92D4\r
-#define GL_MAX_GEOMETRY_ATOMIC_COUNTERS 0x92D5\r
-#define GL_MAX_FRAGMENT_ATOMIC_COUNTERS 0x92D6\r
-#define GL_MAX_COMBINED_ATOMIC_COUNTERS 0x92D7\r
-#define GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE 0x92D8\r
-#define GL_ACTIVE_ATOMIC_COUNTER_BUFFERS 0x92D9\r
-#define GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX 0x92DA\r
-#define GL_UNSIGNED_INT_ATOMIC_COUNTER 0x92DB\r
-#define GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS 0x92DC\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC) (GLuint program, GLuint bufferIndex, GLenum pname, GLint* params);\r
-\r
-#define glGetActiveAtomicCounterBufferiv GLEW_GET_FUN(__glewGetActiveAtomicCounterBufferiv)\r
-\r
-#define GLEW_ARB_shader_atomic_counters GLEW_GET_VAR(__GLEW_ARB_shader_atomic_counters)\r
-\r
-#endif /* GL_ARB_shader_atomic_counters */\r
-\r
-/* ----------------------- GL_ARB_shader_bit_encoding ---------------------- */\r
-\r
-#ifndef GL_ARB_shader_bit_encoding\r
-#define GL_ARB_shader_bit_encoding 1\r
-\r
-#define GLEW_ARB_shader_bit_encoding GLEW_GET_VAR(__GLEW_ARB_shader_bit_encoding)\r
-\r
-#endif /* GL_ARB_shader_bit_encoding */\r
-\r
-/* --------------------- GL_ARB_shader_image_load_store -------------------- */\r
-\r
-#ifndef GL_ARB_shader_image_load_store\r
-#define GL_ARB_shader_image_load_store 1\r
-\r
-#define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT 0x00000001\r
-#define GL_ELEMENT_ARRAY_BARRIER_BIT 0x00000002\r
-#define GL_UNIFORM_BARRIER_BIT 0x00000004\r
-#define GL_TEXTURE_FETCH_BARRIER_BIT 0x00000008\r
-#define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT 0x00000020\r
-#define GL_COMMAND_BARRIER_BIT 0x00000040\r
-#define GL_PIXEL_BUFFER_BARRIER_BIT 0x00000080\r
-#define GL_TEXTURE_UPDATE_BARRIER_BIT 0x00000100\r
-#define GL_BUFFER_UPDATE_BARRIER_BIT 0x00000200\r
-#define GL_FRAMEBUFFER_BARRIER_BIT 0x00000400\r
-#define GL_TRANSFORM_FEEDBACK_BARRIER_BIT 0x00000800\r
-#define GL_ATOMIC_COUNTER_BARRIER_BIT 0x00001000\r
-#define GL_MAX_IMAGE_UNITS 0x8F38\r
-#define GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS 0x8F39\r
-#define GL_IMAGE_BINDING_NAME 0x8F3A\r
-#define GL_IMAGE_BINDING_LEVEL 0x8F3B\r
-#define GL_IMAGE_BINDING_LAYERED 0x8F3C\r
-#define GL_IMAGE_BINDING_LAYER 0x8F3D\r
-#define GL_IMAGE_BINDING_ACCESS 0x8F3E\r
-#define GL_IMAGE_1D 0x904C\r
-#define GL_IMAGE_2D 0x904D\r
-#define GL_IMAGE_3D 0x904E\r
-#define GL_IMAGE_2D_RECT 0x904F\r
-#define GL_IMAGE_CUBE 0x9050\r
-#define GL_IMAGE_BUFFER 0x9051\r
-#define GL_IMAGE_1D_ARRAY 0x9052\r
-#define GL_IMAGE_2D_ARRAY 0x9053\r
-#define GL_IMAGE_CUBE_MAP_ARRAY 0x9054\r
-#define GL_IMAGE_2D_MULTISAMPLE 0x9055\r
-#define GL_IMAGE_2D_MULTISAMPLE_ARRAY 0x9056\r
-#define GL_INT_IMAGE_1D 0x9057\r
-#define GL_INT_IMAGE_2D 0x9058\r
-#define GL_INT_IMAGE_3D 0x9059\r
-#define GL_INT_IMAGE_2D_RECT 0x905A\r
-#define GL_INT_IMAGE_CUBE 0x905B\r
-#define GL_INT_IMAGE_BUFFER 0x905C\r
-#define GL_INT_IMAGE_1D_ARRAY 0x905D\r
-#define GL_INT_IMAGE_2D_ARRAY 0x905E\r
-#define GL_INT_IMAGE_CUBE_MAP_ARRAY 0x905F\r
-#define GL_INT_IMAGE_2D_MULTISAMPLE 0x9060\r
-#define GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY 0x9061\r
-#define GL_UNSIGNED_INT_IMAGE_1D 0x9062\r
-#define GL_UNSIGNED_INT_IMAGE_2D 0x9063\r
-#define GL_UNSIGNED_INT_IMAGE_3D 0x9064\r
-#define GL_UNSIGNED_INT_IMAGE_2D_RECT 0x9065\r
-#define GL_UNSIGNED_INT_IMAGE_CUBE 0x9066\r
-#define GL_UNSIGNED_INT_IMAGE_BUFFER 0x9067\r
-#define GL_UNSIGNED_INT_IMAGE_1D_ARRAY 0x9068\r
-#define GL_UNSIGNED_INT_IMAGE_2D_ARRAY 0x9069\r
-#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY 0x906A\r
-#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE 0x906B\r
-#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY 0x906C\r
-#define GL_MAX_IMAGE_SAMPLES 0x906D\r
-#define GL_IMAGE_BINDING_FORMAT 0x906E\r
-#define GL_IMAGE_FORMAT_COMPATIBILITY_TYPE 0x90C7\r
-#define GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE 0x90C8\r
-#define GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS 0x90C9\r
-#define GL_MAX_VERTEX_IMAGE_UNIFORMS 0x90CA\r
-#define GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS 0x90CB\r
-#define GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS 0x90CC\r
-#define GL_MAX_GEOMETRY_IMAGE_UNIFORMS 0x90CD\r
-#define GL_MAX_FRAGMENT_IMAGE_UNIFORMS 0x90CE\r
-#define GL_MAX_COMBINED_IMAGE_UNIFORMS 0x90CF\r
-#define GL_ALL_BARRIER_BITS 0xFFFFFFFF\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDIMAGETEXTUREPROC) (GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);\r
-typedef void (GLAPIENTRY * PFNGLMEMORYBARRIERPROC) (GLbitfield barriers);\r
-\r
-#define glBindImageTexture GLEW_GET_FUN(__glewBindImageTexture)\r
-#define glMemoryBarrier GLEW_GET_FUN(__glewMemoryBarrier)\r
-\r
-#define GLEW_ARB_shader_image_load_store GLEW_GET_VAR(__GLEW_ARB_shader_image_load_store)\r
-\r
-#endif /* GL_ARB_shader_image_load_store */\r
-\r
-/* ------------------------- GL_ARB_shader_objects ------------------------- */\r
-\r
-#ifndef GL_ARB_shader_objects\r
-#define GL_ARB_shader_objects 1\r
-\r
-#define GL_PROGRAM_OBJECT_ARB 0x8B40\r
-#define GL_SHADER_OBJECT_ARB 0x8B48\r
-#define GL_OBJECT_TYPE_ARB 0x8B4E\r
-#define GL_OBJECT_SUBTYPE_ARB 0x8B4F\r
-#define GL_FLOAT_VEC2_ARB 0x8B50\r
-#define GL_FLOAT_VEC3_ARB 0x8B51\r
-#define GL_FLOAT_VEC4_ARB 0x8B52\r
-#define GL_INT_VEC2_ARB 0x8B53\r
-#define GL_INT_VEC3_ARB 0x8B54\r
-#define GL_INT_VEC4_ARB 0x8B55\r
-#define GL_BOOL_ARB 0x8B56\r
-#define GL_BOOL_VEC2_ARB 0x8B57\r
-#define GL_BOOL_VEC3_ARB 0x8B58\r
-#define GL_BOOL_VEC4_ARB 0x8B59\r
-#define GL_FLOAT_MAT2_ARB 0x8B5A\r
-#define GL_FLOAT_MAT3_ARB 0x8B5B\r
-#define GL_FLOAT_MAT4_ARB 0x8B5C\r
-#define GL_SAMPLER_1D_ARB 0x8B5D\r
-#define GL_SAMPLER_2D_ARB 0x8B5E\r
-#define GL_SAMPLER_3D_ARB 0x8B5F\r
-#define GL_SAMPLER_CUBE_ARB 0x8B60\r
-#define GL_SAMPLER_1D_SHADOW_ARB 0x8B61\r
-#define GL_SAMPLER_2D_SHADOW_ARB 0x8B62\r
-#define GL_SAMPLER_2D_RECT_ARB 0x8B63\r
-#define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64\r
-#define GL_OBJECT_DELETE_STATUS_ARB 0x8B80\r
-#define GL_OBJECT_COMPILE_STATUS_ARB 0x8B81\r
-#define GL_OBJECT_LINK_STATUS_ARB 0x8B82\r
-#define GL_OBJECT_VALIDATE_STATUS_ARB 0x8B83\r
-#define GL_OBJECT_INFO_LOG_LENGTH_ARB 0x8B84\r
-#define GL_OBJECT_ATTACHED_OBJECTS_ARB 0x8B85\r
-#define GL_OBJECT_ACTIVE_UNIFORMS_ARB 0x8B86\r
-#define GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB 0x8B87\r
-#define GL_OBJECT_SHADER_SOURCE_LENGTH_ARB 0x8B88\r
-\r
-typedef char GLcharARB;\r
-typedef unsigned int GLhandleARB;\r
-\r
-typedef void (GLAPIENTRY * PFNGLATTACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB obj);\r
-typedef void (GLAPIENTRY * PFNGLCOMPILESHADERARBPROC) (GLhandleARB shaderObj);\r
-typedef GLhandleARB (GLAPIENTRY * PFNGLCREATEPROGRAMOBJECTARBPROC) (void);\r
-typedef GLhandleARB (GLAPIENTRY * PFNGLCREATESHADEROBJECTARBPROC) (GLenum shaderType);\r
-typedef void (GLAPIENTRY * PFNGLDELETEOBJECTARBPROC) (GLhandleARB obj);\r
-typedef void (GLAPIENTRY * PFNGLDETACHOBJECTARBPROC) (GLhandleARB containerObj, GLhandleARB attachedObj);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name);\r
-typedef void (GLAPIENTRY * PFNGLGETATTACHEDOBJECTSARBPROC) (GLhandleARB containerObj, GLsizei maxCount, GLsizei* count, GLhandleARB *obj);\r
-typedef GLhandleARB (GLAPIENTRY * PFNGLGETHANDLEARBPROC) (GLenum pname);\r
-typedef void (GLAPIENTRY * PFNGLGETINFOLOGARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *infoLog);\r
-typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERFVARBPROC) (GLhandleARB obj, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETOBJECTPARAMETERIVARBPROC) (GLhandleARB obj, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETSHADERSOURCEARBPROC) (GLhandleARB obj, GLsizei maxLength, GLsizei* length, GLcharARB *source);\r
-typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB* name);\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMFVARBPROC) (GLhandleARB programObj, GLint location, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMIVARBPROC) (GLhandleARB programObj, GLint location, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLLINKPROGRAMARBPROC) (GLhandleARB programObj);\r
-typedef void (GLAPIENTRY * PFNGLSHADERSOURCEARBPROC) (GLhandleARB shaderObj, GLsizei count, const GLcharARB ** string, const GLint *length);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1FARBPROC) (GLint location, GLfloat v0);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1FVARBPROC) (GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1IARBPROC) (GLint location, GLint v0);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1IVARBPROC) (GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2FARBPROC) (GLint location, GLfloat v0, GLfloat v1);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2FVARBPROC) (GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2IARBPROC) (GLint location, GLint v0, GLint v1);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2IVARBPROC) (GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3FVARBPROC) (GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3IVARBPROC) (GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4FARBPROC) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4FVARBPROC) (GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4IARBPROC) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4IVARBPROC) (GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX2FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX3FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMMATRIX4FVARBPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLUSEPROGRAMOBJECTARBPROC) (GLhandleARB programObj);\r
-typedef void (GLAPIENTRY * PFNGLVALIDATEPROGRAMARBPROC) (GLhandleARB programObj);\r
-\r
-#define glAttachObjectARB GLEW_GET_FUN(__glewAttachObjectARB)\r
-#define glCompileShaderARB GLEW_GET_FUN(__glewCompileShaderARB)\r
-#define glCreateProgramObjectARB GLEW_GET_FUN(__glewCreateProgramObjectARB)\r
-#define glCreateShaderObjectARB GLEW_GET_FUN(__glewCreateShaderObjectARB)\r
-#define glDeleteObjectARB GLEW_GET_FUN(__glewDeleteObjectARB)\r
-#define glDetachObjectARB GLEW_GET_FUN(__glewDetachObjectARB)\r
-#define glGetActiveUniformARB GLEW_GET_FUN(__glewGetActiveUniformARB)\r
-#define glGetAttachedObjectsARB GLEW_GET_FUN(__glewGetAttachedObjectsARB)\r
-#define glGetHandleARB GLEW_GET_FUN(__glewGetHandleARB)\r
-#define glGetInfoLogARB GLEW_GET_FUN(__glewGetInfoLogARB)\r
-#define glGetObjectParameterfvARB GLEW_GET_FUN(__glewGetObjectParameterfvARB)\r
-#define glGetObjectParameterivARB GLEW_GET_FUN(__glewGetObjectParameterivARB)\r
-#define glGetShaderSourceARB GLEW_GET_FUN(__glewGetShaderSourceARB)\r
-#define glGetUniformLocationARB GLEW_GET_FUN(__glewGetUniformLocationARB)\r
-#define glGetUniformfvARB GLEW_GET_FUN(__glewGetUniformfvARB)\r
-#define glGetUniformivARB GLEW_GET_FUN(__glewGetUniformivARB)\r
-#define glLinkProgramARB GLEW_GET_FUN(__glewLinkProgramARB)\r
-#define glShaderSourceARB GLEW_GET_FUN(__glewShaderSourceARB)\r
-#define glUniform1fARB GLEW_GET_FUN(__glewUniform1fARB)\r
-#define glUniform1fvARB GLEW_GET_FUN(__glewUniform1fvARB)\r
-#define glUniform1iARB GLEW_GET_FUN(__glewUniform1iARB)\r
-#define glUniform1ivARB GLEW_GET_FUN(__glewUniform1ivARB)\r
-#define glUniform2fARB GLEW_GET_FUN(__glewUniform2fARB)\r
-#define glUniform2fvARB GLEW_GET_FUN(__glewUniform2fvARB)\r
-#define glUniform2iARB GLEW_GET_FUN(__glewUniform2iARB)\r
-#define glUniform2ivARB GLEW_GET_FUN(__glewUniform2ivARB)\r
-#define glUniform3fARB GLEW_GET_FUN(__glewUniform3fARB)\r
-#define glUniform3fvARB GLEW_GET_FUN(__glewUniform3fvARB)\r
-#define glUniform3iARB GLEW_GET_FUN(__glewUniform3iARB)\r
-#define glUniform3ivARB GLEW_GET_FUN(__glewUniform3ivARB)\r
-#define glUniform4fARB GLEW_GET_FUN(__glewUniform4fARB)\r
-#define glUniform4fvARB GLEW_GET_FUN(__glewUniform4fvARB)\r
-#define glUniform4iARB GLEW_GET_FUN(__glewUniform4iARB)\r
-#define glUniform4ivARB GLEW_GET_FUN(__glewUniform4ivARB)\r
-#define glUniformMatrix2fvARB GLEW_GET_FUN(__glewUniformMatrix2fvARB)\r
-#define glUniformMatrix3fvARB GLEW_GET_FUN(__glewUniformMatrix3fvARB)\r
-#define glUniformMatrix4fvARB GLEW_GET_FUN(__glewUniformMatrix4fvARB)\r
-#define glUseProgramObjectARB GLEW_GET_FUN(__glewUseProgramObjectARB)\r
-#define glValidateProgramARB GLEW_GET_FUN(__glewValidateProgramARB)\r
-\r
-#define GLEW_ARB_shader_objects GLEW_GET_VAR(__GLEW_ARB_shader_objects)\r
-\r
-#endif /* GL_ARB_shader_objects */\r
-\r
-/* ------------------------ GL_ARB_shader_precision ------------------------ */\r
-\r
-#ifndef GL_ARB_shader_precision\r
-#define GL_ARB_shader_precision 1\r
-\r
-#define GLEW_ARB_shader_precision GLEW_GET_VAR(__GLEW_ARB_shader_precision)\r
-\r
-#endif /* GL_ARB_shader_precision */\r
-\r
-/* ---------------------- GL_ARB_shader_stencil_export --------------------- */\r
-\r
-#ifndef GL_ARB_shader_stencil_export\r
-#define GL_ARB_shader_stencil_export 1\r
-\r
-#define GLEW_ARB_shader_stencil_export GLEW_GET_VAR(__GLEW_ARB_shader_stencil_export)\r
-\r
-#endif /* GL_ARB_shader_stencil_export */\r
-\r
-/* ------------------------ GL_ARB_shader_subroutine ----------------------- */\r
-\r
-#ifndef GL_ARB_shader_subroutine\r
-#define GL_ARB_shader_subroutine 1\r
-\r
-#define GL_ACTIVE_SUBROUTINES 0x8DE5\r
-#define GL_ACTIVE_SUBROUTINE_UNIFORMS 0x8DE6\r
-#define GL_MAX_SUBROUTINES 0x8DE7\r
-#define GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS 0x8DE8\r
-#define GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS 0x8E47\r
-#define GL_ACTIVE_SUBROUTINE_MAX_LENGTH 0x8E48\r
-#define GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH 0x8E49\r
-#define GL_NUM_COMPATIBLE_SUBROUTINES 0x8E4A\r
-#define GL_COMPATIBLE_SUBROUTINES 0x8E4B\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINENAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char *name);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC) (GLuint program, GLenum shadertype, GLuint index, GLsizei bufsize, GLsizei* length, char *name);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC) (GLuint program, GLenum shadertype, GLuint index, GLenum pname, GLint* values);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTAGEIVPROC) (GLuint program, GLenum shadertype, GLenum pname, GLint* values);\r
-typedef GLuint (GLAPIENTRY * PFNGLGETSUBROUTINEINDEXPROC) (GLuint program, GLenum shadertype, const char* name);\r
-typedef GLint (GLAPIENTRY * PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC) (GLuint program, GLenum shadertype, const char* name);\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMSUBROUTINEUIVPROC) (GLenum shadertype, GLint location, GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMSUBROUTINESUIVPROC) (GLenum shadertype, GLsizei count, const GLuint* indices);\r
-\r
-#define glGetActiveSubroutineName GLEW_GET_FUN(__glewGetActiveSubroutineName)\r
-#define glGetActiveSubroutineUniformName GLEW_GET_FUN(__glewGetActiveSubroutineUniformName)\r
-#define glGetActiveSubroutineUniformiv GLEW_GET_FUN(__glewGetActiveSubroutineUniformiv)\r
-#define glGetProgramStageiv GLEW_GET_FUN(__glewGetProgramStageiv)\r
-#define glGetSubroutineIndex GLEW_GET_FUN(__glewGetSubroutineIndex)\r
-#define glGetSubroutineUniformLocation GLEW_GET_FUN(__glewGetSubroutineUniformLocation)\r
-#define glGetUniformSubroutineuiv GLEW_GET_FUN(__glewGetUniformSubroutineuiv)\r
-#define glUniformSubroutinesuiv GLEW_GET_FUN(__glewUniformSubroutinesuiv)\r
-\r
-#define GLEW_ARB_shader_subroutine GLEW_GET_VAR(__GLEW_ARB_shader_subroutine)\r
-\r
-#endif /* GL_ARB_shader_subroutine */\r
-\r
-/* ----------------------- GL_ARB_shader_texture_lod ----------------------- */\r
-\r
-#ifndef GL_ARB_shader_texture_lod\r
-#define GL_ARB_shader_texture_lod 1\r
-\r
-#define GLEW_ARB_shader_texture_lod GLEW_GET_VAR(__GLEW_ARB_shader_texture_lod)\r
-\r
-#endif /* GL_ARB_shader_texture_lod */\r
-\r
-/* ---------------------- GL_ARB_shading_language_100 ---------------------- */\r
-\r
-#ifndef GL_ARB_shading_language_100\r
-#define GL_ARB_shading_language_100 1\r
-\r
-#define GL_SHADING_LANGUAGE_VERSION_ARB 0x8B8C\r
-\r
-#define GLEW_ARB_shading_language_100 GLEW_GET_VAR(__GLEW_ARB_shading_language_100)\r
-\r
-#endif /* GL_ARB_shading_language_100 */\r
-\r
-/* -------------------- GL_ARB_shading_language_420pack -------------------- */\r
-\r
-#ifndef GL_ARB_shading_language_420pack\r
-#define GL_ARB_shading_language_420pack 1\r
-\r
-#define GLEW_ARB_shading_language_420pack GLEW_GET_VAR(__GLEW_ARB_shading_language_420pack)\r
-\r
-#endif /* GL_ARB_shading_language_420pack */\r
-\r
-/* -------------------- GL_ARB_shading_language_include -------------------- */\r
-\r
-#ifndef GL_ARB_shading_language_include\r
-#define GL_ARB_shading_language_include 1\r
-\r
-#define GL_SHADER_INCLUDE_ARB 0x8DAE\r
-#define GL_NAMED_STRING_LENGTH_ARB 0x8DE9\r
-#define GL_NAMED_STRING_TYPE_ARB 0x8DEA\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOMPILESHADERINCLUDEARBPROC) (GLuint shader, GLsizei count, const char ** path, const GLint *length);\r
-typedef void (GLAPIENTRY * PFNGLDELETENAMEDSTRINGARBPROC) (GLint namelen, const char* name);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDSTRINGARBPROC) (GLint namelen, const char* name, GLsizei bufSize, GLint *stringlen, char *string);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDSTRINGIVARBPROC) (GLint namelen, const char* name, GLenum pname, GLint *params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISNAMEDSTRINGARBPROC) (GLint namelen, const char* name);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDSTRINGARBPROC) (GLenum type, GLint namelen, const char* name, GLint stringlen, const char *string);\r
-\r
-#define glCompileShaderIncludeARB GLEW_GET_FUN(__glewCompileShaderIncludeARB)\r
-#define glDeleteNamedStringARB GLEW_GET_FUN(__glewDeleteNamedStringARB)\r
-#define glGetNamedStringARB GLEW_GET_FUN(__glewGetNamedStringARB)\r
-#define glGetNamedStringivARB GLEW_GET_FUN(__glewGetNamedStringivARB)\r
-#define glIsNamedStringARB GLEW_GET_FUN(__glewIsNamedStringARB)\r
-#define glNamedStringARB GLEW_GET_FUN(__glewNamedStringARB)\r
-\r
-#define GLEW_ARB_shading_language_include GLEW_GET_VAR(__GLEW_ARB_shading_language_include)\r
-\r
-#endif /* GL_ARB_shading_language_include */\r
-\r
-/* -------------------- GL_ARB_shading_language_packing -------------------- */\r
-\r
-#ifndef GL_ARB_shading_language_packing\r
-#define GL_ARB_shading_language_packing 1\r
-\r
-#define GLEW_ARB_shading_language_packing GLEW_GET_VAR(__GLEW_ARB_shading_language_packing)\r
-\r
-#endif /* GL_ARB_shading_language_packing */\r
-\r
-/* ----------------------------- GL_ARB_shadow ----------------------------- */\r
-\r
-#ifndef GL_ARB_shadow\r
-#define GL_ARB_shadow 1\r
-\r
-#define GL_TEXTURE_COMPARE_MODE_ARB 0x884C\r
-#define GL_TEXTURE_COMPARE_FUNC_ARB 0x884D\r
-#define GL_COMPARE_R_TO_TEXTURE_ARB 0x884E\r
-\r
-#define GLEW_ARB_shadow GLEW_GET_VAR(__GLEW_ARB_shadow)\r
-\r
-#endif /* GL_ARB_shadow */\r
-\r
-/* ------------------------- GL_ARB_shadow_ambient ------------------------- */\r
-\r
-#ifndef GL_ARB_shadow_ambient\r
-#define GL_ARB_shadow_ambient 1\r
-\r
-#define GL_TEXTURE_COMPARE_FAIL_VALUE_ARB 0x80BF\r
-\r
-#define GLEW_ARB_shadow_ambient GLEW_GET_VAR(__GLEW_ARB_shadow_ambient)\r
-\r
-#endif /* GL_ARB_shadow_ambient */\r
-\r
-/* ------------------------------ GL_ARB_sync ------------------------------ */\r
-\r
-#ifndef GL_ARB_sync\r
-#define GL_ARB_sync 1\r
-\r
-#define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001\r
-#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111\r
-#define GL_OBJECT_TYPE 0x9112\r
-#define GL_SYNC_CONDITION 0x9113\r
-#define GL_SYNC_STATUS 0x9114\r
-#define GL_SYNC_FLAGS 0x9115\r
-#define GL_SYNC_FENCE 0x9116\r
-#define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117\r
-#define GL_UNSIGNALED 0x9118\r
-#define GL_SIGNALED 0x9119\r
-#define GL_ALREADY_SIGNALED 0x911A\r
-#define GL_TIMEOUT_EXPIRED 0x911B\r
-#define GL_CONDITION_SATISFIED 0x911C\r
-#define GL_WAIT_FAILED 0x911D\r
-#define GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFF\r
-\r
-typedef GLenum (GLAPIENTRY * PFNGLCLIENTWAITSYNCPROC) (GLsync GLsync,GLbitfield flags,GLuint64 timeout);\r
-typedef void (GLAPIENTRY * PFNGLDELETESYNCPROC) (GLsync GLsync);\r
-typedef GLsync (GLAPIENTRY * PFNGLFENCESYNCPROC) (GLenum condition,GLbitfield flags);\r
-typedef void (GLAPIENTRY * PFNGLGETINTEGER64VPROC) (GLenum pname, GLint64* params);\r
-typedef void (GLAPIENTRY * PFNGLGETSYNCIVPROC) (GLsync GLsync,GLenum pname,GLsizei bufSize,GLsizei* length, GLint *values);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISSYNCPROC) (GLsync GLsync);\r
-typedef void (GLAPIENTRY * PFNGLWAITSYNCPROC) (GLsync GLsync,GLbitfield flags,GLuint64 timeout);\r
-\r
-#define glClientWaitSync GLEW_GET_FUN(__glewClientWaitSync)\r
-#define glDeleteSync GLEW_GET_FUN(__glewDeleteSync)\r
-#define glFenceSync GLEW_GET_FUN(__glewFenceSync)\r
-#define glGetInteger64v GLEW_GET_FUN(__glewGetInteger64v)\r
-#define glGetSynciv GLEW_GET_FUN(__glewGetSynciv)\r
-#define glIsSync GLEW_GET_FUN(__glewIsSync)\r
-#define glWaitSync GLEW_GET_FUN(__glewWaitSync)\r
-\r
-#define GLEW_ARB_sync GLEW_GET_VAR(__GLEW_ARB_sync)\r
-\r
-#endif /* GL_ARB_sync */\r
-\r
-/* ----------------------- GL_ARB_tessellation_shader ---------------------- */\r
-\r
-#ifndef GL_ARB_tessellation_shader\r
-#define GL_ARB_tessellation_shader 1\r
-\r
-#define GL_PATCHES 0xE\r
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER 0x84F0\r
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER 0x84F1\r
-#define GL_MAX_TESS_CONTROL_INPUT_COMPONENTS 0x886C\r
-#define GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS 0x886D\r
-#define GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E1E\r
-#define GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E1F\r
-#define GL_PATCH_VERTICES 0x8E72\r
-#define GL_PATCH_DEFAULT_INNER_LEVEL 0x8E73\r
-#define GL_PATCH_DEFAULT_OUTER_LEVEL 0x8E74\r
-#define GL_TESS_CONTROL_OUTPUT_VERTICES 0x8E75\r
-#define GL_TESS_GEN_MODE 0x8E76\r
-#define GL_TESS_GEN_SPACING 0x8E77\r
-#define GL_TESS_GEN_VERTEX_ORDER 0x8E78\r
-#define GL_TESS_GEN_POINT_MODE 0x8E79\r
-#define GL_ISOLINES 0x8E7A\r
-#define GL_FRACTIONAL_ODD 0x8E7B\r
-#define GL_FRACTIONAL_EVEN 0x8E7C\r
-#define GL_MAX_PATCH_VERTICES 0x8E7D\r
-#define GL_MAX_TESS_GEN_LEVEL 0x8E7E\r
-#define GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E7F\r
-#define GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E80\r
-#define GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS 0x8E81\r
-#define GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS 0x8E82\r
-#define GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS 0x8E83\r
-#define GL_MAX_TESS_PATCH_COMPONENTS 0x8E84\r
-#define GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS 0x8E85\r
-#define GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS 0x8E86\r
-#define GL_TESS_EVALUATION_SHADER 0x8E87\r
-#define GL_TESS_CONTROL_SHADER 0x8E88\r
-#define GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS 0x8E89\r
-#define GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS 0x8E8A\r
-\r
-typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERFVPROC) (GLenum pname, const GLfloat* values);\r
-typedef void (GLAPIENTRY * PFNGLPATCHPARAMETERIPROC) (GLenum pname, GLint value);\r
-\r
-#define glPatchParameterfv GLEW_GET_FUN(__glewPatchParameterfv)\r
-#define glPatchParameteri GLEW_GET_FUN(__glewPatchParameteri)\r
-\r
-#define GLEW_ARB_tessellation_shader GLEW_GET_VAR(__GLEW_ARB_tessellation_shader)\r
-\r
-#endif /* GL_ARB_tessellation_shader */\r
-\r
-/* ---------------------- GL_ARB_texture_border_clamp ---------------------- */\r
-\r
-#ifndef GL_ARB_texture_border_clamp\r
-#define GL_ARB_texture_border_clamp 1\r
-\r
-#define GL_CLAMP_TO_BORDER_ARB 0x812D\r
-\r
-#define GLEW_ARB_texture_border_clamp GLEW_GET_VAR(__GLEW_ARB_texture_border_clamp)\r
-\r
-#endif /* GL_ARB_texture_border_clamp */\r
-\r
-/* ---------------------- GL_ARB_texture_buffer_object --------------------- */\r
-\r
-#ifndef GL_ARB_texture_buffer_object\r
-#define GL_ARB_texture_buffer_object 1\r
-\r
-#define GL_TEXTURE_BUFFER_ARB 0x8C2A\r
-#define GL_MAX_TEXTURE_BUFFER_SIZE_ARB 0x8C2B\r
-#define GL_TEXTURE_BINDING_BUFFER_ARB 0x8C2C\r
-#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB 0x8C2D\r
-#define GL_TEXTURE_BUFFER_FORMAT_ARB 0x8C2E\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXBUFFERARBPROC) (GLenum target, GLenum internalformat, GLuint buffer);\r
-\r
-#define glTexBufferARB GLEW_GET_FUN(__glewTexBufferARB)\r
-\r
-#define GLEW_ARB_texture_buffer_object GLEW_GET_VAR(__GLEW_ARB_texture_buffer_object)\r
-\r
-#endif /* GL_ARB_texture_buffer_object */\r
-\r
-/* ------------------- GL_ARB_texture_buffer_object_rgb32 ------------------ */\r
-\r
-#ifndef GL_ARB_texture_buffer_object_rgb32\r
-#define GL_ARB_texture_buffer_object_rgb32 1\r
-\r
-#define GLEW_ARB_texture_buffer_object_rgb32 GLEW_GET_VAR(__GLEW_ARB_texture_buffer_object_rgb32)\r
-\r
-#endif /* GL_ARB_texture_buffer_object_rgb32 */\r
-\r
-/* ----------------------- GL_ARB_texture_compression ---------------------- */\r
-\r
-#ifndef GL_ARB_texture_compression\r
-#define GL_ARB_texture_compression 1\r
-\r
-#define GL_COMPRESSED_ALPHA_ARB 0x84E9\r
-#define GL_COMPRESSED_LUMINANCE_ARB 0x84EA\r
-#define GL_COMPRESSED_LUMINANCE_ALPHA_ARB 0x84EB\r
-#define GL_COMPRESSED_INTENSITY_ARB 0x84EC\r
-#define GL_COMPRESSED_RGB_ARB 0x84ED\r
-#define GL_COMPRESSED_RGBA_ARB 0x84EE\r
-#define GL_TEXTURE_COMPRESSION_HINT_ARB 0x84EF\r
-#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB 0x86A0\r
-#define GL_TEXTURE_COMPRESSED_ARB 0x86A1\r
-#define GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A2\r
-#define GL_COMPRESSED_TEXTURE_FORMATS_ARB 0x86A3\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE1DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE2DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXIMAGE3DARBPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXIMAGEARBPROC) (GLenum target, GLint lod, void* img);\r
-\r
-#define glCompressedTexImage1DARB GLEW_GET_FUN(__glewCompressedTexImage1DARB)\r
-#define glCompressedTexImage2DARB GLEW_GET_FUN(__glewCompressedTexImage2DARB)\r
-#define glCompressedTexImage3DARB GLEW_GET_FUN(__glewCompressedTexImage3DARB)\r
-#define glCompressedTexSubImage1DARB GLEW_GET_FUN(__glewCompressedTexSubImage1DARB)\r
-#define glCompressedTexSubImage2DARB GLEW_GET_FUN(__glewCompressedTexSubImage2DARB)\r
-#define glCompressedTexSubImage3DARB GLEW_GET_FUN(__glewCompressedTexSubImage3DARB)\r
-#define glGetCompressedTexImageARB GLEW_GET_FUN(__glewGetCompressedTexImageARB)\r
-\r
-#define GLEW_ARB_texture_compression GLEW_GET_VAR(__GLEW_ARB_texture_compression)\r
-\r
-#endif /* GL_ARB_texture_compression */\r
-\r
-/* -------------------- GL_ARB_texture_compression_bptc -------------------- */\r
-\r
-#ifndef GL_ARB_texture_compression_bptc\r
-#define GL_ARB_texture_compression_bptc 1\r
-\r
-#define GL_COMPRESSED_RGBA_BPTC_UNORM_ARB 0x8E8C\r
-#define GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB 0x8E8D\r
-#define GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB 0x8E8E\r
-#define GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB 0x8E8F\r
-\r
-#define GLEW_ARB_texture_compression_bptc GLEW_GET_VAR(__GLEW_ARB_texture_compression_bptc)\r
-\r
-#endif /* GL_ARB_texture_compression_bptc */\r
-\r
-/* -------------------- GL_ARB_texture_compression_rgtc -------------------- */\r
-\r
-#ifndef GL_ARB_texture_compression_rgtc\r
-#define GL_ARB_texture_compression_rgtc 1\r
-\r
-#define GL_COMPRESSED_RED_RGTC1 0x8DBB\r
-#define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC\r
-#define GL_COMPRESSED_RG_RGTC2 0x8DBD\r
-#define GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE\r
-\r
-#define GLEW_ARB_texture_compression_rgtc GLEW_GET_VAR(__GLEW_ARB_texture_compression_rgtc)\r
-\r
-#endif /* GL_ARB_texture_compression_rgtc */\r
-\r
-/* ------------------------ GL_ARB_texture_cube_map ------------------------ */\r
-\r
-#ifndef GL_ARB_texture_cube_map\r
-#define GL_ARB_texture_cube_map 1\r
-\r
-#define GL_NORMAL_MAP_ARB 0x8511\r
-#define GL_REFLECTION_MAP_ARB 0x8512\r
-#define GL_TEXTURE_CUBE_MAP_ARB 0x8513\r
-#define GL_TEXTURE_BINDING_CUBE_MAP_ARB 0x8514\r
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x8515\r
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x8516\r
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x8517\r
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x8518\r
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x8519\r
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x851A\r
-#define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B\r
-#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB 0x851C\r
-\r
-#define GLEW_ARB_texture_cube_map GLEW_GET_VAR(__GLEW_ARB_texture_cube_map)\r
-\r
-#endif /* GL_ARB_texture_cube_map */\r
-\r
-/* --------------------- GL_ARB_texture_cube_map_array --------------------- */\r
-\r
-#ifndef GL_ARB_texture_cube_map_array\r
-#define GL_ARB_texture_cube_map_array 1\r
-\r
-#define GL_TEXTURE_CUBE_MAP_ARRAY_ARB 0x9009\r
-#define GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB 0x900A\r
-#define GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB 0x900B\r
-#define GL_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900C\r
-#define GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB 0x900D\r
-#define GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900E\r
-#define GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB 0x900F\r
-\r
-#define GLEW_ARB_texture_cube_map_array GLEW_GET_VAR(__GLEW_ARB_texture_cube_map_array)\r
-\r
-#endif /* GL_ARB_texture_cube_map_array */\r
-\r
-/* ------------------------- GL_ARB_texture_env_add ------------------------ */\r
-\r
-#ifndef GL_ARB_texture_env_add\r
-#define GL_ARB_texture_env_add 1\r
-\r
-#define GLEW_ARB_texture_env_add GLEW_GET_VAR(__GLEW_ARB_texture_env_add)\r
-\r
-#endif /* GL_ARB_texture_env_add */\r
-\r
-/* ----------------------- GL_ARB_texture_env_combine ---------------------- */\r
-\r
-#ifndef GL_ARB_texture_env_combine\r
-#define GL_ARB_texture_env_combine 1\r
-\r
-#define GL_SUBTRACT_ARB 0x84E7\r
-#define GL_COMBINE_ARB 0x8570\r
-#define GL_COMBINE_RGB_ARB 0x8571\r
-#define GL_COMBINE_ALPHA_ARB 0x8572\r
-#define GL_RGB_SCALE_ARB 0x8573\r
-#define GL_ADD_SIGNED_ARB 0x8574\r
-#define GL_INTERPOLATE_ARB 0x8575\r
-#define GL_CONSTANT_ARB 0x8576\r
-#define GL_PRIMARY_COLOR_ARB 0x8577\r
-#define GL_PREVIOUS_ARB 0x8578\r
-#define GL_SOURCE0_RGB_ARB 0x8580\r
-#define GL_SOURCE1_RGB_ARB 0x8581\r
-#define GL_SOURCE2_RGB_ARB 0x8582\r
-#define GL_SOURCE0_ALPHA_ARB 0x8588\r
-#define GL_SOURCE1_ALPHA_ARB 0x8589\r
-#define GL_SOURCE2_ALPHA_ARB 0x858A\r
-#define GL_OPERAND0_RGB_ARB 0x8590\r
-#define GL_OPERAND1_RGB_ARB 0x8591\r
-#define GL_OPERAND2_RGB_ARB 0x8592\r
-#define GL_OPERAND0_ALPHA_ARB 0x8598\r
-#define GL_OPERAND1_ALPHA_ARB 0x8599\r
-#define GL_OPERAND2_ALPHA_ARB 0x859A\r
-\r
-#define GLEW_ARB_texture_env_combine GLEW_GET_VAR(__GLEW_ARB_texture_env_combine)\r
-\r
-#endif /* GL_ARB_texture_env_combine */\r
-\r
-/* ---------------------- GL_ARB_texture_env_crossbar ---------------------- */\r
-\r
-#ifndef GL_ARB_texture_env_crossbar\r
-#define GL_ARB_texture_env_crossbar 1\r
-\r
-#define GLEW_ARB_texture_env_crossbar GLEW_GET_VAR(__GLEW_ARB_texture_env_crossbar)\r
-\r
-#endif /* GL_ARB_texture_env_crossbar */\r
-\r
-/* ------------------------ GL_ARB_texture_env_dot3 ------------------------ */\r
-\r
-#ifndef GL_ARB_texture_env_dot3\r
-#define GL_ARB_texture_env_dot3 1\r
-\r
-#define GL_DOT3_RGB_ARB 0x86AE\r
-#define GL_DOT3_RGBA_ARB 0x86AF\r
-\r
-#define GLEW_ARB_texture_env_dot3 GLEW_GET_VAR(__GLEW_ARB_texture_env_dot3)\r
-\r
-#endif /* GL_ARB_texture_env_dot3 */\r
-\r
-/* -------------------------- GL_ARB_texture_float ------------------------- */\r
-\r
-#ifndef GL_ARB_texture_float\r
-#define GL_ARB_texture_float 1\r
-\r
-#define GL_RGBA32F_ARB 0x8814\r
-#define GL_RGB32F_ARB 0x8815\r
-#define GL_ALPHA32F_ARB 0x8816\r
-#define GL_INTENSITY32F_ARB 0x8817\r
-#define GL_LUMINANCE32F_ARB 0x8818\r
-#define GL_LUMINANCE_ALPHA32F_ARB 0x8819\r
-#define GL_RGBA16F_ARB 0x881A\r
-#define GL_RGB16F_ARB 0x881B\r
-#define GL_ALPHA16F_ARB 0x881C\r
-#define GL_INTENSITY16F_ARB 0x881D\r
-#define GL_LUMINANCE16F_ARB 0x881E\r
-#define GL_LUMINANCE_ALPHA16F_ARB 0x881F\r
-#define GL_TEXTURE_RED_TYPE_ARB 0x8C10\r
-#define GL_TEXTURE_GREEN_TYPE_ARB 0x8C11\r
-#define GL_TEXTURE_BLUE_TYPE_ARB 0x8C12\r
-#define GL_TEXTURE_ALPHA_TYPE_ARB 0x8C13\r
-#define GL_TEXTURE_LUMINANCE_TYPE_ARB 0x8C14\r
-#define GL_TEXTURE_INTENSITY_TYPE_ARB 0x8C15\r
-#define GL_TEXTURE_DEPTH_TYPE_ARB 0x8C16\r
-#define GL_UNSIGNED_NORMALIZED_ARB 0x8C17\r
-\r
-#define GLEW_ARB_texture_float GLEW_GET_VAR(__GLEW_ARB_texture_float)\r
-\r
-#endif /* GL_ARB_texture_float */\r
-\r
-/* ------------------------- GL_ARB_texture_gather ------------------------- */\r
-\r
-#ifndef GL_ARB_texture_gather\r
-#define GL_ARB_texture_gather 1\r
-\r
-#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5E\r
-#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5F\r
-#define GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB 0x8F9F\r
-\r
-#define GLEW_ARB_texture_gather GLEW_GET_VAR(__GLEW_ARB_texture_gather)\r
-\r
-#endif /* GL_ARB_texture_gather */\r
-\r
-/* --------------------- GL_ARB_texture_mirrored_repeat -------------------- */\r
-\r
-#ifndef GL_ARB_texture_mirrored_repeat\r
-#define GL_ARB_texture_mirrored_repeat 1\r
-\r
-#define GL_MIRRORED_REPEAT_ARB 0x8370\r
-\r
-#define GLEW_ARB_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_ARB_texture_mirrored_repeat)\r
-\r
-#endif /* GL_ARB_texture_mirrored_repeat */\r
-\r
-/* ----------------------- GL_ARB_texture_multisample ---------------------- */\r
-\r
-#ifndef GL_ARB_texture_multisample\r
-#define GL_ARB_texture_multisample 1\r
-\r
-#define GL_SAMPLE_POSITION 0x8E50\r
-#define GL_SAMPLE_MASK 0x8E51\r
-#define GL_SAMPLE_MASK_VALUE 0x8E52\r
-#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59\r
-#define GL_TEXTURE_2D_MULTISAMPLE 0x9100\r
-#define GL_PROXY_TEXTURE_2D_MULTISAMPLE 0x9101\r
-#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102\r
-#define GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103\r
-#define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104\r
-#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105\r
-#define GL_TEXTURE_SAMPLES 0x9106\r
-#define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107\r
-#define GL_SAMPLER_2D_MULTISAMPLE 0x9108\r
-#define GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109\r
-#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A\r
-#define GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B\r
-#define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C\r
-#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D\r
-#define GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E\r
-#define GL_MAX_DEPTH_TEXTURE_SAMPLES 0x910F\r
-#define GL_MAX_INTEGER_SAMPLES 0x9110\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETMULTISAMPLEFVPROC) (GLenum pname, GLuint index, GLfloat* val);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLEMASKIPROC) (GLuint index, GLbitfield mask);\r
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);\r
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);\r
-\r
-#define glGetMultisamplefv GLEW_GET_FUN(__glewGetMultisamplefv)\r
-#define glSampleMaski GLEW_GET_FUN(__glewSampleMaski)\r
-#define glTexImage2DMultisample GLEW_GET_FUN(__glewTexImage2DMultisample)\r
-#define glTexImage3DMultisample GLEW_GET_FUN(__glewTexImage3DMultisample)\r
-\r
-#define GLEW_ARB_texture_multisample GLEW_GET_VAR(__GLEW_ARB_texture_multisample)\r
-\r
-#endif /* GL_ARB_texture_multisample */\r
-\r
-/* -------------------- GL_ARB_texture_non_power_of_two -------------------- */\r
-\r
-#ifndef GL_ARB_texture_non_power_of_two\r
-#define GL_ARB_texture_non_power_of_two 1\r
-\r
-#define GLEW_ARB_texture_non_power_of_two GLEW_GET_VAR(__GLEW_ARB_texture_non_power_of_two)\r
-\r
-#endif /* GL_ARB_texture_non_power_of_two */\r
-\r
-/* ------------------------ GL_ARB_texture_query_lod ----------------------- */\r
-\r
-#ifndef GL_ARB_texture_query_lod\r
-#define GL_ARB_texture_query_lod 1\r
-\r
-#define GLEW_ARB_texture_query_lod GLEW_GET_VAR(__GLEW_ARB_texture_query_lod)\r
-\r
-#endif /* GL_ARB_texture_query_lod */\r
-\r
-/* ------------------------ GL_ARB_texture_rectangle ----------------------- */\r
-\r
-#ifndef GL_ARB_texture_rectangle\r
-#define GL_ARB_texture_rectangle 1\r
-\r
-#define GL_TEXTURE_RECTANGLE_ARB 0x84F5\r
-#define GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6\r
-#define GL_PROXY_TEXTURE_RECTANGLE_ARB 0x84F7\r
-#define GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB 0x84F8\r
-#define GL_SAMPLER_2D_RECT_ARB 0x8B63\r
-#define GL_SAMPLER_2D_RECT_SHADOW_ARB 0x8B64\r
-\r
-#define GLEW_ARB_texture_rectangle GLEW_GET_VAR(__GLEW_ARB_texture_rectangle)\r
-\r
-#endif /* GL_ARB_texture_rectangle */\r
-\r
-/* --------------------------- GL_ARB_texture_rg --------------------------- */\r
-\r
-#ifndef GL_ARB_texture_rg\r
-#define GL_ARB_texture_rg 1\r
-\r
-#define GL_RED 0x1903\r
-#define GL_COMPRESSED_RED 0x8225\r
-#define GL_COMPRESSED_RG 0x8226\r
-#define GL_RG 0x8227\r
-#define GL_RG_INTEGER 0x8228\r
-#define GL_R8 0x8229\r
-#define GL_R16 0x822A\r
-#define GL_RG8 0x822B\r
-#define GL_RG16 0x822C\r
-#define GL_R16F 0x822D\r
-#define GL_R32F 0x822E\r
-#define GL_RG16F 0x822F\r
-#define GL_RG32F 0x8230\r
-#define GL_R8I 0x8231\r
-#define GL_R8UI 0x8232\r
-#define GL_R16I 0x8233\r
-#define GL_R16UI 0x8234\r
-#define GL_R32I 0x8235\r
-#define GL_R32UI 0x8236\r
-#define GL_RG8I 0x8237\r
-#define GL_RG8UI 0x8238\r
-#define GL_RG16I 0x8239\r
-#define GL_RG16UI 0x823A\r
-#define GL_RG32I 0x823B\r
-#define GL_RG32UI 0x823C\r
-\r
-#define GLEW_ARB_texture_rg GLEW_GET_VAR(__GLEW_ARB_texture_rg)\r
-\r
-#endif /* GL_ARB_texture_rg */\r
-\r
-/* ----------------------- GL_ARB_texture_rgb10_a2ui ----------------------- */\r
-\r
-#ifndef GL_ARB_texture_rgb10_a2ui\r
-#define GL_ARB_texture_rgb10_a2ui 1\r
-\r
-#define GL_RGB10_A2UI 0x906F\r
-\r
-#define GLEW_ARB_texture_rgb10_a2ui GLEW_GET_VAR(__GLEW_ARB_texture_rgb10_a2ui)\r
-\r
-#endif /* GL_ARB_texture_rgb10_a2ui */\r
-\r
-/* ------------------------- GL_ARB_texture_storage ------------------------ */\r
-\r
-#ifndef GL_ARB_texture_storage\r
-#define GL_ARB_texture_storage 1\r
-\r
-#define GL_ALPHA8_EXT 0x803C\r
-#define GL_LUMINANCE8_EXT 0x8040\r
-#define GL_LUMINANCE8_ALPHA8_EXT 0x8045\r
-#define GL_TEXTURE_IMMUTABLE_FORMAT 0x912F\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXSTORAGE1DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLTEXSTORAGE2DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLTEXSTORAGE3DPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);\r
-typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);\r
-\r
-#define glTexStorage1D GLEW_GET_FUN(__glewTexStorage1D)\r
-#define glTexStorage2D GLEW_GET_FUN(__glewTexStorage2D)\r
-#define glTexStorage3D GLEW_GET_FUN(__glewTexStorage3D)\r
-#define glTextureStorage1DEXT GLEW_GET_FUN(__glewTextureStorage1DEXT)\r
-#define glTextureStorage2DEXT GLEW_GET_FUN(__glewTextureStorage2DEXT)\r
-#define glTextureStorage3DEXT GLEW_GET_FUN(__glewTextureStorage3DEXT)\r
-\r
-#define GLEW_ARB_texture_storage GLEW_GET_VAR(__GLEW_ARB_texture_storage)\r
-\r
-#endif /* GL_ARB_texture_storage */\r
-\r
-/* ------------------------- GL_ARB_texture_swizzle ------------------------ */\r
-\r
-#ifndef GL_ARB_texture_swizzle\r
-#define GL_ARB_texture_swizzle 1\r
-\r
-#define GL_TEXTURE_SWIZZLE_R 0x8E42\r
-#define GL_TEXTURE_SWIZZLE_G 0x8E43\r
-#define GL_TEXTURE_SWIZZLE_B 0x8E44\r
-#define GL_TEXTURE_SWIZZLE_A 0x8E45\r
-#define GL_TEXTURE_SWIZZLE_RGBA 0x8E46\r
-\r
-#define GLEW_ARB_texture_swizzle GLEW_GET_VAR(__GLEW_ARB_texture_swizzle)\r
-\r
-#endif /* GL_ARB_texture_swizzle */\r
-\r
-/* --------------------------- GL_ARB_timer_query -------------------------- */\r
-\r
-#ifndef GL_ARB_timer_query\r
-#define GL_ARB_timer_query 1\r
-\r
-#define GL_TIME_ELAPSED 0x88BF\r
-#define GL_TIMESTAMP 0x8E28\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VPROC) (GLuint id, GLenum pname, GLint64* params);\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VPROC) (GLuint id, GLenum pname, GLuint64* params);\r
-typedef void (GLAPIENTRY * PFNGLQUERYCOUNTERPROC) (GLuint id, GLenum target);\r
-\r
-#define glGetQueryObjecti64v GLEW_GET_FUN(__glewGetQueryObjecti64v)\r
-#define glGetQueryObjectui64v GLEW_GET_FUN(__glewGetQueryObjectui64v)\r
-#define glQueryCounter GLEW_GET_FUN(__glewQueryCounter)\r
-\r
-#define GLEW_ARB_timer_query GLEW_GET_VAR(__GLEW_ARB_timer_query)\r
-\r
-#endif /* GL_ARB_timer_query */\r
-\r
-/* ----------------------- GL_ARB_transform_feedback2 ---------------------- */\r
-\r
-#ifndef GL_ARB_transform_feedback2\r
-#define GL_ARB_transform_feedback2 1\r
-\r
-#define GL_TRANSFORM_FEEDBACK 0x8E22\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED 0x8E23\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE 0x8E24\r
-#define GL_TRANSFORM_FEEDBACK_BINDING 0x8E25\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDTRANSFORMFEEDBACKPROC) (GLenum target, GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLDELETETRANSFORMFEEDBACKSPROC) (GLsizei n, const GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKPROC) (GLenum mode, GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLGENTRANSFORMFEEDBACKSPROC) (GLsizei n, GLuint* ids);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISTRANSFORMFEEDBACKPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLPAUSETRANSFORMFEEDBACKPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLRESUMETRANSFORMFEEDBACKPROC) (void);\r
-\r
-#define glBindTransformFeedback GLEW_GET_FUN(__glewBindTransformFeedback)\r
-#define glDeleteTransformFeedbacks GLEW_GET_FUN(__glewDeleteTransformFeedbacks)\r
-#define glDrawTransformFeedback GLEW_GET_FUN(__glewDrawTransformFeedback)\r
-#define glGenTransformFeedbacks GLEW_GET_FUN(__glewGenTransformFeedbacks)\r
-#define glIsTransformFeedback GLEW_GET_FUN(__glewIsTransformFeedback)\r
-#define glPauseTransformFeedback GLEW_GET_FUN(__glewPauseTransformFeedback)\r
-#define glResumeTransformFeedback GLEW_GET_FUN(__glewResumeTransformFeedback)\r
-\r
-#define GLEW_ARB_transform_feedback2 GLEW_GET_VAR(__GLEW_ARB_transform_feedback2)\r
-\r
-#endif /* GL_ARB_transform_feedback2 */\r
-\r
-/* ----------------------- GL_ARB_transform_feedback3 ---------------------- */\r
-\r
-#ifndef GL_ARB_transform_feedback3\r
-#define GL_ARB_transform_feedback3 1\r
-\r
-#define GL_MAX_TRANSFORM_FEEDBACK_BUFFERS 0x8E70\r
-#define GL_MAX_VERTEX_STREAMS 0x8E71\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINQUERYINDEXEDPROC) (GLenum target, GLuint index, GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC) (GLenum mode, GLuint id, GLuint stream);\r
-typedef void (GLAPIENTRY * PFNGLENDQUERYINDEXEDPROC) (GLenum target, GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYINDEXEDIVPROC) (GLenum target, GLuint index, GLenum pname, GLint* params);\r
-\r
-#define glBeginQueryIndexed GLEW_GET_FUN(__glewBeginQueryIndexed)\r
-#define glDrawTransformFeedbackStream GLEW_GET_FUN(__glewDrawTransformFeedbackStream)\r
-#define glEndQueryIndexed GLEW_GET_FUN(__glewEndQueryIndexed)\r
-#define glGetQueryIndexediv GLEW_GET_FUN(__glewGetQueryIndexediv)\r
-\r
-#define GLEW_ARB_transform_feedback3 GLEW_GET_VAR(__GLEW_ARB_transform_feedback3)\r
-\r
-#endif /* GL_ARB_transform_feedback3 */\r
-\r
-/* ------------------ GL_ARB_transform_feedback_instanced ------------------ */\r
-\r
-#ifndef GL_ARB_transform_feedback_instanced\r
-#define GL_ARB_transform_feedback_instanced 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC) (GLenum mode, GLuint id, GLsizei primcount);\r
-typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC) (GLenum mode, GLuint id, GLuint stream, GLsizei primcount);\r
-\r
-#define glDrawTransformFeedbackInstanced GLEW_GET_FUN(__glewDrawTransformFeedbackInstanced)\r
-#define glDrawTransformFeedbackStreamInstanced GLEW_GET_FUN(__glewDrawTransformFeedbackStreamInstanced)\r
-\r
-#define GLEW_ARB_transform_feedback_instanced GLEW_GET_VAR(__GLEW_ARB_transform_feedback_instanced)\r
-\r
-#endif /* GL_ARB_transform_feedback_instanced */\r
-\r
-/* ------------------------ GL_ARB_transpose_matrix ------------------------ */\r
-\r
-#ifndef GL_ARB_transpose_matrix\r
-#define GL_ARB_transpose_matrix 1\r
-\r
-#define GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3\r
-#define GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4\r
-#define GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5\r
-#define GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6\r
-\r
-typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXDARBPROC) (GLdouble m[16]);\r
-typedef void (GLAPIENTRY * PFNGLLOADTRANSPOSEMATRIXFARBPROC) (GLfloat m[16]);\r
-typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXDARBPROC) (GLdouble m[16]);\r
-typedef void (GLAPIENTRY * PFNGLMULTTRANSPOSEMATRIXFARBPROC) (GLfloat m[16]);\r
-\r
-#define glLoadTransposeMatrixdARB GLEW_GET_FUN(__glewLoadTransposeMatrixdARB)\r
-#define glLoadTransposeMatrixfARB GLEW_GET_FUN(__glewLoadTransposeMatrixfARB)\r
-#define glMultTransposeMatrixdARB GLEW_GET_FUN(__glewMultTransposeMatrixdARB)\r
-#define glMultTransposeMatrixfARB GLEW_GET_FUN(__glewMultTransposeMatrixfARB)\r
-\r
-#define GLEW_ARB_transpose_matrix GLEW_GET_VAR(__GLEW_ARB_transpose_matrix)\r
-\r
-#endif /* GL_ARB_transpose_matrix */\r
-\r
-/* ---------------------- GL_ARB_uniform_buffer_object --------------------- */\r
-\r
-#ifndef GL_ARB_uniform_buffer_object\r
-#define GL_ARB_uniform_buffer_object 1\r
-\r
-#define GL_UNIFORM_BUFFER 0x8A11\r
-#define GL_UNIFORM_BUFFER_BINDING 0x8A28\r
-#define GL_UNIFORM_BUFFER_START 0x8A29\r
-#define GL_UNIFORM_BUFFER_SIZE 0x8A2A\r
-#define GL_MAX_VERTEX_UNIFORM_BLOCKS 0x8A2B\r
-#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS 0x8A2C\r
-#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS 0x8A2D\r
-#define GL_MAX_COMBINED_UNIFORM_BLOCKS 0x8A2E\r
-#define GL_MAX_UNIFORM_BUFFER_BINDINGS 0x8A2F\r
-#define GL_MAX_UNIFORM_BLOCK_SIZE 0x8A30\r
-#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31\r
-#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS 0x8A32\r
-#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33\r
-#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34\r
-#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35\r
-#define GL_ACTIVE_UNIFORM_BLOCKS 0x8A36\r
-#define GL_UNIFORM_TYPE 0x8A37\r
-#define GL_UNIFORM_SIZE 0x8A38\r
-#define GL_UNIFORM_NAME_LENGTH 0x8A39\r
-#define GL_UNIFORM_BLOCK_INDEX 0x8A3A\r
-#define GL_UNIFORM_OFFSET 0x8A3B\r
-#define GL_UNIFORM_ARRAY_STRIDE 0x8A3C\r
-#define GL_UNIFORM_MATRIX_STRIDE 0x8A3D\r
-#define GL_UNIFORM_IS_ROW_MAJOR 0x8A3E\r
-#define GL_UNIFORM_BLOCK_BINDING 0x8A3F\r
-#define GL_UNIFORM_BLOCK_DATA_SIZE 0x8A40\r
-#define GL_UNIFORM_BLOCK_NAME_LENGTH 0x8A41\r
-#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS 0x8A42\r
-#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43\r
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44\r
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER 0x8A45\r
-#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46\r
-#define GL_INVALID_INDEX 0xFFFFFFFF\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASEPROC) (GLenum target, GLuint index, GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGEPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC) (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, char* uniformBlockName);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMBLOCKIVPROC) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMNAMEPROC) (GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei* length, char* uniformName);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEUNIFORMSIVPROC) (GLuint program, GLsizei uniformCount, const GLuint* uniformIndices, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETINTEGERI_VPROC) (GLenum target, GLuint index, GLint* data);\r
-typedef GLuint (GLAPIENTRY * PFNGLGETUNIFORMBLOCKINDEXPROC) (GLuint program, const char* uniformBlockName);\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMINDICESPROC) (GLuint program, GLsizei uniformCount, const char** uniformNames, GLuint* uniformIndices);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMBLOCKBINDINGPROC) (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);\r
-\r
-#define glBindBufferBase GLEW_GET_FUN(__glewBindBufferBase)\r
-#define glBindBufferRange GLEW_GET_FUN(__glewBindBufferRange)\r
-#define glGetActiveUniformBlockName GLEW_GET_FUN(__glewGetActiveUniformBlockName)\r
-#define glGetActiveUniformBlockiv GLEW_GET_FUN(__glewGetActiveUniformBlockiv)\r
-#define glGetActiveUniformName GLEW_GET_FUN(__glewGetActiveUniformName)\r
-#define glGetActiveUniformsiv GLEW_GET_FUN(__glewGetActiveUniformsiv)\r
-#define glGetIntegeri_v GLEW_GET_FUN(__glewGetIntegeri_v)\r
-#define glGetUniformBlockIndex GLEW_GET_FUN(__glewGetUniformBlockIndex)\r
-#define glGetUniformIndices GLEW_GET_FUN(__glewGetUniformIndices)\r
-#define glUniformBlockBinding GLEW_GET_FUN(__glewUniformBlockBinding)\r
-\r
-#define GLEW_ARB_uniform_buffer_object GLEW_GET_VAR(__GLEW_ARB_uniform_buffer_object)\r
-\r
-#endif /* GL_ARB_uniform_buffer_object */\r
-\r
-/* ------------------------ GL_ARB_vertex_array_bgra ----------------------- */\r
-\r
-#ifndef GL_ARB_vertex_array_bgra\r
-#define GL_ARB_vertex_array_bgra 1\r
-\r
-#define GL_BGRA 0x80E1\r
-\r
-#define GLEW_ARB_vertex_array_bgra GLEW_GET_VAR(__GLEW_ARB_vertex_array_bgra)\r
-\r
-#endif /* GL_ARB_vertex_array_bgra */\r
-\r
-/* ----------------------- GL_ARB_vertex_array_object ---------------------- */\r
-\r
-#ifndef GL_ARB_vertex_array_object\r
-#define GL_ARB_vertex_array_object 1\r
-\r
-#define GL_VERTEX_ARRAY_BINDING 0x85B5\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDVERTEXARRAYPROC) (GLuint array);\r
-typedef void (GLAPIENTRY * PFNGLDELETEVERTEXARRAYSPROC) (GLsizei n, const GLuint* arrays);\r
-typedef void (GLAPIENTRY * PFNGLGENVERTEXARRAYSPROC) (GLsizei n, GLuint* arrays);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISVERTEXARRAYPROC) (GLuint array);\r
-\r
-#define glBindVertexArray GLEW_GET_FUN(__glewBindVertexArray)\r
-#define glDeleteVertexArrays GLEW_GET_FUN(__glewDeleteVertexArrays)\r
-#define glGenVertexArrays GLEW_GET_FUN(__glewGenVertexArrays)\r
-#define glIsVertexArray GLEW_GET_FUN(__glewIsVertexArray)\r
-\r
-#define GLEW_ARB_vertex_array_object GLEW_GET_VAR(__GLEW_ARB_vertex_array_object)\r
-\r
-#endif /* GL_ARB_vertex_array_object */\r
-\r
-/* ----------------------- GL_ARB_vertex_attrib_64bit ---------------------- */\r
-\r
-#ifndef GL_ARB_vertex_attrib_64bit\r
-#define GL_ARB_vertex_attrib_64bit 1\r
-\r
-#define GL_DOUBLE_MAT2 0x8F46\r
-#define GL_DOUBLE_MAT3 0x8F47\r
-#define GL_DOUBLE_MAT4 0x8F48\r
-#define GL_DOUBLE_VEC2 0x8FFC\r
-#define GL_DOUBLE_VEC3 0x8FFD\r
-#define GL_DOUBLE_VEC4 0x8FFE\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLDVPROC) (GLuint index, GLenum pname, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DPROC) (GLuint index, GLdouble x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DPROC) (GLuint index, GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLPOINTERPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer);\r
-\r
-#define glGetVertexAttribLdv GLEW_GET_FUN(__glewGetVertexAttribLdv)\r
-#define glVertexAttribL1d GLEW_GET_FUN(__glewVertexAttribL1d)\r
-#define glVertexAttribL1dv GLEW_GET_FUN(__glewVertexAttribL1dv)\r
-#define glVertexAttribL2d GLEW_GET_FUN(__glewVertexAttribL2d)\r
-#define glVertexAttribL2dv GLEW_GET_FUN(__glewVertexAttribL2dv)\r
-#define glVertexAttribL3d GLEW_GET_FUN(__glewVertexAttribL3d)\r
-#define glVertexAttribL3dv GLEW_GET_FUN(__glewVertexAttribL3dv)\r
-#define glVertexAttribL4d GLEW_GET_FUN(__glewVertexAttribL4d)\r
-#define glVertexAttribL4dv GLEW_GET_FUN(__glewVertexAttribL4dv)\r
-#define glVertexAttribLPointer GLEW_GET_FUN(__glewVertexAttribLPointer)\r
-\r
-#define GLEW_ARB_vertex_attrib_64bit GLEW_GET_VAR(__GLEW_ARB_vertex_attrib_64bit)\r
-\r
-#endif /* GL_ARB_vertex_attrib_64bit */\r
-\r
-/* -------------------------- GL_ARB_vertex_blend -------------------------- */\r
-\r
-#ifndef GL_ARB_vertex_blend\r
-#define GL_ARB_vertex_blend 1\r
-\r
-#define GL_MODELVIEW0_ARB 0x1700\r
-#define GL_MODELVIEW1_ARB 0x850A\r
-#define GL_MAX_VERTEX_UNITS_ARB 0x86A4\r
-#define GL_ACTIVE_VERTEX_UNITS_ARB 0x86A5\r
-#define GL_WEIGHT_SUM_UNITY_ARB 0x86A6\r
-#define GL_VERTEX_BLEND_ARB 0x86A7\r
-#define GL_CURRENT_WEIGHT_ARB 0x86A8\r
-#define GL_WEIGHT_ARRAY_TYPE_ARB 0x86A9\r
-#define GL_WEIGHT_ARRAY_STRIDE_ARB 0x86AA\r
-#define GL_WEIGHT_ARRAY_SIZE_ARB 0x86AB\r
-#define GL_WEIGHT_ARRAY_POINTER_ARB 0x86AC\r
-#define GL_WEIGHT_ARRAY_ARB 0x86AD\r
-#define GL_MODELVIEW2_ARB 0x8722\r
-#define GL_MODELVIEW3_ARB 0x8723\r
-#define GL_MODELVIEW4_ARB 0x8724\r
-#define GL_MODELVIEW5_ARB 0x8725\r
-#define GL_MODELVIEW6_ARB 0x8726\r
-#define GL_MODELVIEW7_ARB 0x8727\r
-#define GL_MODELVIEW8_ARB 0x8728\r
-#define GL_MODELVIEW9_ARB 0x8729\r
-#define GL_MODELVIEW10_ARB 0x872A\r
-#define GL_MODELVIEW11_ARB 0x872B\r
-#define GL_MODELVIEW12_ARB 0x872C\r
-#define GL_MODELVIEW13_ARB 0x872D\r
-#define GL_MODELVIEW14_ARB 0x872E\r
-#define GL_MODELVIEW15_ARB 0x872F\r
-#define GL_MODELVIEW16_ARB 0x8730\r
-#define GL_MODELVIEW17_ARB 0x8731\r
-#define GL_MODELVIEW18_ARB 0x8732\r
-#define GL_MODELVIEW19_ARB 0x8733\r
-#define GL_MODELVIEW20_ARB 0x8734\r
-#define GL_MODELVIEW21_ARB 0x8735\r
-#define GL_MODELVIEW22_ARB 0x8736\r
-#define GL_MODELVIEW23_ARB 0x8737\r
-#define GL_MODELVIEW24_ARB 0x8738\r
-#define GL_MODELVIEW25_ARB 0x8739\r
-#define GL_MODELVIEW26_ARB 0x873A\r
-#define GL_MODELVIEW27_ARB 0x873B\r
-#define GL_MODELVIEW28_ARB 0x873C\r
-#define GL_MODELVIEW29_ARB 0x873D\r
-#define GL_MODELVIEW30_ARB 0x873E\r
-#define GL_MODELVIEW31_ARB 0x873F\r
-\r
-typedef void (GLAPIENTRY * PFNGLVERTEXBLENDARBPROC) (GLint count);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTPOINTERARBPROC) (GLint size, GLenum type, GLsizei stride, GLvoid *pointer);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTBVARBPROC) (GLint size, GLbyte *weights);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTDVARBPROC) (GLint size, GLdouble *weights);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTFVARBPROC) (GLint size, GLfloat *weights);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTIVARBPROC) (GLint size, GLint *weights);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTSVARBPROC) (GLint size, GLshort *weights);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTUBVARBPROC) (GLint size, GLubyte *weights);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTUIVARBPROC) (GLint size, GLuint *weights);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTUSVARBPROC) (GLint size, GLushort *weights);\r
-\r
-#define glVertexBlendARB GLEW_GET_FUN(__glewVertexBlendARB)\r
-#define glWeightPointerARB GLEW_GET_FUN(__glewWeightPointerARB)\r
-#define glWeightbvARB GLEW_GET_FUN(__glewWeightbvARB)\r
-#define glWeightdvARB GLEW_GET_FUN(__glewWeightdvARB)\r
-#define glWeightfvARB GLEW_GET_FUN(__glewWeightfvARB)\r
-#define glWeightivARB GLEW_GET_FUN(__glewWeightivARB)\r
-#define glWeightsvARB GLEW_GET_FUN(__glewWeightsvARB)\r
-#define glWeightubvARB GLEW_GET_FUN(__glewWeightubvARB)\r
-#define glWeightuivARB GLEW_GET_FUN(__glewWeightuivARB)\r
-#define glWeightusvARB GLEW_GET_FUN(__glewWeightusvARB)\r
-\r
-#define GLEW_ARB_vertex_blend GLEW_GET_VAR(__GLEW_ARB_vertex_blend)\r
-\r
-#endif /* GL_ARB_vertex_blend */\r
-\r
-/* ---------------------- GL_ARB_vertex_buffer_object ---------------------- */\r
-\r
-#ifndef GL_ARB_vertex_buffer_object\r
-#define GL_ARB_vertex_buffer_object 1\r
-\r
-#define GL_BUFFER_SIZE_ARB 0x8764\r
-#define GL_BUFFER_USAGE_ARB 0x8765\r
-#define GL_ARRAY_BUFFER_ARB 0x8892\r
-#define GL_ELEMENT_ARRAY_BUFFER_ARB 0x8893\r
-#define GL_ARRAY_BUFFER_BINDING_ARB 0x8894\r
-#define GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB 0x8895\r
-#define GL_VERTEX_ARRAY_BUFFER_BINDING_ARB 0x8896\r
-#define GL_NORMAL_ARRAY_BUFFER_BINDING_ARB 0x8897\r
-#define GL_COLOR_ARRAY_BUFFER_BINDING_ARB 0x8898\r
-#define GL_INDEX_ARRAY_BUFFER_BINDING_ARB 0x8899\r
-#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB 0x889A\r
-#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB 0x889B\r
-#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB 0x889C\r
-#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB 0x889D\r
-#define GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB 0x889E\r
-#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB 0x889F\r
-#define GL_READ_ONLY_ARB 0x88B8\r
-#define GL_WRITE_ONLY_ARB 0x88B9\r
-#define GL_READ_WRITE_ARB 0x88BA\r
-#define GL_BUFFER_ACCESS_ARB 0x88BB\r
-#define GL_BUFFER_MAPPED_ARB 0x88BC\r
-#define GL_BUFFER_MAP_POINTER_ARB 0x88BD\r
-#define GL_STREAM_DRAW_ARB 0x88E0\r
-#define GL_STREAM_READ_ARB 0x88E1\r
-#define GL_STREAM_COPY_ARB 0x88E2\r
-#define GL_STATIC_DRAW_ARB 0x88E4\r
-#define GL_STATIC_READ_ARB 0x88E5\r
-#define GL_STATIC_COPY_ARB 0x88E6\r
-#define GL_DYNAMIC_DRAW_ARB 0x88E8\r
-#define GL_DYNAMIC_READ_ARB 0x88E9\r
-#define GL_DYNAMIC_COPY_ARB 0x88EA\r
-\r
-typedef ptrdiff_t GLintptrARB;\r
-typedef ptrdiff_t GLsizeiptrARB;\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERARBPROC) (GLenum target, GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLBUFFERDATAARBPROC) (GLenum target, GLsizeiptrARB size, const GLvoid* data, GLenum usage);\r
-typedef void (GLAPIENTRY * PFNGLBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid* data);\r
-typedef void (GLAPIENTRY * PFNGLDELETEBUFFERSARBPROC) (GLsizei n, const GLuint* buffers);\r
-typedef void (GLAPIENTRY * PFNGLGENBUFFERSARBPROC) (GLsizei n, GLuint* buffers);\r
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERIVARBPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPOINTERVARBPROC) (GLenum target, GLenum pname, GLvoid** params);\r
-typedef void (GLAPIENTRY * PFNGLGETBUFFERSUBDATAARBPROC) (GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid* data);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERARBPROC) (GLuint buffer);\r
-typedef GLvoid * (GLAPIENTRY * PFNGLMAPBUFFERARBPROC) (GLenum target, GLenum access);\r
-typedef GLboolean (GLAPIENTRY * PFNGLUNMAPBUFFERARBPROC) (GLenum target);\r
-\r
-#define glBindBufferARB GLEW_GET_FUN(__glewBindBufferARB)\r
-#define glBufferDataARB GLEW_GET_FUN(__glewBufferDataARB)\r
-#define glBufferSubDataARB GLEW_GET_FUN(__glewBufferSubDataARB)\r
-#define glDeleteBuffersARB GLEW_GET_FUN(__glewDeleteBuffersARB)\r
-#define glGenBuffersARB GLEW_GET_FUN(__glewGenBuffersARB)\r
-#define glGetBufferParameterivARB GLEW_GET_FUN(__glewGetBufferParameterivARB)\r
-#define glGetBufferPointervARB GLEW_GET_FUN(__glewGetBufferPointervARB)\r
-#define glGetBufferSubDataARB GLEW_GET_FUN(__glewGetBufferSubDataARB)\r
-#define glIsBufferARB GLEW_GET_FUN(__glewIsBufferARB)\r
-#define glMapBufferARB GLEW_GET_FUN(__glewMapBufferARB)\r
-#define glUnmapBufferARB GLEW_GET_FUN(__glewUnmapBufferARB)\r
-\r
-#define GLEW_ARB_vertex_buffer_object GLEW_GET_VAR(__GLEW_ARB_vertex_buffer_object)\r
-\r
-#endif /* GL_ARB_vertex_buffer_object */\r
-\r
-/* ------------------------- GL_ARB_vertex_program ------------------------- */\r
-\r
-#ifndef GL_ARB_vertex_program\r
-#define GL_ARB_vertex_program 1\r
-\r
-#define GL_COLOR_SUM_ARB 0x8458\r
-#define GL_VERTEX_PROGRAM_ARB 0x8620\r
-#define GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB 0x8622\r
-#define GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB 0x8623\r
-#define GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB 0x8624\r
-#define GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB 0x8625\r
-#define GL_CURRENT_VERTEX_ATTRIB_ARB 0x8626\r
-#define GL_PROGRAM_LENGTH_ARB 0x8627\r
-#define GL_PROGRAM_STRING_ARB 0x8628\r
-#define GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB 0x862E\r
-#define GL_MAX_PROGRAM_MATRICES_ARB 0x862F\r
-#define GL_CURRENT_MATRIX_STACK_DEPTH_ARB 0x8640\r
-#define GL_CURRENT_MATRIX_ARB 0x8641\r
-#define GL_VERTEX_PROGRAM_POINT_SIZE_ARB 0x8642\r
-#define GL_VERTEX_PROGRAM_TWO_SIDE_ARB 0x8643\r
-#define GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB 0x8645\r
-#define GL_PROGRAM_ERROR_POSITION_ARB 0x864B\r
-#define GL_PROGRAM_BINDING_ARB 0x8677\r
-#define GL_MAX_VERTEX_ATTRIBS_ARB 0x8869\r
-#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB 0x886A\r
-#define GL_PROGRAM_ERROR_STRING_ARB 0x8874\r
-#define GL_PROGRAM_FORMAT_ASCII_ARB 0x8875\r
-#define GL_PROGRAM_FORMAT_ARB 0x8876\r
-#define GL_PROGRAM_INSTRUCTIONS_ARB 0x88A0\r
-#define GL_MAX_PROGRAM_INSTRUCTIONS_ARB 0x88A1\r
-#define GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A2\r
-#define GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB 0x88A3\r
-#define GL_PROGRAM_TEMPORARIES_ARB 0x88A4\r
-#define GL_MAX_PROGRAM_TEMPORARIES_ARB 0x88A5\r
-#define GL_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A6\r
-#define GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB 0x88A7\r
-#define GL_PROGRAM_PARAMETERS_ARB 0x88A8\r
-#define GL_MAX_PROGRAM_PARAMETERS_ARB 0x88A9\r
-#define GL_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AA\r
-#define GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB 0x88AB\r
-#define GL_PROGRAM_ATTRIBS_ARB 0x88AC\r
-#define GL_MAX_PROGRAM_ATTRIBS_ARB 0x88AD\r
-#define GL_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AE\r
-#define GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB 0x88AF\r
-#define GL_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B0\r
-#define GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB 0x88B1\r
-#define GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B2\r
-#define GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB 0x88B3\r
-#define GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB 0x88B4\r
-#define GL_MAX_PROGRAM_ENV_PARAMETERS_ARB 0x88B5\r
-#define GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB 0x88B6\r
-#define GL_TRANSPOSE_CURRENT_MATRIX_ARB 0x88B7\r
-#define GL_MATRIX0_ARB 0x88C0\r
-#define GL_MATRIX1_ARB 0x88C1\r
-#define GL_MATRIX2_ARB 0x88C2\r
-#define GL_MATRIX3_ARB 0x88C3\r
-#define GL_MATRIX4_ARB 0x88C4\r
-#define GL_MATRIX5_ARB 0x88C5\r
-#define GL_MATRIX6_ARB 0x88C6\r
-#define GL_MATRIX7_ARB 0x88C7\r
-#define GL_MATRIX8_ARB 0x88C8\r
-#define GL_MATRIX9_ARB 0x88C9\r
-#define GL_MATRIX10_ARB 0x88CA\r
-#define GL_MATRIX11_ARB 0x88CB\r
-#define GL_MATRIX12_ARB 0x88CC\r
-#define GL_MATRIX13_ARB 0x88CD\r
-#define GL_MATRIX14_ARB 0x88CE\r
-#define GL_MATRIX15_ARB 0x88CF\r
-#define GL_MATRIX16_ARB 0x88D0\r
-#define GL_MATRIX17_ARB 0x88D1\r
-#define GL_MATRIX18_ARB 0x88D2\r
-#define GL_MATRIX19_ARB 0x88D3\r
-#define GL_MATRIX20_ARB 0x88D4\r
-#define GL_MATRIX21_ARB 0x88D5\r
-#define GL_MATRIX22_ARB 0x88D6\r
-#define GL_MATRIX23_ARB 0x88D7\r
-#define GL_MATRIX24_ARB 0x88D8\r
-#define GL_MATRIX25_ARB 0x88D9\r
-#define GL_MATRIX26_ARB 0x88DA\r
-#define GL_MATRIX27_ARB 0x88DB\r
-#define GL_MATRIX28_ARB 0x88DC\r
-#define GL_MATRIX29_ARB 0x88DD\r
-#define GL_MATRIX30_ARB 0x88DE\r
-#define GL_MATRIX31_ARB 0x88DF\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDPROGRAMARBPROC) (GLenum target, GLuint program);\r
-typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMSARBPROC) (GLsizei n, const GLuint* programs);\r
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXATTRIBARRAYARBPROC) (GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXATTRIBARRAYARBPROC) (GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLGENPROGRAMSARBPROC) (GLsizei n, GLuint* programs);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMENVPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMENVPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC) (GLenum target, GLuint index, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC) (GLenum target, GLuint index, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTRINGARBPROC) (GLenum target, GLenum pname, void* string);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVARBPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVARBPROC) (GLuint index, GLenum pname, GLvoid** pointer);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVARBPROC) (GLuint index, GLenum pname, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVARBPROC) (GLuint index, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVARBPROC) (GLuint index, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMARBPROC) (GLuint program);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4DARBPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4DVARBPROC) (GLenum target, GLuint index, const GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4FARBPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETER4FVARBPROC) (GLenum target, GLuint index, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMSTRINGARBPROC) (GLenum target, GLenum format, GLsizei len, const void* string);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DARBPROC) (GLuint index, GLdouble x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVARBPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FARBPROC) (GLuint index, GLfloat x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVARBPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SARBPROC) (GLuint index, GLshort x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVARBPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DARBPROC) (GLuint index, GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVARBPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FARBPROC) (GLuint index, GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVARBPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SARBPROC) (GLuint index, GLshort x, GLshort y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVARBPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVARBPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVARBPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVARBPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NBVARBPROC) (GLuint index, const GLbyte* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NIVARBPROC) (GLuint index, const GLint* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NSVARBPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBARBPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUBVARBPROC) (GLuint index, const GLubyte* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUIVARBPROC) (GLuint index, const GLuint* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4NUSVARBPROC) (GLuint index, const GLushort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4BVARBPROC) (GLuint index, const GLbyte* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DARBPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVARBPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FARBPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVARBPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4IVARBPROC) (GLuint index, const GLint* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SARBPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVARBPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVARBPROC) (GLuint index, const GLubyte* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UIVARBPROC) (GLuint index, const GLuint* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4USVARBPROC) (GLuint index, const GLushort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERARBPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* pointer);\r
-\r
-#define glBindProgramARB GLEW_GET_FUN(__glewBindProgramARB)\r
-#define glDeleteProgramsARB GLEW_GET_FUN(__glewDeleteProgramsARB)\r
-#define glDisableVertexAttribArrayARB GLEW_GET_FUN(__glewDisableVertexAttribArrayARB)\r
-#define glEnableVertexAttribArrayARB GLEW_GET_FUN(__glewEnableVertexAttribArrayARB)\r
-#define glGenProgramsARB GLEW_GET_FUN(__glewGenProgramsARB)\r
-#define glGetProgramEnvParameterdvARB GLEW_GET_FUN(__glewGetProgramEnvParameterdvARB)\r
-#define glGetProgramEnvParameterfvARB GLEW_GET_FUN(__glewGetProgramEnvParameterfvARB)\r
-#define glGetProgramLocalParameterdvARB GLEW_GET_FUN(__glewGetProgramLocalParameterdvARB)\r
-#define glGetProgramLocalParameterfvARB GLEW_GET_FUN(__glewGetProgramLocalParameterfvARB)\r
-#define glGetProgramStringARB GLEW_GET_FUN(__glewGetProgramStringARB)\r
-#define glGetProgramivARB GLEW_GET_FUN(__glewGetProgramivARB)\r
-#define glGetVertexAttribPointervARB GLEW_GET_FUN(__glewGetVertexAttribPointervARB)\r
-#define glGetVertexAttribdvARB GLEW_GET_FUN(__glewGetVertexAttribdvARB)\r
-#define glGetVertexAttribfvARB GLEW_GET_FUN(__glewGetVertexAttribfvARB)\r
-#define glGetVertexAttribivARB GLEW_GET_FUN(__glewGetVertexAttribivARB)\r
-#define glIsProgramARB GLEW_GET_FUN(__glewIsProgramARB)\r
-#define glProgramEnvParameter4dARB GLEW_GET_FUN(__glewProgramEnvParameter4dARB)\r
-#define glProgramEnvParameter4dvARB GLEW_GET_FUN(__glewProgramEnvParameter4dvARB)\r
-#define glProgramEnvParameter4fARB GLEW_GET_FUN(__glewProgramEnvParameter4fARB)\r
-#define glProgramEnvParameter4fvARB GLEW_GET_FUN(__glewProgramEnvParameter4fvARB)\r
-#define glProgramLocalParameter4dARB GLEW_GET_FUN(__glewProgramLocalParameter4dARB)\r
-#define glProgramLocalParameter4dvARB GLEW_GET_FUN(__glewProgramLocalParameter4dvARB)\r
-#define glProgramLocalParameter4fARB GLEW_GET_FUN(__glewProgramLocalParameter4fARB)\r
-#define glProgramLocalParameter4fvARB GLEW_GET_FUN(__glewProgramLocalParameter4fvARB)\r
-#define glProgramStringARB GLEW_GET_FUN(__glewProgramStringARB)\r
-#define glVertexAttrib1dARB GLEW_GET_FUN(__glewVertexAttrib1dARB)\r
-#define glVertexAttrib1dvARB GLEW_GET_FUN(__glewVertexAttrib1dvARB)\r
-#define glVertexAttrib1fARB GLEW_GET_FUN(__glewVertexAttrib1fARB)\r
-#define glVertexAttrib1fvARB GLEW_GET_FUN(__glewVertexAttrib1fvARB)\r
-#define glVertexAttrib1sARB GLEW_GET_FUN(__glewVertexAttrib1sARB)\r
-#define glVertexAttrib1svARB GLEW_GET_FUN(__glewVertexAttrib1svARB)\r
-#define glVertexAttrib2dARB GLEW_GET_FUN(__glewVertexAttrib2dARB)\r
-#define glVertexAttrib2dvARB GLEW_GET_FUN(__glewVertexAttrib2dvARB)\r
-#define glVertexAttrib2fARB GLEW_GET_FUN(__glewVertexAttrib2fARB)\r
-#define glVertexAttrib2fvARB GLEW_GET_FUN(__glewVertexAttrib2fvARB)\r
-#define glVertexAttrib2sARB GLEW_GET_FUN(__glewVertexAttrib2sARB)\r
-#define glVertexAttrib2svARB GLEW_GET_FUN(__glewVertexAttrib2svARB)\r
-#define glVertexAttrib3dARB GLEW_GET_FUN(__glewVertexAttrib3dARB)\r
-#define glVertexAttrib3dvARB GLEW_GET_FUN(__glewVertexAttrib3dvARB)\r
-#define glVertexAttrib3fARB GLEW_GET_FUN(__glewVertexAttrib3fARB)\r
-#define glVertexAttrib3fvARB GLEW_GET_FUN(__glewVertexAttrib3fvARB)\r
-#define glVertexAttrib3sARB GLEW_GET_FUN(__glewVertexAttrib3sARB)\r
-#define glVertexAttrib3svARB GLEW_GET_FUN(__glewVertexAttrib3svARB)\r
-#define glVertexAttrib4NbvARB GLEW_GET_FUN(__glewVertexAttrib4NbvARB)\r
-#define glVertexAttrib4NivARB GLEW_GET_FUN(__glewVertexAttrib4NivARB)\r
-#define glVertexAttrib4NsvARB GLEW_GET_FUN(__glewVertexAttrib4NsvARB)\r
-#define glVertexAttrib4NubARB GLEW_GET_FUN(__glewVertexAttrib4NubARB)\r
-#define glVertexAttrib4NubvARB GLEW_GET_FUN(__glewVertexAttrib4NubvARB)\r
-#define glVertexAttrib4NuivARB GLEW_GET_FUN(__glewVertexAttrib4NuivARB)\r
-#define glVertexAttrib4NusvARB GLEW_GET_FUN(__glewVertexAttrib4NusvARB)\r
-#define glVertexAttrib4bvARB GLEW_GET_FUN(__glewVertexAttrib4bvARB)\r
-#define glVertexAttrib4dARB GLEW_GET_FUN(__glewVertexAttrib4dARB)\r
-#define glVertexAttrib4dvARB GLEW_GET_FUN(__glewVertexAttrib4dvARB)\r
-#define glVertexAttrib4fARB GLEW_GET_FUN(__glewVertexAttrib4fARB)\r
-#define glVertexAttrib4fvARB GLEW_GET_FUN(__glewVertexAttrib4fvARB)\r
-#define glVertexAttrib4ivARB GLEW_GET_FUN(__glewVertexAttrib4ivARB)\r
-#define glVertexAttrib4sARB GLEW_GET_FUN(__glewVertexAttrib4sARB)\r
-#define glVertexAttrib4svARB GLEW_GET_FUN(__glewVertexAttrib4svARB)\r
-#define glVertexAttrib4ubvARB GLEW_GET_FUN(__glewVertexAttrib4ubvARB)\r
-#define glVertexAttrib4uivARB GLEW_GET_FUN(__glewVertexAttrib4uivARB)\r
-#define glVertexAttrib4usvARB GLEW_GET_FUN(__glewVertexAttrib4usvARB)\r
-#define glVertexAttribPointerARB GLEW_GET_FUN(__glewVertexAttribPointerARB)\r
-\r
-#define GLEW_ARB_vertex_program GLEW_GET_VAR(__GLEW_ARB_vertex_program)\r
-\r
-#endif /* GL_ARB_vertex_program */\r
-\r
-/* -------------------------- GL_ARB_vertex_shader ------------------------- */\r
-\r
-#ifndef GL_ARB_vertex_shader\r
-#define GL_ARB_vertex_shader 1\r
-\r
-#define GL_VERTEX_SHADER_ARB 0x8B31\r
-#define GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB 0x8B4A\r
-#define GL_MAX_VARYING_FLOATS_ARB 0x8B4B\r
-#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C\r
-#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB 0x8B4D\r
-#define GL_OBJECT_ACTIVE_ATTRIBUTES_ARB 0x8B89\r
-#define GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB 0x8B8A\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONARBPROC) (GLhandleARB programObj, GLuint index, const GLcharARB* name);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEATTRIBARBPROC) (GLhandleARB programObj, GLuint index, GLsizei maxLength, GLsizei* length, GLint *size, GLenum *type, GLcharARB *name);\r
-typedef GLint (GLAPIENTRY * PFNGLGETATTRIBLOCATIONARBPROC) (GLhandleARB programObj, const GLcharARB* name);\r
-\r
-#define glBindAttribLocationARB GLEW_GET_FUN(__glewBindAttribLocationARB)\r
-#define glGetActiveAttribARB GLEW_GET_FUN(__glewGetActiveAttribARB)\r
-#define glGetAttribLocationARB GLEW_GET_FUN(__glewGetAttribLocationARB)\r
-\r
-#define GLEW_ARB_vertex_shader GLEW_GET_VAR(__GLEW_ARB_vertex_shader)\r
-\r
-#endif /* GL_ARB_vertex_shader */\r
-\r
-/* ------------------- GL_ARB_vertex_type_2_10_10_10_rev ------------------- */\r
-\r
-#ifndef GL_ARB_vertex_type_2_10_10_10_rev\r
-#define GL_ARB_vertex_type_2_10_10_10_rev 1\r
-\r
-#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368\r
-#define GL_INT_2_10_10_10_REV 0x8D9F\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLORP3UIPROC) (GLenum type, GLuint color);\r
-typedef void (GLAPIENTRY * PFNGLCOLORP3UIVPROC) (GLenum type, const GLuint* color);\r
-typedef void (GLAPIENTRY * PFNGLCOLORP4UIPROC) (GLenum type, GLuint color);\r
-typedef void (GLAPIENTRY * PFNGLCOLORP4UIVPROC) (GLenum type, const GLuint* color);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP1UIPROC) (GLenum texture, GLenum type, GLuint coords);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP1UIVPROC) (GLenum texture, GLenum type, const GLuint* coords);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP2UIPROC) (GLenum texture, GLenum type, GLuint coords);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP2UIVPROC) (GLenum texture, GLenum type, const GLuint* coords);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP3UIPROC) (GLenum texture, GLenum type, GLuint coords);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP3UIVPROC) (GLenum texture, GLenum type, const GLuint* coords);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP4UIPROC) (GLenum texture, GLenum type, GLuint coords);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDP4UIVPROC) (GLenum texture, GLenum type, const GLuint* coords);\r
-typedef void (GLAPIENTRY * PFNGLNORMALP3UIPROC) (GLenum type, GLuint coords);\r
-typedef void (GLAPIENTRY * PFNGLNORMALP3UIVPROC) (GLenum type, const GLuint* coords);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORP3UIPROC) (GLenum type, GLuint color);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORP3UIVPROC) (GLenum type, const GLuint* color);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP1UIPROC) (GLenum type, GLuint coords);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP1UIVPROC) (GLenum type, const GLuint* coords);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP2UIPROC) (GLenum type, GLuint coords);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP2UIVPROC) (GLenum type, const GLuint* coords);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP3UIPROC) (GLenum type, GLuint coords);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP3UIVPROC) (GLenum type, const GLuint* coords);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP4UIPROC) (GLenum type, GLuint coords);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDP4UIVPROC) (GLenum type, const GLuint* coords);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP1UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP1UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP2UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP2UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP3UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP3UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP4UIPROC) (GLuint index, GLenum type, GLboolean normalized, GLuint value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBP4UIVPROC) (GLuint index, GLenum type, GLboolean normalized, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXP2UIPROC) (GLenum type, GLuint value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXP2UIVPROC) (GLenum type, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXP3UIPROC) (GLenum type, GLuint value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXP3UIVPROC) (GLenum type, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXP4UIPROC) (GLenum type, GLuint value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXP4UIVPROC) (GLenum type, const GLuint* value);\r
-\r
-#define glColorP3ui GLEW_GET_FUN(__glewColorP3ui)\r
-#define glColorP3uiv GLEW_GET_FUN(__glewColorP3uiv)\r
-#define glColorP4ui GLEW_GET_FUN(__glewColorP4ui)\r
-#define glColorP4uiv GLEW_GET_FUN(__glewColorP4uiv)\r
-#define glMultiTexCoordP1ui GLEW_GET_FUN(__glewMultiTexCoordP1ui)\r
-#define glMultiTexCoordP1uiv GLEW_GET_FUN(__glewMultiTexCoordP1uiv)\r
-#define glMultiTexCoordP2ui GLEW_GET_FUN(__glewMultiTexCoordP2ui)\r
-#define glMultiTexCoordP2uiv GLEW_GET_FUN(__glewMultiTexCoordP2uiv)\r
-#define glMultiTexCoordP3ui GLEW_GET_FUN(__glewMultiTexCoordP3ui)\r
-#define glMultiTexCoordP3uiv GLEW_GET_FUN(__glewMultiTexCoordP3uiv)\r
-#define glMultiTexCoordP4ui GLEW_GET_FUN(__glewMultiTexCoordP4ui)\r
-#define glMultiTexCoordP4uiv GLEW_GET_FUN(__glewMultiTexCoordP4uiv)\r
-#define glNormalP3ui GLEW_GET_FUN(__glewNormalP3ui)\r
-#define glNormalP3uiv GLEW_GET_FUN(__glewNormalP3uiv)\r
-#define glSecondaryColorP3ui GLEW_GET_FUN(__glewSecondaryColorP3ui)\r
-#define glSecondaryColorP3uiv GLEW_GET_FUN(__glewSecondaryColorP3uiv)\r
-#define glTexCoordP1ui GLEW_GET_FUN(__glewTexCoordP1ui)\r
-#define glTexCoordP1uiv GLEW_GET_FUN(__glewTexCoordP1uiv)\r
-#define glTexCoordP2ui GLEW_GET_FUN(__glewTexCoordP2ui)\r
-#define glTexCoordP2uiv GLEW_GET_FUN(__glewTexCoordP2uiv)\r
-#define glTexCoordP3ui GLEW_GET_FUN(__glewTexCoordP3ui)\r
-#define glTexCoordP3uiv GLEW_GET_FUN(__glewTexCoordP3uiv)\r
-#define glTexCoordP4ui GLEW_GET_FUN(__glewTexCoordP4ui)\r
-#define glTexCoordP4uiv GLEW_GET_FUN(__glewTexCoordP4uiv)\r
-#define glVertexAttribP1ui GLEW_GET_FUN(__glewVertexAttribP1ui)\r
-#define glVertexAttribP1uiv GLEW_GET_FUN(__glewVertexAttribP1uiv)\r
-#define glVertexAttribP2ui GLEW_GET_FUN(__glewVertexAttribP2ui)\r
-#define glVertexAttribP2uiv GLEW_GET_FUN(__glewVertexAttribP2uiv)\r
-#define glVertexAttribP3ui GLEW_GET_FUN(__glewVertexAttribP3ui)\r
-#define glVertexAttribP3uiv GLEW_GET_FUN(__glewVertexAttribP3uiv)\r
-#define glVertexAttribP4ui GLEW_GET_FUN(__glewVertexAttribP4ui)\r
-#define glVertexAttribP4uiv GLEW_GET_FUN(__glewVertexAttribP4uiv)\r
-#define glVertexP2ui GLEW_GET_FUN(__glewVertexP2ui)\r
-#define glVertexP2uiv GLEW_GET_FUN(__glewVertexP2uiv)\r
-#define glVertexP3ui GLEW_GET_FUN(__glewVertexP3ui)\r
-#define glVertexP3uiv GLEW_GET_FUN(__glewVertexP3uiv)\r
-#define glVertexP4ui GLEW_GET_FUN(__glewVertexP4ui)\r
-#define glVertexP4uiv GLEW_GET_FUN(__glewVertexP4uiv)\r
-\r
-#define GLEW_ARB_vertex_type_2_10_10_10_rev GLEW_GET_VAR(__GLEW_ARB_vertex_type_2_10_10_10_rev)\r
-\r
-#endif /* GL_ARB_vertex_type_2_10_10_10_rev */\r
-\r
-/* ------------------------- GL_ARB_viewport_array ------------------------- */\r
-\r
-#ifndef GL_ARB_viewport_array\r
-#define GL_ARB_viewport_array 1\r
-\r
-#define GL_DEPTH_RANGE 0x0B70\r
-#define GL_VIEWPORT 0x0BA2\r
-#define GL_SCISSOR_BOX 0x0C10\r
-#define GL_SCISSOR_TEST 0x0C11\r
-#define GL_MAX_VIEWPORTS 0x825B\r
-#define GL_VIEWPORT_SUBPIXEL_BITS 0x825C\r
-#define GL_VIEWPORT_BOUNDS_RANGE 0x825D\r
-#define GL_LAYER_PROVOKING_VERTEX 0x825E\r
-#define GL_VIEWPORT_INDEX_PROVOKING_VERTEX 0x825F\r
-#define GL_UNDEFINED_VERTEX 0x8260\r
-#define GL_FIRST_VERTEX_CONVENTION 0x8E4D\r
-#define GL_LAST_VERTEX_CONVENTION 0x8E4E\r
-#define GL_PROVOKING_VERTEX 0x8E4F\r
-\r
-typedef void (GLAPIENTRY * PFNGLDEPTHRANGEARRAYVPROC) (GLuint first, GLsizei count, const GLclampd * v);\r
-typedef void (GLAPIENTRY * PFNGLDEPTHRANGEINDEXEDPROC) (GLuint index, GLclampd n, GLclampd f);\r
-typedef void (GLAPIENTRY * PFNGLGETDOUBLEI_VPROC) (GLenum target, GLuint index, GLdouble* data);\r
-typedef void (GLAPIENTRY * PFNGLGETFLOATI_VPROC) (GLenum target, GLuint index, GLfloat* data);\r
-typedef void (GLAPIENTRY * PFNGLSCISSORARRAYVPROC) (GLuint first, GLsizei count, const GLint * v);\r
-typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDPROC) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLSCISSORINDEXEDVPROC) (GLuint index, const GLint * v);\r
-typedef void (GLAPIENTRY * PFNGLVIEWPORTARRAYVPROC) (GLuint first, GLsizei count, const GLfloat * v);\r
-typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);\r
-typedef void (GLAPIENTRY * PFNGLVIEWPORTINDEXEDFVPROC) (GLuint index, const GLfloat * v);\r
-\r
-#define glDepthRangeArrayv GLEW_GET_FUN(__glewDepthRangeArrayv)\r
-#define glDepthRangeIndexed GLEW_GET_FUN(__glewDepthRangeIndexed)\r
-#define glGetDoublei_v GLEW_GET_FUN(__glewGetDoublei_v)\r
-#define glGetFloati_v GLEW_GET_FUN(__glewGetFloati_v)\r
-#define glScissorArrayv GLEW_GET_FUN(__glewScissorArrayv)\r
-#define glScissorIndexed GLEW_GET_FUN(__glewScissorIndexed)\r
-#define glScissorIndexedv GLEW_GET_FUN(__glewScissorIndexedv)\r
-#define glViewportArrayv GLEW_GET_FUN(__glewViewportArrayv)\r
-#define glViewportIndexedf GLEW_GET_FUN(__glewViewportIndexedf)\r
-#define glViewportIndexedfv GLEW_GET_FUN(__glewViewportIndexedfv)\r
-\r
-#define GLEW_ARB_viewport_array GLEW_GET_VAR(__GLEW_ARB_viewport_array)\r
-\r
-#endif /* GL_ARB_viewport_array */\r
-\r
-/* --------------------------- GL_ARB_window_pos --------------------------- */\r
-\r
-#ifndef GL_ARB_window_pos\r
-#define GL_ARB_window_pos 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DARBPROC) (GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVARBPROC) (const GLdouble* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FARBPROC) (GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVARBPROC) (const GLfloat* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IARBPROC) (GLint x, GLint y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVARBPROC) (const GLint* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SARBPROC) (GLshort x, GLshort y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVARBPROC) (const GLshort* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DARBPROC) (GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVARBPROC) (const GLdouble* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FARBPROC) (GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVARBPROC) (const GLfloat* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IARBPROC) (GLint x, GLint y, GLint z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVARBPROC) (const GLint* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SARBPROC) (GLshort x, GLshort y, GLshort z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVARBPROC) (const GLshort* p);\r
-\r
-#define glWindowPos2dARB GLEW_GET_FUN(__glewWindowPos2dARB)\r
-#define glWindowPos2dvARB GLEW_GET_FUN(__glewWindowPos2dvARB)\r
-#define glWindowPos2fARB GLEW_GET_FUN(__glewWindowPos2fARB)\r
-#define glWindowPos2fvARB GLEW_GET_FUN(__glewWindowPos2fvARB)\r
-#define glWindowPos2iARB GLEW_GET_FUN(__glewWindowPos2iARB)\r
-#define glWindowPos2ivARB GLEW_GET_FUN(__glewWindowPos2ivARB)\r
-#define glWindowPos2sARB GLEW_GET_FUN(__glewWindowPos2sARB)\r
-#define glWindowPos2svARB GLEW_GET_FUN(__glewWindowPos2svARB)\r
-#define glWindowPos3dARB GLEW_GET_FUN(__glewWindowPos3dARB)\r
-#define glWindowPos3dvARB GLEW_GET_FUN(__glewWindowPos3dvARB)\r
-#define glWindowPos3fARB GLEW_GET_FUN(__glewWindowPos3fARB)\r
-#define glWindowPos3fvARB GLEW_GET_FUN(__glewWindowPos3fvARB)\r
-#define glWindowPos3iARB GLEW_GET_FUN(__glewWindowPos3iARB)\r
-#define glWindowPos3ivARB GLEW_GET_FUN(__glewWindowPos3ivARB)\r
-#define glWindowPos3sARB GLEW_GET_FUN(__glewWindowPos3sARB)\r
-#define glWindowPos3svARB GLEW_GET_FUN(__glewWindowPos3svARB)\r
-\r
-#define GLEW_ARB_window_pos GLEW_GET_VAR(__GLEW_ARB_window_pos)\r
-\r
-#endif /* GL_ARB_window_pos */\r
-\r
-/* ------------------------- GL_ATIX_point_sprites ------------------------- */\r
-\r
-#ifndef GL_ATIX_point_sprites\r
-#define GL_ATIX_point_sprites 1\r
-\r
-#define GL_TEXTURE_POINT_MODE_ATIX 0x60B0\r
-#define GL_TEXTURE_POINT_ONE_COORD_ATIX 0x60B1\r
-#define GL_TEXTURE_POINT_SPRITE_ATIX 0x60B2\r
-#define GL_POINT_SPRITE_CULL_MODE_ATIX 0x60B3\r
-#define GL_POINT_SPRITE_CULL_CENTER_ATIX 0x60B4\r
-#define GL_POINT_SPRITE_CULL_CLIP_ATIX 0x60B5\r
-\r
-#define GLEW_ATIX_point_sprites GLEW_GET_VAR(__GLEW_ATIX_point_sprites)\r
-\r
-#endif /* GL_ATIX_point_sprites */\r
-\r
-/* ---------------------- GL_ATIX_texture_env_combine3 --------------------- */\r
-\r
-#ifndef GL_ATIX_texture_env_combine3\r
-#define GL_ATIX_texture_env_combine3 1\r
-\r
-#define GL_MODULATE_ADD_ATIX 0x8744\r
-#define GL_MODULATE_SIGNED_ADD_ATIX 0x8745\r
-#define GL_MODULATE_SUBTRACT_ATIX 0x8746\r
-\r
-#define GLEW_ATIX_texture_env_combine3 GLEW_GET_VAR(__GLEW_ATIX_texture_env_combine3)\r
-\r
-#endif /* GL_ATIX_texture_env_combine3 */\r
-\r
-/* ----------------------- GL_ATIX_texture_env_route ----------------------- */\r
-\r
-#ifndef GL_ATIX_texture_env_route\r
-#define GL_ATIX_texture_env_route 1\r
-\r
-#define GL_SECONDARY_COLOR_ATIX 0x8747\r
-#define GL_TEXTURE_OUTPUT_RGB_ATIX 0x8748\r
-#define GL_TEXTURE_OUTPUT_ALPHA_ATIX 0x8749\r
-\r
-#define GLEW_ATIX_texture_env_route GLEW_GET_VAR(__GLEW_ATIX_texture_env_route)\r
-\r
-#endif /* GL_ATIX_texture_env_route */\r
-\r
-/* ---------------- GL_ATIX_vertex_shader_output_point_size ---------------- */\r
-\r
-#ifndef GL_ATIX_vertex_shader_output_point_size\r
-#define GL_ATIX_vertex_shader_output_point_size 1\r
-\r
-#define GL_OUTPUT_POINT_SIZE_ATIX 0x610E\r
-\r
-#define GLEW_ATIX_vertex_shader_output_point_size GLEW_GET_VAR(__GLEW_ATIX_vertex_shader_output_point_size)\r
-\r
-#endif /* GL_ATIX_vertex_shader_output_point_size */\r
-\r
-/* -------------------------- GL_ATI_draw_buffers -------------------------- */\r
-\r
-#ifndef GL_ATI_draw_buffers\r
-#define GL_ATI_draw_buffers 1\r
-\r
-#define GL_MAX_DRAW_BUFFERS_ATI 0x8824\r
-#define GL_DRAW_BUFFER0_ATI 0x8825\r
-#define GL_DRAW_BUFFER1_ATI 0x8826\r
-#define GL_DRAW_BUFFER2_ATI 0x8827\r
-#define GL_DRAW_BUFFER3_ATI 0x8828\r
-#define GL_DRAW_BUFFER4_ATI 0x8829\r
-#define GL_DRAW_BUFFER5_ATI 0x882A\r
-#define GL_DRAW_BUFFER6_ATI 0x882B\r
-#define GL_DRAW_BUFFER7_ATI 0x882C\r
-#define GL_DRAW_BUFFER8_ATI 0x882D\r
-#define GL_DRAW_BUFFER9_ATI 0x882E\r
-#define GL_DRAW_BUFFER10_ATI 0x882F\r
-#define GL_DRAW_BUFFER11_ATI 0x8830\r
-#define GL_DRAW_BUFFER12_ATI 0x8831\r
-#define GL_DRAW_BUFFER13_ATI 0x8832\r
-#define GL_DRAW_BUFFER14_ATI 0x8833\r
-#define GL_DRAW_BUFFER15_ATI 0x8834\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWBUFFERSATIPROC) (GLsizei n, const GLenum* bufs);\r
-\r
-#define glDrawBuffersATI GLEW_GET_FUN(__glewDrawBuffersATI)\r
-\r
-#define GLEW_ATI_draw_buffers GLEW_GET_VAR(__GLEW_ATI_draw_buffers)\r
-\r
-#endif /* GL_ATI_draw_buffers */\r
-\r
-/* -------------------------- GL_ATI_element_array ------------------------- */\r
-\r
-#ifndef GL_ATI_element_array\r
-#define GL_ATI_element_array 1\r
-\r
-#define GL_ELEMENT_ARRAY_ATI 0x8768\r
-#define GL_ELEMENT_ARRAY_TYPE_ATI 0x8769\r
-#define GL_ELEMENT_ARRAY_POINTER_ATI 0x876A\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTARRAYATIPROC) (GLenum mode, GLsizei count);\r
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTARRAYATIPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count);\r
-typedef void (GLAPIENTRY * PFNGLELEMENTPOINTERATIPROC) (GLenum type, const void* pointer);\r
-\r
-#define glDrawElementArrayATI GLEW_GET_FUN(__glewDrawElementArrayATI)\r
-#define glDrawRangeElementArrayATI GLEW_GET_FUN(__glewDrawRangeElementArrayATI)\r
-#define glElementPointerATI GLEW_GET_FUN(__glewElementPointerATI)\r
-\r
-#define GLEW_ATI_element_array GLEW_GET_VAR(__GLEW_ATI_element_array)\r
-\r
-#endif /* GL_ATI_element_array */\r
-\r
-/* ------------------------- GL_ATI_envmap_bumpmap ------------------------- */\r
-\r
-#ifndef GL_ATI_envmap_bumpmap\r
-#define GL_ATI_envmap_bumpmap 1\r
-\r
-#define GL_BUMP_ROT_MATRIX_ATI 0x8775\r
-#define GL_BUMP_ROT_MATRIX_SIZE_ATI 0x8776\r
-#define GL_BUMP_NUM_TEX_UNITS_ATI 0x8777\r
-#define GL_BUMP_TEX_UNITS_ATI 0x8778\r
-#define GL_DUDV_ATI 0x8779\r
-#define GL_DU8DV8_ATI 0x877A\r
-#define GL_BUMP_ENVMAP_ATI 0x877B\r
-#define GL_BUMP_TARGET_ATI 0x877C\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param);\r
-typedef void (GLAPIENTRY * PFNGLTEXBUMPPARAMETERFVATIPROC) (GLenum pname, GLfloat *param);\r
-typedef void (GLAPIENTRY * PFNGLTEXBUMPPARAMETERIVATIPROC) (GLenum pname, GLint *param);\r
-\r
-#define glGetTexBumpParameterfvATI GLEW_GET_FUN(__glewGetTexBumpParameterfvATI)\r
-#define glGetTexBumpParameterivATI GLEW_GET_FUN(__glewGetTexBumpParameterivATI)\r
-#define glTexBumpParameterfvATI GLEW_GET_FUN(__glewTexBumpParameterfvATI)\r
-#define glTexBumpParameterivATI GLEW_GET_FUN(__glewTexBumpParameterivATI)\r
-\r
-#define GLEW_ATI_envmap_bumpmap GLEW_GET_VAR(__GLEW_ATI_envmap_bumpmap)\r
-\r
-#endif /* GL_ATI_envmap_bumpmap */\r
-\r
-/* ------------------------- GL_ATI_fragment_shader ------------------------ */\r
-\r
-#ifndef GL_ATI_fragment_shader\r
-#define GL_ATI_fragment_shader 1\r
-\r
-#define GL_RED_BIT_ATI 0x00000001\r
-#define GL_2X_BIT_ATI 0x00000001\r
-#define GL_4X_BIT_ATI 0x00000002\r
-#define GL_GREEN_BIT_ATI 0x00000002\r
-#define GL_COMP_BIT_ATI 0x00000002\r
-#define GL_BLUE_BIT_ATI 0x00000004\r
-#define GL_8X_BIT_ATI 0x00000004\r
-#define GL_NEGATE_BIT_ATI 0x00000004\r
-#define GL_BIAS_BIT_ATI 0x00000008\r
-#define GL_HALF_BIT_ATI 0x00000008\r
-#define GL_QUARTER_BIT_ATI 0x00000010\r
-#define GL_EIGHTH_BIT_ATI 0x00000020\r
-#define GL_SATURATE_BIT_ATI 0x00000040\r
-#define GL_FRAGMENT_SHADER_ATI 0x8920\r
-#define GL_REG_0_ATI 0x8921\r
-#define GL_REG_1_ATI 0x8922\r
-#define GL_REG_2_ATI 0x8923\r
-#define GL_REG_3_ATI 0x8924\r
-#define GL_REG_4_ATI 0x8925\r
-#define GL_REG_5_ATI 0x8926\r
-#define GL_CON_0_ATI 0x8941\r
-#define GL_CON_1_ATI 0x8942\r
-#define GL_CON_2_ATI 0x8943\r
-#define GL_CON_3_ATI 0x8944\r
-#define GL_CON_4_ATI 0x8945\r
-#define GL_CON_5_ATI 0x8946\r
-#define GL_CON_6_ATI 0x8947\r
-#define GL_CON_7_ATI 0x8948\r
-#define GL_MOV_ATI 0x8961\r
-#define GL_ADD_ATI 0x8963\r
-#define GL_MUL_ATI 0x8964\r
-#define GL_SUB_ATI 0x8965\r
-#define GL_DOT3_ATI 0x8966\r
-#define GL_DOT4_ATI 0x8967\r
-#define GL_MAD_ATI 0x8968\r
-#define GL_LERP_ATI 0x8969\r
-#define GL_CND_ATI 0x896A\r
-#define GL_CND0_ATI 0x896B\r
-#define GL_DOT2_ADD_ATI 0x896C\r
-#define GL_SECONDARY_INTERPOLATOR_ATI 0x896D\r
-#define GL_NUM_FRAGMENT_REGISTERS_ATI 0x896E\r
-#define GL_NUM_FRAGMENT_CONSTANTS_ATI 0x896F\r
-#define GL_NUM_PASSES_ATI 0x8970\r
-#define GL_NUM_INSTRUCTIONS_PER_PASS_ATI 0x8971\r
-#define GL_NUM_INSTRUCTIONS_TOTAL_ATI 0x8972\r
-#define GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI 0x8973\r
-#define GL_NUM_LOOPBACK_COMPONENTS_ATI 0x8974\r
-#define GL_COLOR_ALPHA_PAIRING_ATI 0x8975\r
-#define GL_SWIZZLE_STR_ATI 0x8976\r
-#define GL_SWIZZLE_STQ_ATI 0x8977\r
-#define GL_SWIZZLE_STR_DR_ATI 0x8978\r
-#define GL_SWIZZLE_STQ_DQ_ATI 0x8979\r
-#define GL_SWIZZLE_STRQ_ATI 0x897A\r
-#define GL_SWIZZLE_STRQ_DQ_ATI 0x897B\r
-\r
-typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);\r
-typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);\r
-typedef void (GLAPIENTRY * PFNGLALPHAFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);\r
-typedef void (GLAPIENTRY * PFNGLBEGINFRAGMENTSHADERATIPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLBINDFRAGMENTSHADERATIPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP1ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod);\r
-typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP2ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod);\r
-typedef void (GLAPIENTRY * PFNGLCOLORFRAGMENTOP3ATIPROC) (GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod, GLuint arg3, GLuint arg3Rep, GLuint arg3Mod);\r
-typedef void (GLAPIENTRY * PFNGLDELETEFRAGMENTSHADERATIPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLENDFRAGMENTSHADERATIPROC) (void);\r
-typedef GLuint (GLAPIENTRY * PFNGLGENFRAGMENTSHADERSATIPROC) (GLuint range);\r
-typedef void (GLAPIENTRY * PFNGLPASSTEXCOORDATIPROC) (GLuint dst, GLuint coord, GLenum swizzle);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLEMAPATIPROC) (GLuint dst, GLuint interp, GLenum swizzle);\r
-typedef void (GLAPIENTRY * PFNGLSETFRAGMENTSHADERCONSTANTATIPROC) (GLuint dst, const GLfloat* value);\r
-\r
-#define glAlphaFragmentOp1ATI GLEW_GET_FUN(__glewAlphaFragmentOp1ATI)\r
-#define glAlphaFragmentOp2ATI GLEW_GET_FUN(__glewAlphaFragmentOp2ATI)\r
-#define glAlphaFragmentOp3ATI GLEW_GET_FUN(__glewAlphaFragmentOp3ATI)\r
-#define glBeginFragmentShaderATI GLEW_GET_FUN(__glewBeginFragmentShaderATI)\r
-#define glBindFragmentShaderATI GLEW_GET_FUN(__glewBindFragmentShaderATI)\r
-#define glColorFragmentOp1ATI GLEW_GET_FUN(__glewColorFragmentOp1ATI)\r
-#define glColorFragmentOp2ATI GLEW_GET_FUN(__glewColorFragmentOp2ATI)\r
-#define glColorFragmentOp3ATI GLEW_GET_FUN(__glewColorFragmentOp3ATI)\r
-#define glDeleteFragmentShaderATI GLEW_GET_FUN(__glewDeleteFragmentShaderATI)\r
-#define glEndFragmentShaderATI GLEW_GET_FUN(__glewEndFragmentShaderATI)\r
-#define glGenFragmentShadersATI GLEW_GET_FUN(__glewGenFragmentShadersATI)\r
-#define glPassTexCoordATI GLEW_GET_FUN(__glewPassTexCoordATI)\r
-#define glSampleMapATI GLEW_GET_FUN(__glewSampleMapATI)\r
-#define glSetFragmentShaderConstantATI GLEW_GET_FUN(__glewSetFragmentShaderConstantATI)\r
-\r
-#define GLEW_ATI_fragment_shader GLEW_GET_VAR(__GLEW_ATI_fragment_shader)\r
-\r
-#endif /* GL_ATI_fragment_shader */\r
-\r
-/* ------------------------ GL_ATI_map_object_buffer ----------------------- */\r
-\r
-#ifndef GL_ATI_map_object_buffer\r
-#define GL_ATI_map_object_buffer 1\r
-\r
-typedef void* (GLAPIENTRY * PFNGLMAPOBJECTBUFFERATIPROC) (GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLUNMAPOBJECTBUFFERATIPROC) (GLuint buffer);\r
-\r
-#define glMapObjectBufferATI GLEW_GET_FUN(__glewMapObjectBufferATI)\r
-#define glUnmapObjectBufferATI GLEW_GET_FUN(__glewUnmapObjectBufferATI)\r
-\r
-#define GLEW_ATI_map_object_buffer GLEW_GET_VAR(__GLEW_ATI_map_object_buffer)\r
-\r
-#endif /* GL_ATI_map_object_buffer */\r
-\r
-/* ----------------------------- GL_ATI_meminfo ---------------------------- */\r
-\r
-#ifndef GL_ATI_meminfo\r
-#define GL_ATI_meminfo 1\r
-\r
-#define GL_VBO_FREE_MEMORY_ATI 0x87FB\r
-#define GL_TEXTURE_FREE_MEMORY_ATI 0x87FC\r
-#define GL_RENDERBUFFER_FREE_MEMORY_ATI 0x87FD\r
-\r
-#define GLEW_ATI_meminfo GLEW_GET_VAR(__GLEW_ATI_meminfo)\r
-\r
-#endif /* GL_ATI_meminfo */\r
-\r
-/* -------------------------- GL_ATI_pn_triangles -------------------------- */\r
-\r
-#ifndef GL_ATI_pn_triangles\r
-#define GL_ATI_pn_triangles 1\r
-\r
-#define GL_PN_TRIANGLES_ATI 0x87F0\r
-#define GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F1\r
-#define GL_PN_TRIANGLES_POINT_MODE_ATI 0x87F2\r
-#define GL_PN_TRIANGLES_NORMAL_MODE_ATI 0x87F3\r
-#define GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI 0x87F4\r
-#define GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI 0x87F5\r
-#define GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI 0x87F6\r
-#define GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI 0x87F7\r
-#define GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI 0x87F8\r
-\r
-typedef void (GLAPIENTRY * PFNGLPNTRIANGLESFATIPROC) (GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLPNTRIANGLESIATIPROC) (GLenum pname, GLint param);\r
-\r
-#define glPNTrianglesfATI GLEW_GET_FUN(__glewPNTrianglesfATI)\r
-#define glPNTrianglesiATI GLEW_GET_FUN(__glewPNTrianglesiATI)\r
-\r
-#define GLEW_ATI_pn_triangles GLEW_GET_VAR(__GLEW_ATI_pn_triangles)\r
-\r
-#endif /* GL_ATI_pn_triangles */\r
-\r
-/* ------------------------ GL_ATI_separate_stencil ------------------------ */\r
-\r
-#ifndef GL_ATI_separate_stencil\r
-#define GL_ATI_separate_stencil 1\r
-\r
-#define GL_STENCIL_BACK_FUNC_ATI 0x8800\r
-#define GL_STENCIL_BACK_FAIL_ATI 0x8801\r
-#define GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI 0x8802\r
-#define GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI 0x8803\r
-\r
-typedef void (GLAPIENTRY * PFNGLSTENCILFUNCSEPARATEATIPROC) (GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);\r
-typedef void (GLAPIENTRY * PFNGLSTENCILOPSEPARATEATIPROC) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);\r
-\r
-#define glStencilFuncSeparateATI GLEW_GET_FUN(__glewStencilFuncSeparateATI)\r
-#define glStencilOpSeparateATI GLEW_GET_FUN(__glewStencilOpSeparateATI)\r
-\r
-#define GLEW_ATI_separate_stencil GLEW_GET_VAR(__GLEW_ATI_separate_stencil)\r
-\r
-#endif /* GL_ATI_separate_stencil */\r
-\r
-/* ----------------------- GL_ATI_shader_texture_lod ----------------------- */\r
-\r
-#ifndef GL_ATI_shader_texture_lod\r
-#define GL_ATI_shader_texture_lod 1\r
-\r
-#define GLEW_ATI_shader_texture_lod GLEW_GET_VAR(__GLEW_ATI_shader_texture_lod)\r
-\r
-#endif /* GL_ATI_shader_texture_lod */\r
-\r
-/* ---------------------- GL_ATI_text_fragment_shader ---------------------- */\r
-\r
-#ifndef GL_ATI_text_fragment_shader\r
-#define GL_ATI_text_fragment_shader 1\r
-\r
-#define GL_TEXT_FRAGMENT_SHADER_ATI 0x8200\r
-\r
-#define GLEW_ATI_text_fragment_shader GLEW_GET_VAR(__GLEW_ATI_text_fragment_shader)\r
-\r
-#endif /* GL_ATI_text_fragment_shader */\r
-\r
-/* --------------------- GL_ATI_texture_compression_3dc -------------------- */\r
-\r
-#ifndef GL_ATI_texture_compression_3dc\r
-#define GL_ATI_texture_compression_3dc 1\r
-\r
-#define GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837\r
-\r
-#define GLEW_ATI_texture_compression_3dc GLEW_GET_VAR(__GLEW_ATI_texture_compression_3dc)\r
-\r
-#endif /* GL_ATI_texture_compression_3dc */\r
-\r
-/* ---------------------- GL_ATI_texture_env_combine3 ---------------------- */\r
-\r
-#ifndef GL_ATI_texture_env_combine3\r
-#define GL_ATI_texture_env_combine3 1\r
-\r
-#define GL_MODULATE_ADD_ATI 0x8744\r
-#define GL_MODULATE_SIGNED_ADD_ATI 0x8745\r
-#define GL_MODULATE_SUBTRACT_ATI 0x8746\r
-\r
-#define GLEW_ATI_texture_env_combine3 GLEW_GET_VAR(__GLEW_ATI_texture_env_combine3)\r
-\r
-#endif /* GL_ATI_texture_env_combine3 */\r
-\r
-/* -------------------------- GL_ATI_texture_float ------------------------- */\r
-\r
-#ifndef GL_ATI_texture_float\r
-#define GL_ATI_texture_float 1\r
-\r
-#define GL_RGBA_FLOAT32_ATI 0x8814\r
-#define GL_RGB_FLOAT32_ATI 0x8815\r
-#define GL_ALPHA_FLOAT32_ATI 0x8816\r
-#define GL_INTENSITY_FLOAT32_ATI 0x8817\r
-#define GL_LUMINANCE_FLOAT32_ATI 0x8818\r
-#define GL_LUMINANCE_ALPHA_FLOAT32_ATI 0x8819\r
-#define GL_RGBA_FLOAT16_ATI 0x881A\r
-#define GL_RGB_FLOAT16_ATI 0x881B\r
-#define GL_ALPHA_FLOAT16_ATI 0x881C\r
-#define GL_INTENSITY_FLOAT16_ATI 0x881D\r
-#define GL_LUMINANCE_FLOAT16_ATI 0x881E\r
-#define GL_LUMINANCE_ALPHA_FLOAT16_ATI 0x881F\r
-\r
-#define GLEW_ATI_texture_float GLEW_GET_VAR(__GLEW_ATI_texture_float)\r
-\r
-#endif /* GL_ATI_texture_float */\r
-\r
-/* ----------------------- GL_ATI_texture_mirror_once ---------------------- */\r
-\r
-#ifndef GL_ATI_texture_mirror_once\r
-#define GL_ATI_texture_mirror_once 1\r
-\r
-#define GL_MIRROR_CLAMP_ATI 0x8742\r
-#define GL_MIRROR_CLAMP_TO_EDGE_ATI 0x8743\r
-\r
-#define GLEW_ATI_texture_mirror_once GLEW_GET_VAR(__GLEW_ATI_texture_mirror_once)\r
-\r
-#endif /* GL_ATI_texture_mirror_once */\r
-\r
-/* ----------------------- GL_ATI_vertex_array_object ---------------------- */\r
-\r
-#ifndef GL_ATI_vertex_array_object\r
-#define GL_ATI_vertex_array_object 1\r
-\r
-#define GL_STATIC_ATI 0x8760\r
-#define GL_DYNAMIC_ATI 0x8761\r
-#define GL_PRESERVE_ATI 0x8762\r
-#define GL_DISCARD_ATI 0x8763\r
-#define GL_OBJECT_BUFFER_SIZE_ATI 0x8764\r
-#define GL_OBJECT_BUFFER_USAGE_ATI 0x8765\r
-#define GL_ARRAY_OBJECT_BUFFER_ATI 0x8766\r
-#define GL_ARRAY_OBJECT_OFFSET_ATI 0x8767\r
-\r
-typedef void (GLAPIENTRY * PFNGLARRAYOBJECTATIPROC) (GLenum array, GLint size, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);\r
-typedef void (GLAPIENTRY * PFNGLFREEOBJECTBUFFERATIPROC) (GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLGETARRAYOBJECTFVATIPROC) (GLenum array, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETARRAYOBJECTIVATIPROC) (GLenum array, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETOBJECTBUFFERFVATIPROC) (GLuint buffer, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETOBJECTBUFFERIVATIPROC) (GLuint buffer, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVARIANTARRAYOBJECTFVATIPROC) (GLuint id, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVARIANTARRAYOBJECTIVATIPROC) (GLuint id, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISOBJECTBUFFERATIPROC) (GLuint buffer);\r
-typedef GLuint (GLAPIENTRY * PFNGLNEWOBJECTBUFFERATIPROC) (GLsizei size, const void* pointer, GLenum usage);\r
-typedef void (GLAPIENTRY * PFNGLUPDATEOBJECTBUFFERATIPROC) (GLuint buffer, GLuint offset, GLsizei size, const void* pointer, GLenum preserve);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTARRAYOBJECTATIPROC) (GLuint id, GLenum type, GLsizei stride, GLuint buffer, GLuint offset);\r
-\r
-#define glArrayObjectATI GLEW_GET_FUN(__glewArrayObjectATI)\r
-#define glFreeObjectBufferATI GLEW_GET_FUN(__glewFreeObjectBufferATI)\r
-#define glGetArrayObjectfvATI GLEW_GET_FUN(__glewGetArrayObjectfvATI)\r
-#define glGetArrayObjectivATI GLEW_GET_FUN(__glewGetArrayObjectivATI)\r
-#define glGetObjectBufferfvATI GLEW_GET_FUN(__glewGetObjectBufferfvATI)\r
-#define glGetObjectBufferivATI GLEW_GET_FUN(__glewGetObjectBufferivATI)\r
-#define glGetVariantArrayObjectfvATI GLEW_GET_FUN(__glewGetVariantArrayObjectfvATI)\r
-#define glGetVariantArrayObjectivATI GLEW_GET_FUN(__glewGetVariantArrayObjectivATI)\r
-#define glIsObjectBufferATI GLEW_GET_FUN(__glewIsObjectBufferATI)\r
-#define glNewObjectBufferATI GLEW_GET_FUN(__glewNewObjectBufferATI)\r
-#define glUpdateObjectBufferATI GLEW_GET_FUN(__glewUpdateObjectBufferATI)\r
-#define glVariantArrayObjectATI GLEW_GET_FUN(__glewVariantArrayObjectATI)\r
-\r
-#define GLEW_ATI_vertex_array_object GLEW_GET_VAR(__GLEW_ATI_vertex_array_object)\r
-\r
-#endif /* GL_ATI_vertex_array_object */\r
-\r
-/* ------------------- GL_ATI_vertex_attrib_array_object ------------------- */\r
-\r
-#ifndef GL_ATI_vertex_attrib_array_object\r
-#define GL_ATI_vertex_attrib_array_object 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC) (GLuint index, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC) (GLuint index, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBARRAYOBJECTATIPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLuint buffer, GLuint offset);\r
-\r
-#define glGetVertexAttribArrayObjectfvATI GLEW_GET_FUN(__glewGetVertexAttribArrayObjectfvATI)\r
-#define glGetVertexAttribArrayObjectivATI GLEW_GET_FUN(__glewGetVertexAttribArrayObjectivATI)\r
-#define glVertexAttribArrayObjectATI GLEW_GET_FUN(__glewVertexAttribArrayObjectATI)\r
-\r
-#define GLEW_ATI_vertex_attrib_array_object GLEW_GET_VAR(__GLEW_ATI_vertex_attrib_array_object)\r
-\r
-#endif /* GL_ATI_vertex_attrib_array_object */\r
-\r
-/* ------------------------- GL_ATI_vertex_streams ------------------------- */\r
-\r
-#ifndef GL_ATI_vertex_streams\r
-#define GL_ATI_vertex_streams 1\r
-\r
-#define GL_MAX_VERTEX_STREAMS_ATI 0x876B\r
-#define GL_VERTEX_SOURCE_ATI 0x876C\r
-#define GL_VERTEX_STREAM0_ATI 0x876D\r
-#define GL_VERTEX_STREAM1_ATI 0x876E\r
-#define GL_VERTEX_STREAM2_ATI 0x876F\r
-#define GL_VERTEX_STREAM3_ATI 0x8770\r
-#define GL_VERTEX_STREAM4_ATI 0x8771\r
-#define GL_VERTEX_STREAM5_ATI 0x8772\r
-#define GL_VERTEX_STREAM6_ATI 0x8773\r
-#define GL_VERTEX_STREAM7_ATI 0x8774\r
-\r
-typedef void (GLAPIENTRY * PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC) (GLenum stream);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3BATIPROC) (GLenum stream, GLbyte x, GLbyte y, GLbyte z);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3BVATIPROC) (GLenum stream, const GLbyte *v);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3DVATIPROC) (GLenum stream, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3FVATIPROC) (GLenum stream, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3IVATIPROC) (GLenum stream, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z);\r
-typedef void (GLAPIENTRY * PFNGLNORMALSTREAM3SVATIPROC) (GLenum stream, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXBLENDENVFATIPROC) (GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXBLENDENVIATIPROC) (GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2DATIPROC) (GLenum stream, GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2DVATIPROC) (GLenum stream, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2FATIPROC) (GLenum stream, GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2FVATIPROC) (GLenum stream, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2IATIPROC) (GLenum stream, GLint x, GLint y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2IVATIPROC) (GLenum stream, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2SATIPROC) (GLenum stream, GLshort x, GLshort y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM2SVATIPROC) (GLenum stream, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3DVATIPROC) (GLenum stream, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3FVATIPROC) (GLenum stream, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3IATIPROC) (GLenum stream, GLint x, GLint y, GLint z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3IVATIPROC) (GLenum stream, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM3SVATIPROC) (GLenum stream, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4DATIPROC) (GLenum stream, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4DVATIPROC) (GLenum stream, const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4FATIPROC) (GLenum stream, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4FVATIPROC) (GLenum stream, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4IATIPROC) (GLenum stream, GLint x, GLint y, GLint z, GLint w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4IVATIPROC) (GLenum stream, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4SATIPROC) (GLenum stream, GLshort x, GLshort y, GLshort z, GLshort w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXSTREAM4SVATIPROC) (GLenum stream, const GLshort *v);\r
-\r
-#define glClientActiveVertexStreamATI GLEW_GET_FUN(__glewClientActiveVertexStreamATI)\r
-#define glNormalStream3bATI GLEW_GET_FUN(__glewNormalStream3bATI)\r
-#define glNormalStream3bvATI GLEW_GET_FUN(__glewNormalStream3bvATI)\r
-#define glNormalStream3dATI GLEW_GET_FUN(__glewNormalStream3dATI)\r
-#define glNormalStream3dvATI GLEW_GET_FUN(__glewNormalStream3dvATI)\r
-#define glNormalStream3fATI GLEW_GET_FUN(__glewNormalStream3fATI)\r
-#define glNormalStream3fvATI GLEW_GET_FUN(__glewNormalStream3fvATI)\r
-#define glNormalStream3iATI GLEW_GET_FUN(__glewNormalStream3iATI)\r
-#define glNormalStream3ivATI GLEW_GET_FUN(__glewNormalStream3ivATI)\r
-#define glNormalStream3sATI GLEW_GET_FUN(__glewNormalStream3sATI)\r
-#define glNormalStream3svATI GLEW_GET_FUN(__glewNormalStream3svATI)\r
-#define glVertexBlendEnvfATI GLEW_GET_FUN(__glewVertexBlendEnvfATI)\r
-#define glVertexBlendEnviATI GLEW_GET_FUN(__glewVertexBlendEnviATI)\r
-#define glVertexStream2dATI GLEW_GET_FUN(__glewVertexStream2dATI)\r
-#define glVertexStream2dvATI GLEW_GET_FUN(__glewVertexStream2dvATI)\r
-#define glVertexStream2fATI GLEW_GET_FUN(__glewVertexStream2fATI)\r
-#define glVertexStream2fvATI GLEW_GET_FUN(__glewVertexStream2fvATI)\r
-#define glVertexStream2iATI GLEW_GET_FUN(__glewVertexStream2iATI)\r
-#define glVertexStream2ivATI GLEW_GET_FUN(__glewVertexStream2ivATI)\r
-#define glVertexStream2sATI GLEW_GET_FUN(__glewVertexStream2sATI)\r
-#define glVertexStream2svATI GLEW_GET_FUN(__glewVertexStream2svATI)\r
-#define glVertexStream3dATI GLEW_GET_FUN(__glewVertexStream3dATI)\r
-#define glVertexStream3dvATI GLEW_GET_FUN(__glewVertexStream3dvATI)\r
-#define glVertexStream3fATI GLEW_GET_FUN(__glewVertexStream3fATI)\r
-#define glVertexStream3fvATI GLEW_GET_FUN(__glewVertexStream3fvATI)\r
-#define glVertexStream3iATI GLEW_GET_FUN(__glewVertexStream3iATI)\r
-#define glVertexStream3ivATI GLEW_GET_FUN(__glewVertexStream3ivATI)\r
-#define glVertexStream3sATI GLEW_GET_FUN(__glewVertexStream3sATI)\r
-#define glVertexStream3svATI GLEW_GET_FUN(__glewVertexStream3svATI)\r
-#define glVertexStream4dATI GLEW_GET_FUN(__glewVertexStream4dATI)\r
-#define glVertexStream4dvATI GLEW_GET_FUN(__glewVertexStream4dvATI)\r
-#define glVertexStream4fATI GLEW_GET_FUN(__glewVertexStream4fATI)\r
-#define glVertexStream4fvATI GLEW_GET_FUN(__glewVertexStream4fvATI)\r
-#define glVertexStream4iATI GLEW_GET_FUN(__glewVertexStream4iATI)\r
-#define glVertexStream4ivATI GLEW_GET_FUN(__glewVertexStream4ivATI)\r
-#define glVertexStream4sATI GLEW_GET_FUN(__glewVertexStream4sATI)\r
-#define glVertexStream4svATI GLEW_GET_FUN(__glewVertexStream4svATI)\r
-\r
-#define GLEW_ATI_vertex_streams GLEW_GET_VAR(__GLEW_ATI_vertex_streams)\r
-\r
-#endif /* GL_ATI_vertex_streams */\r
-\r
-/* --------------------------- GL_EXT_422_pixels --------------------------- */\r
-\r
-#ifndef GL_EXT_422_pixels\r
-#define GL_EXT_422_pixels 1\r
-\r
-#define GL_422_EXT 0x80CC\r
-#define GL_422_REV_EXT 0x80CD\r
-#define GL_422_AVERAGE_EXT 0x80CE\r
-#define GL_422_REV_AVERAGE_EXT 0x80CF\r
-\r
-#define GLEW_EXT_422_pixels GLEW_GET_VAR(__GLEW_EXT_422_pixels)\r
-\r
-#endif /* GL_EXT_422_pixels */\r
-\r
-/* ---------------------------- GL_EXT_Cg_shader --------------------------- */\r
-\r
-#ifndef GL_EXT_Cg_shader\r
-#define GL_EXT_Cg_shader 1\r
-\r
-#define GL_CG_VERTEX_SHADER_EXT 0x890E\r
-#define GL_CG_FRAGMENT_SHADER_EXT 0x890F\r
-\r
-#define GLEW_EXT_Cg_shader GLEW_GET_VAR(__GLEW_EXT_Cg_shader)\r
-\r
-#endif /* GL_EXT_Cg_shader */\r
-\r
-/* ------------------------------ GL_EXT_abgr ------------------------------ */\r
-\r
-#ifndef GL_EXT_abgr\r
-#define GL_EXT_abgr 1\r
-\r
-#define GL_ABGR_EXT 0x8000\r
-\r
-#define GLEW_EXT_abgr GLEW_GET_VAR(__GLEW_EXT_abgr)\r
-\r
-#endif /* GL_EXT_abgr */\r
-\r
-/* ------------------------------ GL_EXT_bgra ------------------------------ */\r
-\r
-#ifndef GL_EXT_bgra\r
-#define GL_EXT_bgra 1\r
-\r
-#define GL_BGR_EXT 0x80E0\r
-#define GL_BGRA_EXT 0x80E1\r
-\r
-#define GLEW_EXT_bgra GLEW_GET_VAR(__GLEW_EXT_bgra)\r
-\r
-#endif /* GL_EXT_bgra */\r
-\r
-/* ------------------------ GL_EXT_bindable_uniform ------------------------ */\r
-\r
-#ifndef GL_EXT_bindable_uniform\r
-#define GL_EXT_bindable_uniform 1\r
-\r
-#define GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT 0x8DE2\r
-#define GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT 0x8DE3\r
-#define GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT 0x8DE4\r
-#define GL_MAX_BINDABLE_UNIFORM_SIZE_EXT 0x8DED\r
-#define GL_UNIFORM_BUFFER_EXT 0x8DEE\r
-#define GL_UNIFORM_BUFFER_BINDING_EXT 0x8DEF\r
-\r
-typedef GLint (GLAPIENTRY * PFNGLGETUNIFORMBUFFERSIZEEXTPROC) (GLuint program, GLint location);\r
-typedef GLintptr (GLAPIENTRY * PFNGLGETUNIFORMOFFSETEXTPROC) (GLuint program, GLint location);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMBUFFEREXTPROC) (GLuint program, GLint location, GLuint buffer);\r
-\r
-#define glGetUniformBufferSizeEXT GLEW_GET_FUN(__glewGetUniformBufferSizeEXT)\r
-#define glGetUniformOffsetEXT GLEW_GET_FUN(__glewGetUniformOffsetEXT)\r
-#define glUniformBufferEXT GLEW_GET_FUN(__glewUniformBufferEXT)\r
-\r
-#define GLEW_EXT_bindable_uniform GLEW_GET_VAR(__GLEW_EXT_bindable_uniform)\r
-\r
-#endif /* GL_EXT_bindable_uniform */\r
-\r
-/* --------------------------- GL_EXT_blend_color -------------------------- */\r
-\r
-#ifndef GL_EXT_blend_color\r
-#define GL_EXT_blend_color 1\r
-\r
-#define GL_CONSTANT_COLOR_EXT 0x8001\r
-#define GL_ONE_MINUS_CONSTANT_COLOR_EXT 0x8002\r
-#define GL_CONSTANT_ALPHA_EXT 0x8003\r
-#define GL_ONE_MINUS_CONSTANT_ALPHA_EXT 0x8004\r
-#define GL_BLEND_COLOR_EXT 0x8005\r
-\r
-typedef void (GLAPIENTRY * PFNGLBLENDCOLOREXTPROC) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);\r
-\r
-#define glBlendColorEXT GLEW_GET_FUN(__glewBlendColorEXT)\r
-\r
-#define GLEW_EXT_blend_color GLEW_GET_VAR(__GLEW_EXT_blend_color)\r
-\r
-#endif /* GL_EXT_blend_color */\r
-\r
-/* --------------------- GL_EXT_blend_equation_separate -------------------- */\r
-\r
-#ifndef GL_EXT_blend_equation_separate\r
-#define GL_EXT_blend_equation_separate 1\r
-\r
-#define GL_BLEND_EQUATION_RGB_EXT 0x8009\r
-#define GL_BLEND_EQUATION_ALPHA_EXT 0x883D\r
-\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONSEPARATEEXTPROC) (GLenum modeRGB, GLenum modeAlpha);\r
-\r
-#define glBlendEquationSeparateEXT GLEW_GET_FUN(__glewBlendEquationSeparateEXT)\r
-\r
-#define GLEW_EXT_blend_equation_separate GLEW_GET_VAR(__GLEW_EXT_blend_equation_separate)\r
-\r
-#endif /* GL_EXT_blend_equation_separate */\r
-\r
-/* ----------------------- GL_EXT_blend_func_separate ---------------------- */\r
-\r
-#ifndef GL_EXT_blend_func_separate\r
-#define GL_EXT_blend_func_separate 1\r
-\r
-#define GL_BLEND_DST_RGB_EXT 0x80C8\r
-#define GL_BLEND_SRC_RGB_EXT 0x80C9\r
-#define GL_BLEND_DST_ALPHA_EXT 0x80CA\r
-#define GL_BLEND_SRC_ALPHA_EXT 0x80CB\r
-\r
-typedef void (GLAPIENTRY * PFNGLBLENDFUNCSEPARATEEXTPROC) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);\r
-\r
-#define glBlendFuncSeparateEXT GLEW_GET_FUN(__glewBlendFuncSeparateEXT)\r
-\r
-#define GLEW_EXT_blend_func_separate GLEW_GET_VAR(__GLEW_EXT_blend_func_separate)\r
-\r
-#endif /* GL_EXT_blend_func_separate */\r
-\r
-/* ------------------------- GL_EXT_blend_logic_op ------------------------- */\r
-\r
-#ifndef GL_EXT_blend_logic_op\r
-#define GL_EXT_blend_logic_op 1\r
-\r
-#define GLEW_EXT_blend_logic_op GLEW_GET_VAR(__GLEW_EXT_blend_logic_op)\r
-\r
-#endif /* GL_EXT_blend_logic_op */\r
-\r
-/* -------------------------- GL_EXT_blend_minmax -------------------------- */\r
-\r
-#ifndef GL_EXT_blend_minmax\r
-#define GL_EXT_blend_minmax 1\r
-\r
-#define GL_FUNC_ADD_EXT 0x8006\r
-#define GL_MIN_EXT 0x8007\r
-#define GL_MAX_EXT 0x8008\r
-#define GL_BLEND_EQUATION_EXT 0x8009\r
-\r
-typedef void (GLAPIENTRY * PFNGLBLENDEQUATIONEXTPROC) (GLenum mode);\r
-\r
-#define glBlendEquationEXT GLEW_GET_FUN(__glewBlendEquationEXT)\r
-\r
-#define GLEW_EXT_blend_minmax GLEW_GET_VAR(__GLEW_EXT_blend_minmax)\r
-\r
-#endif /* GL_EXT_blend_minmax */\r
-\r
-/* ------------------------- GL_EXT_blend_subtract ------------------------- */\r
-\r
-#ifndef GL_EXT_blend_subtract\r
-#define GL_EXT_blend_subtract 1\r
-\r
-#define GL_FUNC_SUBTRACT_EXT 0x800A\r
-#define GL_FUNC_REVERSE_SUBTRACT_EXT 0x800B\r
-\r
-#define GLEW_EXT_blend_subtract GLEW_GET_VAR(__GLEW_EXT_blend_subtract)\r
-\r
-#endif /* GL_EXT_blend_subtract */\r
-\r
-/* ------------------------ GL_EXT_clip_volume_hint ------------------------ */\r
-\r
-#ifndef GL_EXT_clip_volume_hint\r
-#define GL_EXT_clip_volume_hint 1\r
-\r
-#define GL_CLIP_VOLUME_CLIPPING_HINT_EXT 0x80F0\r
-\r
-#define GLEW_EXT_clip_volume_hint GLEW_GET_VAR(__GLEW_EXT_clip_volume_hint)\r
-\r
-#endif /* GL_EXT_clip_volume_hint */\r
-\r
-/* ------------------------------ GL_EXT_cmyka ----------------------------- */\r
-\r
-#ifndef GL_EXT_cmyka\r
-#define GL_EXT_cmyka 1\r
-\r
-#define GL_CMYK_EXT 0x800C\r
-#define GL_CMYKA_EXT 0x800D\r
-#define GL_PACK_CMYK_HINT_EXT 0x800E\r
-#define GL_UNPACK_CMYK_HINT_EXT 0x800F\r
-\r
-#define GLEW_EXT_cmyka GLEW_GET_VAR(__GLEW_EXT_cmyka)\r
-\r
-#endif /* GL_EXT_cmyka */\r
-\r
-/* ------------------------- GL_EXT_color_subtable ------------------------- */\r
-\r
-#ifndef GL_EXT_color_subtable\r
-#define GL_EXT_color_subtable 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOPYCOLORSUBTABLEEXTPROC) (GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);\r
-\r
-#define glColorSubTableEXT GLEW_GET_FUN(__glewColorSubTableEXT)\r
-#define glCopyColorSubTableEXT GLEW_GET_FUN(__glewCopyColorSubTableEXT)\r
-\r
-#define GLEW_EXT_color_subtable GLEW_GET_VAR(__GLEW_EXT_color_subtable)\r
-\r
-#endif /* GL_EXT_color_subtable */\r
-\r
-/* ---------------------- GL_EXT_compiled_vertex_array --------------------- */\r
-\r
-#ifndef GL_EXT_compiled_vertex_array\r
-#define GL_EXT_compiled_vertex_array 1\r
-\r
-#define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT 0x81A8\r
-#define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT 0x81A9\r
-\r
-typedef void (GLAPIENTRY * PFNGLLOCKARRAYSEXTPROC) (GLint first, GLsizei count);\r
-typedef void (GLAPIENTRY * PFNGLUNLOCKARRAYSEXTPROC) (void);\r
-\r
-#define glLockArraysEXT GLEW_GET_FUN(__glewLockArraysEXT)\r
-#define glUnlockArraysEXT GLEW_GET_FUN(__glewUnlockArraysEXT)\r
-\r
-#define GLEW_EXT_compiled_vertex_array GLEW_GET_VAR(__GLEW_EXT_compiled_vertex_array)\r
-\r
-#endif /* GL_EXT_compiled_vertex_array */\r
-\r
-/* --------------------------- GL_EXT_convolution -------------------------- */\r
-\r
-#ifndef GL_EXT_convolution\r
-#define GL_EXT_convolution 1\r
-\r
-#define GL_CONVOLUTION_1D_EXT 0x8010\r
-#define GL_CONVOLUTION_2D_EXT 0x8011\r
-#define GL_SEPARABLE_2D_EXT 0x8012\r
-#define GL_CONVOLUTION_BORDER_MODE_EXT 0x8013\r
-#define GL_CONVOLUTION_FILTER_SCALE_EXT 0x8014\r
-#define GL_CONVOLUTION_FILTER_BIAS_EXT 0x8015\r
-#define GL_REDUCE_EXT 0x8016\r
-#define GL_CONVOLUTION_FORMAT_EXT 0x8017\r
-#define GL_CONVOLUTION_WIDTH_EXT 0x8018\r
-#define GL_CONVOLUTION_HEIGHT_EXT 0x8019\r
-#define GL_MAX_CONVOLUTION_WIDTH_EXT 0x801A\r
-#define GL_MAX_CONVOLUTION_HEIGHT_EXT 0x801B\r
-#define GL_POST_CONVOLUTION_RED_SCALE_EXT 0x801C\r
-#define GL_POST_CONVOLUTION_GREEN_SCALE_EXT 0x801D\r
-#define GL_POST_CONVOLUTION_BLUE_SCALE_EXT 0x801E\r
-#define GL_POST_CONVOLUTION_ALPHA_SCALE_EXT 0x801F\r
-#define GL_POST_CONVOLUTION_RED_BIAS_EXT 0x8020\r
-#define GL_POST_CONVOLUTION_GREEN_BIAS_EXT 0x8021\r
-#define GL_POST_CONVOLUTION_BLUE_BIAS_EXT 0x8022\r
-#define GL_POST_CONVOLUTION_ALPHA_BIAS_EXT 0x8023\r
-\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* image);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* image);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFEXTPROC) (GLenum target, GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIEXTPROC) (GLenum target, GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, void* image);\r
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETSEPARABLEFILTEREXTPROC) (GLenum target, GLenum format, GLenum type, void* row, void* column, void* span);\r
-typedef void (GLAPIENTRY * PFNGLSEPARABLEFILTER2DEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* row, const void* column);\r
-\r
-#define glConvolutionFilter1DEXT GLEW_GET_FUN(__glewConvolutionFilter1DEXT)\r
-#define glConvolutionFilter2DEXT GLEW_GET_FUN(__glewConvolutionFilter2DEXT)\r
-#define glConvolutionParameterfEXT GLEW_GET_FUN(__glewConvolutionParameterfEXT)\r
-#define glConvolutionParameterfvEXT GLEW_GET_FUN(__glewConvolutionParameterfvEXT)\r
-#define glConvolutionParameteriEXT GLEW_GET_FUN(__glewConvolutionParameteriEXT)\r
-#define glConvolutionParameterivEXT GLEW_GET_FUN(__glewConvolutionParameterivEXT)\r
-#define glCopyConvolutionFilter1DEXT GLEW_GET_FUN(__glewCopyConvolutionFilter1DEXT)\r
-#define glCopyConvolutionFilter2DEXT GLEW_GET_FUN(__glewCopyConvolutionFilter2DEXT)\r
-#define glGetConvolutionFilterEXT GLEW_GET_FUN(__glewGetConvolutionFilterEXT)\r
-#define glGetConvolutionParameterfvEXT GLEW_GET_FUN(__glewGetConvolutionParameterfvEXT)\r
-#define glGetConvolutionParameterivEXT GLEW_GET_FUN(__glewGetConvolutionParameterivEXT)\r
-#define glGetSeparableFilterEXT GLEW_GET_FUN(__glewGetSeparableFilterEXT)\r
-#define glSeparableFilter2DEXT GLEW_GET_FUN(__glewSeparableFilter2DEXT)\r
-\r
-#define GLEW_EXT_convolution GLEW_GET_VAR(__GLEW_EXT_convolution)\r
-\r
-#endif /* GL_EXT_convolution */\r
-\r
-/* ------------------------ GL_EXT_coordinate_frame ------------------------ */\r
-\r
-#ifndef GL_EXT_coordinate_frame\r
-#define GL_EXT_coordinate_frame 1\r
-\r
-#define GL_TANGENT_ARRAY_EXT 0x8439\r
-#define GL_BINORMAL_ARRAY_EXT 0x843A\r
-#define GL_CURRENT_TANGENT_EXT 0x843B\r
-#define GL_CURRENT_BINORMAL_EXT 0x843C\r
-#define GL_TANGENT_ARRAY_TYPE_EXT 0x843E\r
-#define GL_TANGENT_ARRAY_STRIDE_EXT 0x843F\r
-#define GL_BINORMAL_ARRAY_TYPE_EXT 0x8440\r
-#define GL_BINORMAL_ARRAY_STRIDE_EXT 0x8441\r
-#define GL_TANGENT_ARRAY_POINTER_EXT 0x8442\r
-#define GL_BINORMAL_ARRAY_POINTER_EXT 0x8443\r
-#define GL_MAP1_TANGENT_EXT 0x8444\r
-#define GL_MAP2_TANGENT_EXT 0x8445\r
-#define GL_MAP1_BINORMAL_EXT 0x8446\r
-#define GL_MAP2_BINORMAL_EXT 0x8447\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLTANGENTPOINTEREXTPROC) (GLenum type, GLsizei stride, void* pointer);\r
-\r
-#define glBinormalPointerEXT GLEW_GET_FUN(__glewBinormalPointerEXT)\r
-#define glTangentPointerEXT GLEW_GET_FUN(__glewTangentPointerEXT)\r
-\r
-#define GLEW_EXT_coordinate_frame GLEW_GET_VAR(__GLEW_EXT_coordinate_frame)\r
-\r
-#endif /* GL_EXT_coordinate_frame */\r
-\r
-/* -------------------------- GL_EXT_copy_texture -------------------------- */\r
-\r
-#ifndef GL_EXT_copy_texture\r
-#define GL_EXT_copy_texture 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXIMAGE1DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXIMAGE2DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);\r
-\r
-#define glCopyTexImage1DEXT GLEW_GET_FUN(__glewCopyTexImage1DEXT)\r
-#define glCopyTexImage2DEXT GLEW_GET_FUN(__glewCopyTexImage2DEXT)\r
-#define glCopyTexSubImage1DEXT GLEW_GET_FUN(__glewCopyTexSubImage1DEXT)\r
-#define glCopyTexSubImage2DEXT GLEW_GET_FUN(__glewCopyTexSubImage2DEXT)\r
-#define glCopyTexSubImage3DEXT GLEW_GET_FUN(__glewCopyTexSubImage3DEXT)\r
-\r
-#define GLEW_EXT_copy_texture GLEW_GET_VAR(__GLEW_EXT_copy_texture)\r
-\r
-#endif /* GL_EXT_copy_texture */\r
-\r
-/* --------------------------- GL_EXT_cull_vertex -------------------------- */\r
-\r
-#ifndef GL_EXT_cull_vertex\r
-#define GL_EXT_cull_vertex 1\r
-\r
-#define GL_CULL_VERTEX_EXT 0x81AA\r
-#define GL_CULL_VERTEX_EYE_POSITION_EXT 0x81AB\r
-#define GL_CULL_VERTEX_OBJECT_POSITION_EXT 0x81AC\r
-\r
-typedef void (GLAPIENTRY * PFNGLCULLPARAMETERDVEXTPROC) (GLenum pname, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLCULLPARAMETERFVEXTPROC) (GLenum pname, GLfloat* params);\r
-\r
-#define glCullParameterdvEXT GLEW_GET_FUN(__glewCullParameterdvEXT)\r
-#define glCullParameterfvEXT GLEW_GET_FUN(__glewCullParameterfvEXT)\r
-\r
-#define GLEW_EXT_cull_vertex GLEW_GET_VAR(__GLEW_EXT_cull_vertex)\r
-\r
-#endif /* GL_EXT_cull_vertex */\r
-\r
-/* ------------------------ GL_EXT_depth_bounds_test ----------------------- */\r
-\r
-#ifndef GL_EXT_depth_bounds_test\r
-#define GL_EXT_depth_bounds_test 1\r
-\r
-#define GL_DEPTH_BOUNDS_TEST_EXT 0x8890\r
-#define GL_DEPTH_BOUNDS_EXT 0x8891\r
-\r
-typedef void (GLAPIENTRY * PFNGLDEPTHBOUNDSEXTPROC) (GLclampd zmin, GLclampd zmax);\r
-\r
-#define glDepthBoundsEXT GLEW_GET_FUN(__glewDepthBoundsEXT)\r
-\r
-#define GLEW_EXT_depth_bounds_test GLEW_GET_VAR(__GLEW_EXT_depth_bounds_test)\r
-\r
-#endif /* GL_EXT_depth_bounds_test */\r
-\r
-/* ----------------------- GL_EXT_direct_state_access ---------------------- */\r
-\r
-#ifndef GL_EXT_direct_state_access\r
-#define GL_EXT_direct_state_access 1\r
-\r
-#define GL_PROGRAM_MATRIX_EXT 0x8E2D\r
-#define GL_TRANSPOSE_PROGRAM_MATRIX_EXT 0x8E2E\r
-#define GL_PROGRAM_MATRIX_STACK_DEPTH_EXT 0x8E2F\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDMULTITEXTUREEXTPROC) (GLenum texunit, GLenum target, GLuint texture);\r
-typedef GLenum (GLAPIENTRY * PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC) (GLuint framebuffer, GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);\r
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);\r
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLDISABLECLIENTSTATEIEXTPROC) (GLenum array, GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC) (GLuint vaobj, GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLDISABLEVERTEXARRAYEXTPROC) (GLuint vaobj, GLenum array);\r
-typedef void (GLAPIENTRY * PFNGLENABLECLIENTSTATEINDEXEDEXTPROC) (GLenum array, GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLENABLECLIENTSTATEIEXTPROC) (GLenum array, GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYATTRIBEXTPROC) (GLuint vaobj, GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLENABLEVERTEXARRAYEXTPROC) (GLuint vaobj, GLenum array);\r
-typedef void (GLAPIENTRY * PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC) (GLuint framebuffer, GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC) (GLuint framebuffer, GLsizei n, const GLenum* bufs);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERREADBUFFEREXTPROC) (GLuint framebuffer, GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLGENERATEMULTITEXMIPMAPEXTPROC) (GLenum texunit, GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLGENERATETEXTUREMIPMAPEXTPROC) (GLuint texture, GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, void* img);\r
-typedef void (GLAPIENTRY * PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, void* img);\r
-typedef void (GLAPIENTRY * PFNGLGETDOUBLEINDEXEDVEXTPROC) (GLenum target, GLuint index, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETDOUBLEI_VEXTPROC) (GLenum pname, GLuint index, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFLOATINDEXEDVEXTPROC) (GLenum target, GLuint index, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFLOATI_VEXTPROC) (GLenum pname, GLuint index, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum pname, GLint* param);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXIMAGEEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum format, GLenum type, void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLint level, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC) (GLuint buffer, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPOINTERVEXTPROC) (GLuint buffer, GLenum pname, void** params);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, void* data);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum pname, void* string);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDPROGRAMIVEXTPROC) (GLuint program, GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC) (GLuint renderbuffer, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETPOINTERINDEXEDVEXTPROC) (GLenum target, GLuint index, GLvoid** params);\r
-typedef void (GLAPIENTRY * PFNGLGETPOINTERI_VEXTPROC) (GLenum pname, GLuint index, GLvoid** params);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREIMAGEEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum format, GLenum type, void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLint level, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC) (GLuint vaobj, GLuint index, GLenum pname, GLint* param);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYINTEGERVEXTPROC) (GLuint vaobj, GLenum pname, GLint* param);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC) (GLuint vaobj, GLuint index, GLenum pname, GLvoid** param);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXARRAYPOINTERVEXTPROC) (GLuint vaobj, GLenum pname, GLvoid** param);\r
-typedef GLvoid * (GLAPIENTRY * PFNGLMAPNAMEDBUFFEREXTPROC) (GLuint buffer, GLenum access);\r
-typedef GLvoid * (GLAPIENTRY * PFNGLMAPNAMEDBUFFERRANGEEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr length, GLbitfield access);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXFRUSTUMEXTPROC) (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADIDENTITYEXTPROC) (GLenum matrixMode);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSEDEXTPROC) (GLenum matrixMode, const GLdouble* m);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADTRANSPOSEFEXTPROC) (GLenum matrixMode, const GLfloat* m);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADDEXTPROC) (GLenum matrixMode, const GLdouble* m);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXLOADFEXTPROC) (GLenum matrixMode, const GLfloat* m);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSEDEXTPROC) (GLenum matrixMode, const GLdouble* m);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXMULTTRANSPOSEFEXTPROC) (GLenum matrixMode, const GLfloat* m);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXMULTDEXTPROC) (GLenum matrixMode, const GLdouble* m);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXMULTFEXTPROC) (GLenum matrixMode, const GLfloat* m);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXORTHOEXTPROC) (GLenum matrixMode, GLdouble l, GLdouble r, GLdouble b, GLdouble t, GLdouble n, GLdouble f);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXPOPEXTPROC) (GLenum matrixMode);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXPUSHEXTPROC) (GLenum matrixMode);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXROTATEDEXTPROC) (GLenum matrixMode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXROTATEFEXTPROC) (GLenum matrixMode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXSCALEDEXTPROC) (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXSCALEFEXTPROC) (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXTRANSLATEDEXTPROC) (GLenum matrixMode, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLMATRIXTRANSLATEFEXTPROC) (GLenum matrixMode, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXBUFFEREXTPROC) (GLenum texunit, GLenum target, GLenum internalformat, GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORDPOINTEREXTPROC) (GLenum texunit, GLint size, GLenum type, GLsizei stride, const void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXENVFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXENVFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXENVIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXENVIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENDEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLdouble param);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENDVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENFEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENFVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENIEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXGENIVEXTPROC) (GLenum texunit, GLenum coord, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIUIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERFEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERFVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLfloat* param);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIEXTPROC) (GLenum texunit, GLenum target, GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXPARAMETERIVEXTPROC) (GLenum texunit, GLenum target, GLenum pname, const GLint* param);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXRENDERBUFFEREXTPROC) (GLenum texunit, GLenum target, GLuint renderbuffer);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE1DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE2DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXSUBIMAGE3DEXTPROC) (GLenum texunit, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERDATAEXTPROC) (GLuint buffer, GLsizeiptr size, const void* data, GLenum usage);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDBUFFERSUBDATAEXTPROC) (GLuint buffer, GLintptr offset, GLsizeiptr size, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC) (GLuint readBuffer, GLuint writeBuffer, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC) (GLuint framebuffer, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC) (GLuint framebuffer, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLenum face);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC) (GLuint framebuffer, GLenum attachment, GLuint texture, GLint level, GLint layer);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC) (GLuint program, GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC) (GLuint program, GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC) (GLuint program, GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC) (GLuint program, GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, const GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC) (GLuint program, GLenum target, GLuint index, GLsizei count, const GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDPROGRAMSTRINGEXTPROC) (GLuint program, GLenum target, GLenum format, GLsizei len, const void* string);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC) (GLuint renderbuffer, GLenum internalformat, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC) (GLuint renderbuffer, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLuint renderbuffer, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat v0);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint v0);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIEXTPROC) (GLuint program, GLint location, GLuint v0);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIEXTPROC) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UIVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLuint* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC) (GLbitfield mask);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREBUFFEREXTPROC) (GLuint texture, GLenum target, GLenum internalformat, GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIUIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERFVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLfloat* param);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIEXTPROC) (GLuint texture, GLenum target, GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREPARAMETERIVEXTPROC) (GLuint texture, GLenum target, GLenum pname, const GLint* param);\r
-typedef void (GLAPIENTRY * PFNGLTEXTURERENDERBUFFEREXTPROC) (GLuint texture, GLenum target, GLuint renderbuffer);\r
-typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE1DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE2DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLTEXTURESUBIMAGE3DEXTPROC) (GLuint texture, GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);\r
-typedef GLboolean (GLAPIENTRY * PFNGLUNMAPNAMEDBUFFEREXTPROC) (GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYCOLOROFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYINDEXOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum texunit, GLint size, GLenum type, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYNORMALOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLenum type, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLint size, GLenum type, GLsizei stride, GLintptr offset);\r
-\r
-#define glBindMultiTextureEXT GLEW_GET_FUN(__glewBindMultiTextureEXT)\r
-#define glCheckNamedFramebufferStatusEXT GLEW_GET_FUN(__glewCheckNamedFramebufferStatusEXT)\r
-#define glClientAttribDefaultEXT GLEW_GET_FUN(__glewClientAttribDefaultEXT)\r
-#define glCompressedMultiTexImage1DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage1DEXT)\r
-#define glCompressedMultiTexImage2DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage2DEXT)\r
-#define glCompressedMultiTexImage3DEXT GLEW_GET_FUN(__glewCompressedMultiTexImage3DEXT)\r
-#define glCompressedMultiTexSubImage1DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage1DEXT)\r
-#define glCompressedMultiTexSubImage2DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage2DEXT)\r
-#define glCompressedMultiTexSubImage3DEXT GLEW_GET_FUN(__glewCompressedMultiTexSubImage3DEXT)\r
-#define glCompressedTextureImage1DEXT GLEW_GET_FUN(__glewCompressedTextureImage1DEXT)\r
-#define glCompressedTextureImage2DEXT GLEW_GET_FUN(__glewCompressedTextureImage2DEXT)\r
-#define glCompressedTextureImage3DEXT GLEW_GET_FUN(__glewCompressedTextureImage3DEXT)\r
-#define glCompressedTextureSubImage1DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage1DEXT)\r
-#define glCompressedTextureSubImage2DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage2DEXT)\r
-#define glCompressedTextureSubImage3DEXT GLEW_GET_FUN(__glewCompressedTextureSubImage3DEXT)\r
-#define glCopyMultiTexImage1DEXT GLEW_GET_FUN(__glewCopyMultiTexImage1DEXT)\r
-#define glCopyMultiTexImage2DEXT GLEW_GET_FUN(__glewCopyMultiTexImage2DEXT)\r
-#define glCopyMultiTexSubImage1DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage1DEXT)\r
-#define glCopyMultiTexSubImage2DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage2DEXT)\r
-#define glCopyMultiTexSubImage3DEXT GLEW_GET_FUN(__glewCopyMultiTexSubImage3DEXT)\r
-#define glCopyTextureImage1DEXT GLEW_GET_FUN(__glewCopyTextureImage1DEXT)\r
-#define glCopyTextureImage2DEXT GLEW_GET_FUN(__glewCopyTextureImage2DEXT)\r
-#define glCopyTextureSubImage1DEXT GLEW_GET_FUN(__glewCopyTextureSubImage1DEXT)\r
-#define glCopyTextureSubImage2DEXT GLEW_GET_FUN(__glewCopyTextureSubImage2DEXT)\r
-#define glCopyTextureSubImage3DEXT GLEW_GET_FUN(__glewCopyTextureSubImage3DEXT)\r
-#define glDisableClientStateIndexedEXT GLEW_GET_FUN(__glewDisableClientStateIndexedEXT)\r
-#define glDisableClientStateiEXT GLEW_GET_FUN(__glewDisableClientStateiEXT)\r
-#define glDisableVertexArrayAttribEXT GLEW_GET_FUN(__glewDisableVertexArrayAttribEXT)\r
-#define glDisableVertexArrayEXT GLEW_GET_FUN(__glewDisableVertexArrayEXT)\r
-#define glEnableClientStateIndexedEXT GLEW_GET_FUN(__glewEnableClientStateIndexedEXT)\r
-#define glEnableClientStateiEXT GLEW_GET_FUN(__glewEnableClientStateiEXT)\r
-#define glEnableVertexArrayAttribEXT GLEW_GET_FUN(__glewEnableVertexArrayAttribEXT)\r
-#define glEnableVertexArrayEXT GLEW_GET_FUN(__glewEnableVertexArrayEXT)\r
-#define glFlushMappedNamedBufferRangeEXT GLEW_GET_FUN(__glewFlushMappedNamedBufferRangeEXT)\r
-#define glFramebufferDrawBufferEXT GLEW_GET_FUN(__glewFramebufferDrawBufferEXT)\r
-#define glFramebufferDrawBuffersEXT GLEW_GET_FUN(__glewFramebufferDrawBuffersEXT)\r
-#define glFramebufferReadBufferEXT GLEW_GET_FUN(__glewFramebufferReadBufferEXT)\r
-#define glGenerateMultiTexMipmapEXT GLEW_GET_FUN(__glewGenerateMultiTexMipmapEXT)\r
-#define glGenerateTextureMipmapEXT GLEW_GET_FUN(__glewGenerateTextureMipmapEXT)\r
-#define glGetCompressedMultiTexImageEXT GLEW_GET_FUN(__glewGetCompressedMultiTexImageEXT)\r
-#define glGetCompressedTextureImageEXT GLEW_GET_FUN(__glewGetCompressedTextureImageEXT)\r
-#define glGetDoubleIndexedvEXT GLEW_GET_FUN(__glewGetDoubleIndexedvEXT)\r
-#define glGetDoublei_vEXT GLEW_GET_FUN(__glewGetDoublei_vEXT)\r
-#define glGetFloatIndexedvEXT GLEW_GET_FUN(__glewGetFloatIndexedvEXT)\r
-#define glGetFloati_vEXT GLEW_GET_FUN(__glewGetFloati_vEXT)\r
-#define glGetFramebufferParameterivEXT GLEW_GET_FUN(__glewGetFramebufferParameterivEXT)\r
-#define glGetMultiTexEnvfvEXT GLEW_GET_FUN(__glewGetMultiTexEnvfvEXT)\r
-#define glGetMultiTexEnvivEXT GLEW_GET_FUN(__glewGetMultiTexEnvivEXT)\r
-#define glGetMultiTexGendvEXT GLEW_GET_FUN(__glewGetMultiTexGendvEXT)\r
-#define glGetMultiTexGenfvEXT GLEW_GET_FUN(__glewGetMultiTexGenfvEXT)\r
-#define glGetMultiTexGenivEXT GLEW_GET_FUN(__glewGetMultiTexGenivEXT)\r
-#define glGetMultiTexImageEXT GLEW_GET_FUN(__glewGetMultiTexImageEXT)\r
-#define glGetMultiTexLevelParameterfvEXT GLEW_GET_FUN(__glewGetMultiTexLevelParameterfvEXT)\r
-#define glGetMultiTexLevelParameterivEXT GLEW_GET_FUN(__glewGetMultiTexLevelParameterivEXT)\r
-#define glGetMultiTexParameterIivEXT GLEW_GET_FUN(__glewGetMultiTexParameterIivEXT)\r
-#define glGetMultiTexParameterIuivEXT GLEW_GET_FUN(__glewGetMultiTexParameterIuivEXT)\r
-#define glGetMultiTexParameterfvEXT GLEW_GET_FUN(__glewGetMultiTexParameterfvEXT)\r
-#define glGetMultiTexParameterivEXT GLEW_GET_FUN(__glewGetMultiTexParameterivEXT)\r
-#define glGetNamedBufferParameterivEXT GLEW_GET_FUN(__glewGetNamedBufferParameterivEXT)\r
-#define glGetNamedBufferPointervEXT GLEW_GET_FUN(__glewGetNamedBufferPointervEXT)\r
-#define glGetNamedBufferSubDataEXT GLEW_GET_FUN(__glewGetNamedBufferSubDataEXT)\r
-#define glGetNamedFramebufferAttachmentParameterivEXT GLEW_GET_FUN(__glewGetNamedFramebufferAttachmentParameterivEXT)\r
-#define glGetNamedProgramLocalParameterIivEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterIivEXT)\r
-#define glGetNamedProgramLocalParameterIuivEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterIuivEXT)\r
-#define glGetNamedProgramLocalParameterdvEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterdvEXT)\r
-#define glGetNamedProgramLocalParameterfvEXT GLEW_GET_FUN(__glewGetNamedProgramLocalParameterfvEXT)\r
-#define glGetNamedProgramStringEXT GLEW_GET_FUN(__glewGetNamedProgramStringEXT)\r
-#define glGetNamedProgramivEXT GLEW_GET_FUN(__glewGetNamedProgramivEXT)\r
-#define glGetNamedRenderbufferParameterivEXT GLEW_GET_FUN(__glewGetNamedRenderbufferParameterivEXT)\r
-#define glGetPointerIndexedvEXT GLEW_GET_FUN(__glewGetPointerIndexedvEXT)\r
-#define glGetPointeri_vEXT GLEW_GET_FUN(__glewGetPointeri_vEXT)\r
-#define glGetTextureImageEXT GLEW_GET_FUN(__glewGetTextureImageEXT)\r
-#define glGetTextureLevelParameterfvEXT GLEW_GET_FUN(__glewGetTextureLevelParameterfvEXT)\r
-#define glGetTextureLevelParameterivEXT GLEW_GET_FUN(__glewGetTextureLevelParameterivEXT)\r
-#define glGetTextureParameterIivEXT GLEW_GET_FUN(__glewGetTextureParameterIivEXT)\r
-#define glGetTextureParameterIuivEXT GLEW_GET_FUN(__glewGetTextureParameterIuivEXT)\r
-#define glGetTextureParameterfvEXT GLEW_GET_FUN(__glewGetTextureParameterfvEXT)\r
-#define glGetTextureParameterivEXT GLEW_GET_FUN(__glewGetTextureParameterivEXT)\r
-#define glGetVertexArrayIntegeri_vEXT GLEW_GET_FUN(__glewGetVertexArrayIntegeri_vEXT)\r
-#define glGetVertexArrayIntegervEXT GLEW_GET_FUN(__glewGetVertexArrayIntegervEXT)\r
-#define glGetVertexArrayPointeri_vEXT GLEW_GET_FUN(__glewGetVertexArrayPointeri_vEXT)\r
-#define glGetVertexArrayPointervEXT GLEW_GET_FUN(__glewGetVertexArrayPointervEXT)\r
-#define glMapNamedBufferEXT GLEW_GET_FUN(__glewMapNamedBufferEXT)\r
-#define glMapNamedBufferRangeEXT GLEW_GET_FUN(__glewMapNamedBufferRangeEXT)\r
-#define glMatrixFrustumEXT GLEW_GET_FUN(__glewMatrixFrustumEXT)\r
-#define glMatrixLoadIdentityEXT GLEW_GET_FUN(__glewMatrixLoadIdentityEXT)\r
-#define glMatrixLoadTransposedEXT GLEW_GET_FUN(__glewMatrixLoadTransposedEXT)\r
-#define glMatrixLoadTransposefEXT GLEW_GET_FUN(__glewMatrixLoadTransposefEXT)\r
-#define glMatrixLoaddEXT GLEW_GET_FUN(__glewMatrixLoaddEXT)\r
-#define glMatrixLoadfEXT GLEW_GET_FUN(__glewMatrixLoadfEXT)\r
-#define glMatrixMultTransposedEXT GLEW_GET_FUN(__glewMatrixMultTransposedEXT)\r
-#define glMatrixMultTransposefEXT GLEW_GET_FUN(__glewMatrixMultTransposefEXT)\r
-#define glMatrixMultdEXT GLEW_GET_FUN(__glewMatrixMultdEXT)\r
-#define glMatrixMultfEXT GLEW_GET_FUN(__glewMatrixMultfEXT)\r
-#define glMatrixOrthoEXT GLEW_GET_FUN(__glewMatrixOrthoEXT)\r
-#define glMatrixPopEXT GLEW_GET_FUN(__glewMatrixPopEXT)\r
-#define glMatrixPushEXT GLEW_GET_FUN(__glewMatrixPushEXT)\r
-#define glMatrixRotatedEXT GLEW_GET_FUN(__glewMatrixRotatedEXT)\r
-#define glMatrixRotatefEXT GLEW_GET_FUN(__glewMatrixRotatefEXT)\r
-#define glMatrixScaledEXT GLEW_GET_FUN(__glewMatrixScaledEXT)\r
-#define glMatrixScalefEXT GLEW_GET_FUN(__glewMatrixScalefEXT)\r
-#define glMatrixTranslatedEXT GLEW_GET_FUN(__glewMatrixTranslatedEXT)\r
-#define glMatrixTranslatefEXT GLEW_GET_FUN(__glewMatrixTranslatefEXT)\r
-#define glMultiTexBufferEXT GLEW_GET_FUN(__glewMultiTexBufferEXT)\r
-#define glMultiTexCoordPointerEXT GLEW_GET_FUN(__glewMultiTexCoordPointerEXT)\r
-#define glMultiTexEnvfEXT GLEW_GET_FUN(__glewMultiTexEnvfEXT)\r
-#define glMultiTexEnvfvEXT GLEW_GET_FUN(__glewMultiTexEnvfvEXT)\r
-#define glMultiTexEnviEXT GLEW_GET_FUN(__glewMultiTexEnviEXT)\r
-#define glMultiTexEnvivEXT GLEW_GET_FUN(__glewMultiTexEnvivEXT)\r
-#define glMultiTexGendEXT GLEW_GET_FUN(__glewMultiTexGendEXT)\r
-#define glMultiTexGendvEXT GLEW_GET_FUN(__glewMultiTexGendvEXT)\r
-#define glMultiTexGenfEXT GLEW_GET_FUN(__glewMultiTexGenfEXT)\r
-#define glMultiTexGenfvEXT GLEW_GET_FUN(__glewMultiTexGenfvEXT)\r
-#define glMultiTexGeniEXT GLEW_GET_FUN(__glewMultiTexGeniEXT)\r
-#define glMultiTexGenivEXT GLEW_GET_FUN(__glewMultiTexGenivEXT)\r
-#define glMultiTexImage1DEXT GLEW_GET_FUN(__glewMultiTexImage1DEXT)\r
-#define glMultiTexImage2DEXT GLEW_GET_FUN(__glewMultiTexImage2DEXT)\r
-#define glMultiTexImage3DEXT GLEW_GET_FUN(__glewMultiTexImage3DEXT)\r
-#define glMultiTexParameterIivEXT GLEW_GET_FUN(__glewMultiTexParameterIivEXT)\r
-#define glMultiTexParameterIuivEXT GLEW_GET_FUN(__glewMultiTexParameterIuivEXT)\r
-#define glMultiTexParameterfEXT GLEW_GET_FUN(__glewMultiTexParameterfEXT)\r
-#define glMultiTexParameterfvEXT GLEW_GET_FUN(__glewMultiTexParameterfvEXT)\r
-#define glMultiTexParameteriEXT GLEW_GET_FUN(__glewMultiTexParameteriEXT)\r
-#define glMultiTexParameterivEXT GLEW_GET_FUN(__glewMultiTexParameterivEXT)\r
-#define glMultiTexRenderbufferEXT GLEW_GET_FUN(__glewMultiTexRenderbufferEXT)\r
-#define glMultiTexSubImage1DEXT GLEW_GET_FUN(__glewMultiTexSubImage1DEXT)\r
-#define glMultiTexSubImage2DEXT GLEW_GET_FUN(__glewMultiTexSubImage2DEXT)\r
-#define glMultiTexSubImage3DEXT GLEW_GET_FUN(__glewMultiTexSubImage3DEXT)\r
-#define glNamedBufferDataEXT GLEW_GET_FUN(__glewNamedBufferDataEXT)\r
-#define glNamedBufferSubDataEXT GLEW_GET_FUN(__glewNamedBufferSubDataEXT)\r
-#define glNamedCopyBufferSubDataEXT GLEW_GET_FUN(__glewNamedCopyBufferSubDataEXT)\r
-#define glNamedFramebufferRenderbufferEXT GLEW_GET_FUN(__glewNamedFramebufferRenderbufferEXT)\r
-#define glNamedFramebufferTexture1DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture1DEXT)\r
-#define glNamedFramebufferTexture2DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture2DEXT)\r
-#define glNamedFramebufferTexture3DEXT GLEW_GET_FUN(__glewNamedFramebufferTexture3DEXT)\r
-#define glNamedFramebufferTextureEXT GLEW_GET_FUN(__glewNamedFramebufferTextureEXT)\r
-#define glNamedFramebufferTextureFaceEXT GLEW_GET_FUN(__glewNamedFramebufferTextureFaceEXT)\r
-#define glNamedFramebufferTextureLayerEXT GLEW_GET_FUN(__glewNamedFramebufferTextureLayerEXT)\r
-#define glNamedProgramLocalParameter4dEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4dEXT)\r
-#define glNamedProgramLocalParameter4dvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4dvEXT)\r
-#define glNamedProgramLocalParameter4fEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4fEXT)\r
-#define glNamedProgramLocalParameter4fvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameter4fvEXT)\r
-#define glNamedProgramLocalParameterI4iEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4iEXT)\r
-#define glNamedProgramLocalParameterI4ivEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4ivEXT)\r
-#define glNamedProgramLocalParameterI4uiEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4uiEXT)\r
-#define glNamedProgramLocalParameterI4uivEXT GLEW_GET_FUN(__glewNamedProgramLocalParameterI4uivEXT)\r
-#define glNamedProgramLocalParameters4fvEXT GLEW_GET_FUN(__glewNamedProgramLocalParameters4fvEXT)\r
-#define glNamedProgramLocalParametersI4ivEXT GLEW_GET_FUN(__glewNamedProgramLocalParametersI4ivEXT)\r
-#define glNamedProgramLocalParametersI4uivEXT GLEW_GET_FUN(__glewNamedProgramLocalParametersI4uivEXT)\r
-#define glNamedProgramStringEXT GLEW_GET_FUN(__glewNamedProgramStringEXT)\r
-#define glNamedRenderbufferStorageEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageEXT)\r
-#define glNamedRenderbufferStorageMultisampleCoverageEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleCoverageEXT)\r
-#define glNamedRenderbufferStorageMultisampleEXT GLEW_GET_FUN(__glewNamedRenderbufferStorageMultisampleEXT)\r
-#define glProgramUniform1fEXT GLEW_GET_FUN(__glewProgramUniform1fEXT)\r
-#define glProgramUniform1fvEXT GLEW_GET_FUN(__glewProgramUniform1fvEXT)\r
-#define glProgramUniform1iEXT GLEW_GET_FUN(__glewProgramUniform1iEXT)\r
-#define glProgramUniform1ivEXT GLEW_GET_FUN(__glewProgramUniform1ivEXT)\r
-#define glProgramUniform1uiEXT GLEW_GET_FUN(__glewProgramUniform1uiEXT)\r
-#define glProgramUniform1uivEXT GLEW_GET_FUN(__glewProgramUniform1uivEXT)\r
-#define glProgramUniform2fEXT GLEW_GET_FUN(__glewProgramUniform2fEXT)\r
-#define glProgramUniform2fvEXT GLEW_GET_FUN(__glewProgramUniform2fvEXT)\r
-#define glProgramUniform2iEXT GLEW_GET_FUN(__glewProgramUniform2iEXT)\r
-#define glProgramUniform2ivEXT GLEW_GET_FUN(__glewProgramUniform2ivEXT)\r
-#define glProgramUniform2uiEXT GLEW_GET_FUN(__glewProgramUniform2uiEXT)\r
-#define glProgramUniform2uivEXT GLEW_GET_FUN(__glewProgramUniform2uivEXT)\r
-#define glProgramUniform3fEXT GLEW_GET_FUN(__glewProgramUniform3fEXT)\r
-#define glProgramUniform3fvEXT GLEW_GET_FUN(__glewProgramUniform3fvEXT)\r
-#define glProgramUniform3iEXT GLEW_GET_FUN(__glewProgramUniform3iEXT)\r
-#define glProgramUniform3ivEXT GLEW_GET_FUN(__glewProgramUniform3ivEXT)\r
-#define glProgramUniform3uiEXT GLEW_GET_FUN(__glewProgramUniform3uiEXT)\r
-#define glProgramUniform3uivEXT GLEW_GET_FUN(__glewProgramUniform3uivEXT)\r
-#define glProgramUniform4fEXT GLEW_GET_FUN(__glewProgramUniform4fEXT)\r
-#define glProgramUniform4fvEXT GLEW_GET_FUN(__glewProgramUniform4fvEXT)\r
-#define glProgramUniform4iEXT GLEW_GET_FUN(__glewProgramUniform4iEXT)\r
-#define glProgramUniform4ivEXT GLEW_GET_FUN(__glewProgramUniform4ivEXT)\r
-#define glProgramUniform4uiEXT GLEW_GET_FUN(__glewProgramUniform4uiEXT)\r
-#define glProgramUniform4uivEXT GLEW_GET_FUN(__glewProgramUniform4uivEXT)\r
-#define glProgramUniformMatrix2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2fvEXT)\r
-#define glProgramUniformMatrix2x3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x3fvEXT)\r
-#define glProgramUniformMatrix2x4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix2x4fvEXT)\r
-#define glProgramUniformMatrix3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3fvEXT)\r
-#define glProgramUniformMatrix3x2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x2fvEXT)\r
-#define glProgramUniformMatrix3x4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix3x4fvEXT)\r
-#define glProgramUniformMatrix4fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4fvEXT)\r
-#define glProgramUniformMatrix4x2fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x2fvEXT)\r
-#define glProgramUniformMatrix4x3fvEXT GLEW_GET_FUN(__glewProgramUniformMatrix4x3fvEXT)\r
-#define glPushClientAttribDefaultEXT GLEW_GET_FUN(__glewPushClientAttribDefaultEXT)\r
-#define glTextureBufferEXT GLEW_GET_FUN(__glewTextureBufferEXT)\r
-#define glTextureImage1DEXT GLEW_GET_FUN(__glewTextureImage1DEXT)\r
-#define glTextureImage2DEXT GLEW_GET_FUN(__glewTextureImage2DEXT)\r
-#define glTextureImage3DEXT GLEW_GET_FUN(__glewTextureImage3DEXT)\r
-#define glTextureParameterIivEXT GLEW_GET_FUN(__glewTextureParameterIivEXT)\r
-#define glTextureParameterIuivEXT GLEW_GET_FUN(__glewTextureParameterIuivEXT)\r
-#define glTextureParameterfEXT GLEW_GET_FUN(__glewTextureParameterfEXT)\r
-#define glTextureParameterfvEXT GLEW_GET_FUN(__glewTextureParameterfvEXT)\r
-#define glTextureParameteriEXT GLEW_GET_FUN(__glewTextureParameteriEXT)\r
-#define glTextureParameterivEXT GLEW_GET_FUN(__glewTextureParameterivEXT)\r
-#define glTextureRenderbufferEXT GLEW_GET_FUN(__glewTextureRenderbufferEXT)\r
-#define glTextureSubImage1DEXT GLEW_GET_FUN(__glewTextureSubImage1DEXT)\r
-#define glTextureSubImage2DEXT GLEW_GET_FUN(__glewTextureSubImage2DEXT)\r
-#define glTextureSubImage3DEXT GLEW_GET_FUN(__glewTextureSubImage3DEXT)\r
-#define glUnmapNamedBufferEXT GLEW_GET_FUN(__glewUnmapNamedBufferEXT)\r
-#define glVertexArrayColorOffsetEXT GLEW_GET_FUN(__glewVertexArrayColorOffsetEXT)\r
-#define glVertexArrayEdgeFlagOffsetEXT GLEW_GET_FUN(__glewVertexArrayEdgeFlagOffsetEXT)\r
-#define glVertexArrayFogCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayFogCoordOffsetEXT)\r
-#define glVertexArrayIndexOffsetEXT GLEW_GET_FUN(__glewVertexArrayIndexOffsetEXT)\r
-#define glVertexArrayMultiTexCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayMultiTexCoordOffsetEXT)\r
-#define glVertexArrayNormalOffsetEXT GLEW_GET_FUN(__glewVertexArrayNormalOffsetEXT)\r
-#define glVertexArraySecondaryColorOffsetEXT GLEW_GET_FUN(__glewVertexArraySecondaryColorOffsetEXT)\r
-#define glVertexArrayTexCoordOffsetEXT GLEW_GET_FUN(__glewVertexArrayTexCoordOffsetEXT)\r
-#define glVertexArrayVertexAttribIOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribIOffsetEXT)\r
-#define glVertexArrayVertexAttribOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribOffsetEXT)\r
-#define glVertexArrayVertexOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexOffsetEXT)\r
-\r
-#define GLEW_EXT_direct_state_access GLEW_GET_VAR(__GLEW_EXT_direct_state_access)\r
-\r
-#endif /* GL_EXT_direct_state_access */\r
-\r
-/* -------------------------- GL_EXT_draw_buffers2 ------------------------- */\r
-\r
-#ifndef GL_EXT_draw_buffers2\r
-#define GL_EXT_draw_buffers2 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLORMASKINDEXEDEXTPROC) (GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a);\r
-typedef void (GLAPIENTRY * PFNGLDISABLEINDEXEDEXTPROC) (GLenum target, GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLENABLEINDEXEDEXTPROC) (GLenum target, GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLGETBOOLEANINDEXEDVEXTPROC) (GLenum value, GLuint index, GLboolean* data);\r
-typedef void (GLAPIENTRY * PFNGLGETINTEGERINDEXEDVEXTPROC) (GLenum value, GLuint index, GLint* data);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISENABLEDINDEXEDEXTPROC) (GLenum target, GLuint index);\r
-\r
-#define glColorMaskIndexedEXT GLEW_GET_FUN(__glewColorMaskIndexedEXT)\r
-#define glDisableIndexedEXT GLEW_GET_FUN(__glewDisableIndexedEXT)\r
-#define glEnableIndexedEXT GLEW_GET_FUN(__glewEnableIndexedEXT)\r
-#define glGetBooleanIndexedvEXT GLEW_GET_FUN(__glewGetBooleanIndexedvEXT)\r
-#define glGetIntegerIndexedvEXT GLEW_GET_FUN(__glewGetIntegerIndexedvEXT)\r
-#define glIsEnabledIndexedEXT GLEW_GET_FUN(__glewIsEnabledIndexedEXT)\r
-\r
-#define GLEW_EXT_draw_buffers2 GLEW_GET_VAR(__GLEW_EXT_draw_buffers2)\r
-\r
-#endif /* GL_EXT_draw_buffers2 */\r
-\r
-/* ------------------------- GL_EXT_draw_instanced ------------------------- */\r
-\r
-#ifndef GL_EXT_draw_instanced\r
-#define GL_EXT_draw_instanced 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSINSTANCEDEXTPROC) (GLenum mode, GLint start, GLsizei count, GLsizei primcount);\r
-typedef void (GLAPIENTRY * PFNGLDRAWELEMENTSINSTANCEDEXTPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);\r
-\r
-#define glDrawArraysInstancedEXT GLEW_GET_FUN(__glewDrawArraysInstancedEXT)\r
-#define glDrawElementsInstancedEXT GLEW_GET_FUN(__glewDrawElementsInstancedEXT)\r
-\r
-#define GLEW_EXT_draw_instanced GLEW_GET_VAR(__GLEW_EXT_draw_instanced)\r
-\r
-#endif /* GL_EXT_draw_instanced */\r
-\r
-/* ----------------------- GL_EXT_draw_range_elements ---------------------- */\r
-\r
-#ifndef GL_EXT_draw_range_elements\r
-#define GL_EXT_draw_range_elements 1\r
-\r
-#define GL_MAX_ELEMENTS_VERTICES_EXT 0x80E8\r
-#define GL_MAX_ELEMENTS_INDICES_EXT 0x80E9\r
-\r
-typedef void (GLAPIENTRY * PFNGLDRAWRANGEELEMENTSEXTPROC) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices);\r
-\r
-#define glDrawRangeElementsEXT GLEW_GET_FUN(__glewDrawRangeElementsEXT)\r
-\r
-#define GLEW_EXT_draw_range_elements GLEW_GET_VAR(__GLEW_EXT_draw_range_elements)\r
-\r
-#endif /* GL_EXT_draw_range_elements */\r
-\r
-/* ---------------------------- GL_EXT_fog_coord --------------------------- */\r
-\r
-#ifndef GL_EXT_fog_coord\r
-#define GL_EXT_fog_coord 1\r
-\r
-#define GL_FOG_COORDINATE_SOURCE_EXT 0x8450\r
-#define GL_FOG_COORDINATE_EXT 0x8451\r
-#define GL_FRAGMENT_DEPTH_EXT 0x8452\r
-#define GL_CURRENT_FOG_COORDINATE_EXT 0x8453\r
-#define GL_FOG_COORDINATE_ARRAY_TYPE_EXT 0x8454\r
-#define GL_FOG_COORDINATE_ARRAY_STRIDE_EXT 0x8455\r
-#define GL_FOG_COORDINATE_ARRAY_POINTER_EXT 0x8456\r
-#define GL_FOG_COORDINATE_ARRAY_EXT 0x8457\r
-\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTEREXTPROC) (GLenum type, GLsizei stride, const GLvoid *pointer);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDDEXTPROC) (GLdouble coord);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDDVEXTPROC) (const GLdouble *coord);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFEXTPROC) (GLfloat coord);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFVEXTPROC) (const GLfloat *coord);\r
-\r
-#define glFogCoordPointerEXT GLEW_GET_FUN(__glewFogCoordPointerEXT)\r
-#define glFogCoorddEXT GLEW_GET_FUN(__glewFogCoorddEXT)\r
-#define glFogCoorddvEXT GLEW_GET_FUN(__glewFogCoorddvEXT)\r
-#define glFogCoordfEXT GLEW_GET_FUN(__glewFogCoordfEXT)\r
-#define glFogCoordfvEXT GLEW_GET_FUN(__glewFogCoordfvEXT)\r
-\r
-#define GLEW_EXT_fog_coord GLEW_GET_VAR(__GLEW_EXT_fog_coord)\r
-\r
-#endif /* GL_EXT_fog_coord */\r
-\r
-/* ------------------------ GL_EXT_fragment_lighting ----------------------- */\r
-\r
-#ifndef GL_EXT_fragment_lighting\r
-#define GL_EXT_fragment_lighting 1\r
-\r
-#define GL_FRAGMENT_LIGHTING_EXT 0x8400\r
-#define GL_FRAGMENT_COLOR_MATERIAL_EXT 0x8401\r
-#define GL_FRAGMENT_COLOR_MATERIAL_FACE_EXT 0x8402\r
-#define GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_EXT 0x8403\r
-#define GL_MAX_FRAGMENT_LIGHTS_EXT 0x8404\r
-#define GL_MAX_ACTIVE_LIGHTS_EXT 0x8405\r
-#define GL_CURRENT_RASTER_NORMAL_EXT 0x8406\r
-#define GL_LIGHT_ENV_MODE_EXT 0x8407\r
-#define GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_EXT 0x8408\r
-#define GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_EXT 0x8409\r
-#define GL_FRAGMENT_LIGHT_MODEL_AMBIENT_EXT 0x840A\r
-#define GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_EXT 0x840B\r
-#define GL_FRAGMENT_LIGHT0_EXT 0x840C\r
-#define GL_FRAGMENT_LIGHT7_EXT 0x8413\r
-\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTCOLORMATERIALEXTPROC) (GLenum face, GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFEXTPROC) (GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFVEXTPROC) (GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIEXTPROC) (GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIVEXTPROC) (GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFEXTPROC) (GLenum light, GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFVEXTPROC) (GLenum light, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIEXTPROC) (GLenum light, GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIVEXTPROC) (GLenum light, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFEXTPROC) (GLenum face, GLenum pname, const GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFVEXTPROC) (GLenum face, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIEXTPROC) (GLenum face, GLenum pname, const GLint param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIVEXTPROC) (GLenum face, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTFVEXTPROC) (GLenum light, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTIVEXTPROC) (GLenum light, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALFVEXTPROC) (GLenum face, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALIVEXTPROC) (GLenum face, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLLIGHTENVIEXTPROC) (GLenum pname, GLint param);\r
-\r
-#define glFragmentColorMaterialEXT GLEW_GET_FUN(__glewFragmentColorMaterialEXT)\r
-#define glFragmentLightModelfEXT GLEW_GET_FUN(__glewFragmentLightModelfEXT)\r
-#define glFragmentLightModelfvEXT GLEW_GET_FUN(__glewFragmentLightModelfvEXT)\r
-#define glFragmentLightModeliEXT GLEW_GET_FUN(__glewFragmentLightModeliEXT)\r
-#define glFragmentLightModelivEXT GLEW_GET_FUN(__glewFragmentLightModelivEXT)\r
-#define glFragmentLightfEXT GLEW_GET_FUN(__glewFragmentLightfEXT)\r
-#define glFragmentLightfvEXT GLEW_GET_FUN(__glewFragmentLightfvEXT)\r
-#define glFragmentLightiEXT GLEW_GET_FUN(__glewFragmentLightiEXT)\r
-#define glFragmentLightivEXT GLEW_GET_FUN(__glewFragmentLightivEXT)\r
-#define glFragmentMaterialfEXT GLEW_GET_FUN(__glewFragmentMaterialfEXT)\r
-#define glFragmentMaterialfvEXT GLEW_GET_FUN(__glewFragmentMaterialfvEXT)\r
-#define glFragmentMaterialiEXT GLEW_GET_FUN(__glewFragmentMaterialiEXT)\r
-#define glFragmentMaterialivEXT GLEW_GET_FUN(__glewFragmentMaterialivEXT)\r
-#define glGetFragmentLightfvEXT GLEW_GET_FUN(__glewGetFragmentLightfvEXT)\r
-#define glGetFragmentLightivEXT GLEW_GET_FUN(__glewGetFragmentLightivEXT)\r
-#define glGetFragmentMaterialfvEXT GLEW_GET_FUN(__glewGetFragmentMaterialfvEXT)\r
-#define glGetFragmentMaterialivEXT GLEW_GET_FUN(__glewGetFragmentMaterialivEXT)\r
-#define glLightEnviEXT GLEW_GET_FUN(__glewLightEnviEXT)\r
-\r
-#define GLEW_EXT_fragment_lighting GLEW_GET_VAR(__GLEW_EXT_fragment_lighting)\r
-\r
-#endif /* GL_EXT_fragment_lighting */\r
-\r
-/* ------------------------ GL_EXT_framebuffer_blit ------------------------ */\r
-\r
-#ifndef GL_EXT_framebuffer_blit\r
-#define GL_EXT_framebuffer_blit 1\r
-\r
-#define GL_DRAW_FRAMEBUFFER_BINDING_EXT 0x8CA6\r
-#define GL_READ_FRAMEBUFFER_EXT 0x8CA8\r
-#define GL_DRAW_FRAMEBUFFER_EXT 0x8CA9\r
-#define GL_READ_FRAMEBUFFER_BINDING_EXT 0x8CAA\r
-\r
-typedef void (GLAPIENTRY * PFNGLBLITFRAMEBUFFEREXTPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);\r
-\r
-#define glBlitFramebufferEXT GLEW_GET_FUN(__glewBlitFramebufferEXT)\r
-\r
-#define GLEW_EXT_framebuffer_blit GLEW_GET_VAR(__GLEW_EXT_framebuffer_blit)\r
-\r
-#endif /* GL_EXT_framebuffer_blit */\r
-\r
-/* --------------------- GL_EXT_framebuffer_multisample -------------------- */\r
-\r
-#ifndef GL_EXT_framebuffer_multisample\r
-#define GL_EXT_framebuffer_multisample 1\r
-\r
-#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB\r
-#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56\r
-#define GL_MAX_SAMPLES_EXT 0x8D57\r
-\r
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);\r
-\r
-#define glRenderbufferStorageMultisampleEXT GLEW_GET_FUN(__glewRenderbufferStorageMultisampleEXT)\r
-\r
-#define GLEW_EXT_framebuffer_multisample GLEW_GET_VAR(__GLEW_EXT_framebuffer_multisample)\r
-\r
-#endif /* GL_EXT_framebuffer_multisample */\r
-\r
-/* --------------- GL_EXT_framebuffer_multisample_blit_scaled -------------- */\r
-\r
-#ifndef GL_EXT_framebuffer_multisample_blit_scaled\r
-#define GL_EXT_framebuffer_multisample_blit_scaled 1\r
-\r
-#define GL_SCALED_RESOLVE_FASTEST_EXT 0x90BA\r
-#define GL_SCALED_RESOLVE_NICEST_EXT 0x90BB\r
-\r
-#define GLEW_EXT_framebuffer_multisample_blit_scaled GLEW_GET_VAR(__GLEW_EXT_framebuffer_multisample_blit_scaled)\r
-\r
-#endif /* GL_EXT_framebuffer_multisample_blit_scaled */\r
-\r
-/* ----------------------- GL_EXT_framebuffer_object ----------------------- */\r
-\r
-#ifndef GL_EXT_framebuffer_object\r
-#define GL_EXT_framebuffer_object 1\r
-\r
-#define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506\r
-#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8\r
-#define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6\r
-#define GL_RENDERBUFFER_BINDING_EXT 0x8CA7\r
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0\r
-#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1\r
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2\r
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3\r
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4\r
-#define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5\r
-#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6\r
-#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7\r
-#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9\r
-#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA\r
-#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB\r
-#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC\r
-#define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD\r
-#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF\r
-#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0\r
-#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1\r
-#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2\r
-#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3\r
-#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4\r
-#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5\r
-#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6\r
-#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7\r
-#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8\r
-#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9\r
-#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA\r
-#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB\r
-#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC\r
-#define GL_COLOR_ATTACHMENT13_EXT 0x8CED\r
-#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE\r
-#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF\r
-#define GL_DEPTH_ATTACHMENT_EXT 0x8D00\r
-#define GL_STENCIL_ATTACHMENT_EXT 0x8D20\r
-#define GL_FRAMEBUFFER_EXT 0x8D40\r
-#define GL_RENDERBUFFER_EXT 0x8D41\r
-#define GL_RENDERBUFFER_WIDTH_EXT 0x8D42\r
-#define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43\r
-#define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44\r
-#define GL_STENCIL_INDEX1_EXT 0x8D46\r
-#define GL_STENCIL_INDEX4_EXT 0x8D47\r
-#define GL_STENCIL_INDEX8_EXT 0x8D48\r
-#define GL_STENCIL_INDEX16_EXT 0x8D49\r
-#define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50\r
-#define GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8D51\r
-#define GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8D52\r
-#define GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8D53\r
-#define GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8D54\r
-#define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDFRAMEBUFFEREXTPROC) (GLenum target, GLuint framebuffer);\r
-typedef void (GLAPIENTRY * PFNGLBINDRENDERBUFFEREXTPROC) (GLenum target, GLuint renderbuffer);\r
-typedef GLenum (GLAPIENTRY * PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLDELETEFRAMEBUFFERSEXTPROC) (GLsizei n, const GLuint* framebuffers);\r
-typedef void (GLAPIENTRY * PFNGLDELETERENDERBUFFERSEXTPROC) (GLsizei n, const GLuint* renderbuffers);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE1DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE2DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURE3DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);\r
-typedef void (GLAPIENTRY * PFNGLGENFRAMEBUFFERSEXTPROC) (GLsizei n, GLuint* framebuffers);\r
-typedef void (GLAPIENTRY * PFNGLGENRENDERBUFFERSEXTPROC) (GLsizei n, GLuint* renderbuffers);\r
-typedef void (GLAPIENTRY * PFNGLGENERATEMIPMAPEXTPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISFRAMEBUFFEREXTPROC) (GLuint framebuffer);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISRENDERBUFFEREXTPROC) (GLuint renderbuffer);\r
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);\r
-\r
-#define glBindFramebufferEXT GLEW_GET_FUN(__glewBindFramebufferEXT)\r
-#define glBindRenderbufferEXT GLEW_GET_FUN(__glewBindRenderbufferEXT)\r
-#define glCheckFramebufferStatusEXT GLEW_GET_FUN(__glewCheckFramebufferStatusEXT)\r
-#define glDeleteFramebuffersEXT GLEW_GET_FUN(__glewDeleteFramebuffersEXT)\r
-#define glDeleteRenderbuffersEXT GLEW_GET_FUN(__glewDeleteRenderbuffersEXT)\r
-#define glFramebufferRenderbufferEXT GLEW_GET_FUN(__glewFramebufferRenderbufferEXT)\r
-#define glFramebufferTexture1DEXT GLEW_GET_FUN(__glewFramebufferTexture1DEXT)\r
-#define glFramebufferTexture2DEXT GLEW_GET_FUN(__glewFramebufferTexture2DEXT)\r
-#define glFramebufferTexture3DEXT GLEW_GET_FUN(__glewFramebufferTexture3DEXT)\r
-#define glGenFramebuffersEXT GLEW_GET_FUN(__glewGenFramebuffersEXT)\r
-#define glGenRenderbuffersEXT GLEW_GET_FUN(__glewGenRenderbuffersEXT)\r
-#define glGenerateMipmapEXT GLEW_GET_FUN(__glewGenerateMipmapEXT)\r
-#define glGetFramebufferAttachmentParameterivEXT GLEW_GET_FUN(__glewGetFramebufferAttachmentParameterivEXT)\r
-#define glGetRenderbufferParameterivEXT GLEW_GET_FUN(__glewGetRenderbufferParameterivEXT)\r
-#define glIsFramebufferEXT GLEW_GET_FUN(__glewIsFramebufferEXT)\r
-#define glIsRenderbufferEXT GLEW_GET_FUN(__glewIsRenderbufferEXT)\r
-#define glRenderbufferStorageEXT GLEW_GET_FUN(__glewRenderbufferStorageEXT)\r
-\r
-#define GLEW_EXT_framebuffer_object GLEW_GET_VAR(__GLEW_EXT_framebuffer_object)\r
-\r
-#endif /* GL_EXT_framebuffer_object */\r
-\r
-/* ------------------------ GL_EXT_framebuffer_sRGB ------------------------ */\r
-\r
-#ifndef GL_EXT_framebuffer_sRGB\r
-#define GL_EXT_framebuffer_sRGB 1\r
-\r
-#define GL_FRAMEBUFFER_SRGB_EXT 0x8DB9\r
-#define GL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x8DBA\r
-\r
-#define GLEW_EXT_framebuffer_sRGB GLEW_GET_VAR(__GLEW_EXT_framebuffer_sRGB)\r
-\r
-#endif /* GL_EXT_framebuffer_sRGB */\r
-\r
-/* ------------------------ GL_EXT_geometry_shader4 ------------------------ */\r
-\r
-#ifndef GL_EXT_geometry_shader4\r
-#define GL_EXT_geometry_shader4 1\r
-\r
-#define GL_LINES_ADJACENCY_EXT 0xA\r
-#define GL_LINE_STRIP_ADJACENCY_EXT 0xB\r
-#define GL_TRIANGLES_ADJACENCY_EXT 0xC\r
-#define GL_TRIANGLE_STRIP_ADJACENCY_EXT 0xD\r
-#define GL_PROGRAM_POINT_SIZE_EXT 0x8642\r
-#define GL_MAX_VARYING_COMPONENTS_EXT 0x8B4B\r
-#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT 0x8C29\r
-#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT 0x8CD4\r
-#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT 0x8DA7\r
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT 0x8DA8\r
-#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT 0x8DA9\r
-#define GL_GEOMETRY_SHADER_EXT 0x8DD9\r
-#define GL_GEOMETRY_VERTICES_OUT_EXT 0x8DDA\r
-#define GL_GEOMETRY_INPUT_TYPE_EXT 0x8DDB\r
-#define GL_GEOMETRY_OUTPUT_TYPE_EXT 0x8DDC\r
-#define GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT 0x8DDD\r
-#define GL_MAX_VERTEX_VARYING_COMPONENTS_EXT 0x8DDE\r
-#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT 0x8DDF\r
-#define GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT 0x8DE0\r
-#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT 0x8DE1\r
-\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level);\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLenum face);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value);\r
-\r
-#define glFramebufferTextureEXT GLEW_GET_FUN(__glewFramebufferTextureEXT)\r
-#define glFramebufferTextureFaceEXT GLEW_GET_FUN(__glewFramebufferTextureFaceEXT)\r
-#define glProgramParameteriEXT GLEW_GET_FUN(__glewProgramParameteriEXT)\r
-\r
-#define GLEW_EXT_geometry_shader4 GLEW_GET_VAR(__GLEW_EXT_geometry_shader4)\r
-\r
-#endif /* GL_EXT_geometry_shader4 */\r
-\r
-/* --------------------- GL_EXT_gpu_program_parameters --------------------- */\r
-\r
-#ifndef GL_EXT_gpu_program_parameters\r
-#define GL_EXT_gpu_program_parameters 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC) (GLenum target, GLuint index, GLsizei count, const GLfloat* params);\r
-\r
-#define glProgramEnvParameters4fvEXT GLEW_GET_FUN(__glewProgramEnvParameters4fvEXT)\r
-#define glProgramLocalParameters4fvEXT GLEW_GET_FUN(__glewProgramLocalParameters4fvEXT)\r
-\r
-#define GLEW_EXT_gpu_program_parameters GLEW_GET_VAR(__GLEW_EXT_gpu_program_parameters)\r
-\r
-#endif /* GL_EXT_gpu_program_parameters */\r
-\r
-/* --------------------------- GL_EXT_gpu_shader4 -------------------------- */\r
-\r
-#ifndef GL_EXT_gpu_shader4\r
-#define GL_EXT_gpu_shader4 1\r
-\r
-#define GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT 0x88FD\r
-#define GL_SAMPLER_1D_ARRAY_EXT 0x8DC0\r
-#define GL_SAMPLER_2D_ARRAY_EXT 0x8DC1\r
-#define GL_SAMPLER_BUFFER_EXT 0x8DC2\r
-#define GL_SAMPLER_1D_ARRAY_SHADOW_EXT 0x8DC3\r
-#define GL_SAMPLER_2D_ARRAY_SHADOW_EXT 0x8DC4\r
-#define GL_SAMPLER_CUBE_SHADOW_EXT 0x8DC5\r
-#define GL_UNSIGNED_INT_VEC2_EXT 0x8DC6\r
-#define GL_UNSIGNED_INT_VEC3_EXT 0x8DC7\r
-#define GL_UNSIGNED_INT_VEC4_EXT 0x8DC8\r
-#define GL_INT_SAMPLER_1D_EXT 0x8DC9\r
-#define GL_INT_SAMPLER_2D_EXT 0x8DCA\r
-#define GL_INT_SAMPLER_3D_EXT 0x8DCB\r
-#define GL_INT_SAMPLER_CUBE_EXT 0x8DCC\r
-#define GL_INT_SAMPLER_2D_RECT_EXT 0x8DCD\r
-#define GL_INT_SAMPLER_1D_ARRAY_EXT 0x8DCE\r
-#define GL_INT_SAMPLER_2D_ARRAY_EXT 0x8DCF\r
-#define GL_INT_SAMPLER_BUFFER_EXT 0x8DD0\r
-#define GL_UNSIGNED_INT_SAMPLER_1D_EXT 0x8DD1\r
-#define GL_UNSIGNED_INT_SAMPLER_2D_EXT 0x8DD2\r
-#define GL_UNSIGNED_INT_SAMPLER_3D_EXT 0x8DD3\r
-#define GL_UNSIGNED_INT_SAMPLER_CUBE_EXT 0x8DD4\r
-#define GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT 0x8DD5\r
-#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT 0x8DD6\r
-#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT 0x8DD7\r
-#define GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT 0x8DD8\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDFRAGDATALOCATIONEXTPROC) (GLuint program, GLuint color, const GLchar *name);\r
-typedef GLint (GLAPIENTRY * PFNGLGETFRAGDATALOCATIONEXTPROC) (GLuint program, const GLchar *name);\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMUIVEXTPROC) (GLuint program, GLint location, GLuint *params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIIVEXTPROC) (GLuint index, GLenum pname, GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIUIVEXTPROC) (GLuint index, GLenum pname, GLuint *params);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UIEXTPROC) (GLint location, GLuint v0);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UIEXTPROC) (GLint location, GLuint v0, GLuint v1);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UIEXTPROC) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UIVEXTPROC) (GLint location, GLsizei count, const GLuint *value);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IEXTPROC) (GLuint index, GLint x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1IVEXTPROC) (GLuint index, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIEXTPROC) (GLuint index, GLuint x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI1UIVEXTPROC) (GLuint index, const GLuint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IEXTPROC) (GLuint index, GLint x, GLint y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2IVEXTPROC) (GLuint index, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIEXTPROC) (GLuint index, GLuint x, GLuint y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI2UIVEXTPROC) (GLuint index, const GLuint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IEXTPROC) (GLuint index, GLint x, GLint y, GLint z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3IVEXTPROC) (GLuint index, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI3UIVEXTPROC) (GLuint index, const GLuint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4BVEXTPROC) (GLuint index, const GLbyte *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IEXTPROC) (GLuint index, GLint x, GLint y, GLint z, GLint w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4IVEXTPROC) (GLuint index, const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4SVEXTPROC) (GLuint index, const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UBVEXTPROC) (GLuint index, const GLubyte *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIEXTPROC) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4UIVEXTPROC) (GLuint index, const GLuint *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBI4USVEXTPROC) (GLuint index, const GLushort *v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);\r
-\r
-#define glBindFragDataLocationEXT GLEW_GET_FUN(__glewBindFragDataLocationEXT)\r
-#define glGetFragDataLocationEXT GLEW_GET_FUN(__glewGetFragDataLocationEXT)\r
-#define glGetUniformuivEXT GLEW_GET_FUN(__glewGetUniformuivEXT)\r
-#define glGetVertexAttribIivEXT GLEW_GET_FUN(__glewGetVertexAttribIivEXT)\r
-#define glGetVertexAttribIuivEXT GLEW_GET_FUN(__glewGetVertexAttribIuivEXT)\r
-#define glUniform1uiEXT GLEW_GET_FUN(__glewUniform1uiEXT)\r
-#define glUniform1uivEXT GLEW_GET_FUN(__glewUniform1uivEXT)\r
-#define glUniform2uiEXT GLEW_GET_FUN(__glewUniform2uiEXT)\r
-#define glUniform2uivEXT GLEW_GET_FUN(__glewUniform2uivEXT)\r
-#define glUniform3uiEXT GLEW_GET_FUN(__glewUniform3uiEXT)\r
-#define glUniform3uivEXT GLEW_GET_FUN(__glewUniform3uivEXT)\r
-#define glUniform4uiEXT GLEW_GET_FUN(__glewUniform4uiEXT)\r
-#define glUniform4uivEXT GLEW_GET_FUN(__glewUniform4uivEXT)\r
-#define glVertexAttribI1iEXT GLEW_GET_FUN(__glewVertexAttribI1iEXT)\r
-#define glVertexAttribI1ivEXT GLEW_GET_FUN(__glewVertexAttribI1ivEXT)\r
-#define glVertexAttribI1uiEXT GLEW_GET_FUN(__glewVertexAttribI1uiEXT)\r
-#define glVertexAttribI1uivEXT GLEW_GET_FUN(__glewVertexAttribI1uivEXT)\r
-#define glVertexAttribI2iEXT GLEW_GET_FUN(__glewVertexAttribI2iEXT)\r
-#define glVertexAttribI2ivEXT GLEW_GET_FUN(__glewVertexAttribI2ivEXT)\r
-#define glVertexAttribI2uiEXT GLEW_GET_FUN(__glewVertexAttribI2uiEXT)\r
-#define glVertexAttribI2uivEXT GLEW_GET_FUN(__glewVertexAttribI2uivEXT)\r
-#define glVertexAttribI3iEXT GLEW_GET_FUN(__glewVertexAttribI3iEXT)\r
-#define glVertexAttribI3ivEXT GLEW_GET_FUN(__glewVertexAttribI3ivEXT)\r
-#define glVertexAttribI3uiEXT GLEW_GET_FUN(__glewVertexAttribI3uiEXT)\r
-#define glVertexAttribI3uivEXT GLEW_GET_FUN(__glewVertexAttribI3uivEXT)\r
-#define glVertexAttribI4bvEXT GLEW_GET_FUN(__glewVertexAttribI4bvEXT)\r
-#define glVertexAttribI4iEXT GLEW_GET_FUN(__glewVertexAttribI4iEXT)\r
-#define glVertexAttribI4ivEXT GLEW_GET_FUN(__glewVertexAttribI4ivEXT)\r
-#define glVertexAttribI4svEXT GLEW_GET_FUN(__glewVertexAttribI4svEXT)\r
-#define glVertexAttribI4ubvEXT GLEW_GET_FUN(__glewVertexAttribI4ubvEXT)\r
-#define glVertexAttribI4uiEXT GLEW_GET_FUN(__glewVertexAttribI4uiEXT)\r
-#define glVertexAttribI4uivEXT GLEW_GET_FUN(__glewVertexAttribI4uivEXT)\r
-#define glVertexAttribI4usvEXT GLEW_GET_FUN(__glewVertexAttribI4usvEXT)\r
-#define glVertexAttribIPointerEXT GLEW_GET_FUN(__glewVertexAttribIPointerEXT)\r
-\r
-#define GLEW_EXT_gpu_shader4 GLEW_GET_VAR(__GLEW_EXT_gpu_shader4)\r
-\r
-#endif /* GL_EXT_gpu_shader4 */\r
-\r
-/* ---------------------------- GL_EXT_histogram --------------------------- */\r
-\r
-#ifndef GL_EXT_histogram\r
-#define GL_EXT_histogram 1\r
-\r
-#define GL_HISTOGRAM_EXT 0x8024\r
-#define GL_PROXY_HISTOGRAM_EXT 0x8025\r
-#define GL_HISTOGRAM_WIDTH_EXT 0x8026\r
-#define GL_HISTOGRAM_FORMAT_EXT 0x8027\r
-#define GL_HISTOGRAM_RED_SIZE_EXT 0x8028\r
-#define GL_HISTOGRAM_GREEN_SIZE_EXT 0x8029\r
-#define GL_HISTOGRAM_BLUE_SIZE_EXT 0x802A\r
-#define GL_HISTOGRAM_ALPHA_SIZE_EXT 0x802B\r
-#define GL_HISTOGRAM_LUMINANCE_SIZE_EXT 0x802C\r
-#define GL_HISTOGRAM_SINK_EXT 0x802D\r
-#define GL_MINMAX_EXT 0x802E\r
-#define GL_MINMAX_FORMAT_EXT 0x802F\r
-#define GL_MINMAX_SINK_EXT 0x8030\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void* values);\r
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETHISTOGRAMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMINMAXEXTPROC) (GLenum target, GLboolean reset, GLenum format, GLenum type, void* values);\r
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMINMAXPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLHISTOGRAMEXTPROC) (GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);\r
-typedef void (GLAPIENTRY * PFNGLMINMAXEXTPROC) (GLenum target, GLenum internalformat, GLboolean sink);\r
-typedef void (GLAPIENTRY * PFNGLRESETHISTOGRAMEXTPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLRESETMINMAXEXTPROC) (GLenum target);\r
-\r
-#define glGetHistogramEXT GLEW_GET_FUN(__glewGetHistogramEXT)\r
-#define glGetHistogramParameterfvEXT GLEW_GET_FUN(__glewGetHistogramParameterfvEXT)\r
-#define glGetHistogramParameterivEXT GLEW_GET_FUN(__glewGetHistogramParameterivEXT)\r
-#define glGetMinmaxEXT GLEW_GET_FUN(__glewGetMinmaxEXT)\r
-#define glGetMinmaxParameterfvEXT GLEW_GET_FUN(__glewGetMinmaxParameterfvEXT)\r
-#define glGetMinmaxParameterivEXT GLEW_GET_FUN(__glewGetMinmaxParameterivEXT)\r
-#define glHistogramEXT GLEW_GET_FUN(__glewHistogramEXT)\r
-#define glMinmaxEXT GLEW_GET_FUN(__glewMinmaxEXT)\r
-#define glResetHistogramEXT GLEW_GET_FUN(__glewResetHistogramEXT)\r
-#define glResetMinmaxEXT GLEW_GET_FUN(__glewResetMinmaxEXT)\r
-\r
-#define GLEW_EXT_histogram GLEW_GET_VAR(__GLEW_EXT_histogram)\r
-\r
-#endif /* GL_EXT_histogram */\r
-\r
-/* ----------------------- GL_EXT_index_array_formats ---------------------- */\r
-\r
-#ifndef GL_EXT_index_array_formats\r
-#define GL_EXT_index_array_formats 1\r
-\r
-#define GLEW_EXT_index_array_formats GLEW_GET_VAR(__GLEW_EXT_index_array_formats)\r
-\r
-#endif /* GL_EXT_index_array_formats */\r
-\r
-/* --------------------------- GL_EXT_index_func --------------------------- */\r
-\r
-#ifndef GL_EXT_index_func\r
-#define GL_EXT_index_func 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLINDEXFUNCEXTPROC) (GLenum func, GLfloat ref);\r
-\r
-#define glIndexFuncEXT GLEW_GET_FUN(__glewIndexFuncEXT)\r
-\r
-#define GLEW_EXT_index_func GLEW_GET_VAR(__GLEW_EXT_index_func)\r
-\r
-#endif /* GL_EXT_index_func */\r
-\r
-/* ------------------------- GL_EXT_index_material ------------------------- */\r
-\r
-#ifndef GL_EXT_index_material\r
-#define GL_EXT_index_material 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLINDEXMATERIALEXTPROC) (GLenum face, GLenum mode);\r
-\r
-#define glIndexMaterialEXT GLEW_GET_FUN(__glewIndexMaterialEXT)\r
-\r
-#define GLEW_EXT_index_material GLEW_GET_VAR(__GLEW_EXT_index_material)\r
-\r
-#endif /* GL_EXT_index_material */\r
-\r
-/* -------------------------- GL_EXT_index_texture ------------------------- */\r
-\r
-#ifndef GL_EXT_index_texture\r
-#define GL_EXT_index_texture 1\r
-\r
-#define GLEW_EXT_index_texture GLEW_GET_VAR(__GLEW_EXT_index_texture)\r
-\r
-#endif /* GL_EXT_index_texture */\r
-\r
-/* -------------------------- GL_EXT_light_texture ------------------------- */\r
-\r
-#ifndef GL_EXT_light_texture\r
-#define GL_EXT_light_texture 1\r
-\r
-#define GL_FRAGMENT_MATERIAL_EXT 0x8349\r
-#define GL_FRAGMENT_NORMAL_EXT 0x834A\r
-#define GL_FRAGMENT_COLOR_EXT 0x834C\r
-#define GL_ATTENUATION_EXT 0x834D\r
-#define GL_SHADOW_ATTENUATION_EXT 0x834E\r
-#define GL_TEXTURE_APPLICATION_MODE_EXT 0x834F\r
-#define GL_TEXTURE_LIGHT_EXT 0x8350\r
-#define GL_TEXTURE_MATERIAL_FACE_EXT 0x8351\r
-#define GL_TEXTURE_MATERIAL_PARAMETER_EXT 0x8352\r
-#define GL_FRAGMENT_DEPTH_EXT 0x8452\r
-\r
-typedef void (GLAPIENTRY * PFNGLAPPLYTEXTUREEXTPROC) (GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLTEXTURELIGHTEXTPROC) (GLenum pname);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREMATERIALEXTPROC) (GLenum face, GLenum mode);\r
-\r
-#define glApplyTextureEXT GLEW_GET_FUN(__glewApplyTextureEXT)\r
-#define glTextureLightEXT GLEW_GET_FUN(__glewTextureLightEXT)\r
-#define glTextureMaterialEXT GLEW_GET_FUN(__glewTextureMaterialEXT)\r
-\r
-#define GLEW_EXT_light_texture GLEW_GET_VAR(__GLEW_EXT_light_texture)\r
-\r
-#endif /* GL_EXT_light_texture */\r
-\r
-/* ------------------------- GL_EXT_misc_attribute ------------------------- */\r
-\r
-#ifndef GL_EXT_misc_attribute\r
-#define GL_EXT_misc_attribute 1\r
-\r
-#define GLEW_EXT_misc_attribute GLEW_GET_VAR(__GLEW_EXT_misc_attribute)\r
-\r
-#endif /* GL_EXT_misc_attribute */\r
-\r
-/* ------------------------ GL_EXT_multi_draw_arrays ----------------------- */\r
-\r
-#ifndef GL_EXT_multi_draw_arrays\r
-#define GL_EXT_multi_draw_arrays 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint* first, const GLsizei *count, GLsizei primcount);\r
-typedef void (GLAPIENTRY * PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, GLsizei* count, GLenum type, const GLvoid **indices, GLsizei primcount);\r
-\r
-#define glMultiDrawArraysEXT GLEW_GET_FUN(__glewMultiDrawArraysEXT)\r
-#define glMultiDrawElementsEXT GLEW_GET_FUN(__glewMultiDrawElementsEXT)\r
-\r
-#define GLEW_EXT_multi_draw_arrays GLEW_GET_VAR(__GLEW_EXT_multi_draw_arrays)\r
-\r
-#endif /* GL_EXT_multi_draw_arrays */\r
-\r
-/* --------------------------- GL_EXT_multisample -------------------------- */\r
-\r
-#ifndef GL_EXT_multisample\r
-#define GL_EXT_multisample 1\r
-\r
-#define GL_MULTISAMPLE_EXT 0x809D\r
-#define GL_SAMPLE_ALPHA_TO_MASK_EXT 0x809E\r
-#define GL_SAMPLE_ALPHA_TO_ONE_EXT 0x809F\r
-#define GL_SAMPLE_MASK_EXT 0x80A0\r
-#define GL_1PASS_EXT 0x80A1\r
-#define GL_2PASS_0_EXT 0x80A2\r
-#define GL_2PASS_1_EXT 0x80A3\r
-#define GL_4PASS_0_EXT 0x80A4\r
-#define GL_4PASS_1_EXT 0x80A5\r
-#define GL_4PASS_2_EXT 0x80A6\r
-#define GL_4PASS_3_EXT 0x80A7\r
-#define GL_SAMPLE_BUFFERS_EXT 0x80A8\r
-#define GL_SAMPLES_EXT 0x80A9\r
-#define GL_SAMPLE_MASK_VALUE_EXT 0x80AA\r
-#define GL_SAMPLE_MASK_INVERT_EXT 0x80AB\r
-#define GL_SAMPLE_PATTERN_EXT 0x80AC\r
-#define GL_MULTISAMPLE_BIT_EXT 0x20000000\r
-\r
-typedef void (GLAPIENTRY * PFNGLSAMPLEMASKEXTPROC) (GLclampf value, GLboolean invert);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLEPATTERNEXTPROC) (GLenum pattern);\r
-\r
-#define glSampleMaskEXT GLEW_GET_FUN(__glewSampleMaskEXT)\r
-#define glSamplePatternEXT GLEW_GET_FUN(__glewSamplePatternEXT)\r
-\r
-#define GLEW_EXT_multisample GLEW_GET_VAR(__GLEW_EXT_multisample)\r
-\r
-#endif /* GL_EXT_multisample */\r
-\r
-/* ---------------------- GL_EXT_packed_depth_stencil ---------------------- */\r
-\r
-#ifndef GL_EXT_packed_depth_stencil\r
-#define GL_EXT_packed_depth_stencil 1\r
-\r
-#define GL_DEPTH_STENCIL_EXT 0x84F9\r
-#define GL_UNSIGNED_INT_24_8_EXT 0x84FA\r
-#define GL_DEPTH24_STENCIL8_EXT 0x88F0\r
-#define GL_TEXTURE_STENCIL_SIZE_EXT 0x88F1\r
-\r
-#define GLEW_EXT_packed_depth_stencil GLEW_GET_VAR(__GLEW_EXT_packed_depth_stencil)\r
-\r
-#endif /* GL_EXT_packed_depth_stencil */\r
-\r
-/* -------------------------- GL_EXT_packed_float -------------------------- */\r
-\r
-#ifndef GL_EXT_packed_float\r
-#define GL_EXT_packed_float 1\r
-\r
-#define GL_R11F_G11F_B10F_EXT 0x8C3A\r
-#define GL_UNSIGNED_INT_10F_11F_11F_REV_EXT 0x8C3B\r
-#define GL_RGBA_SIGNED_COMPONENTS_EXT 0x8C3C\r
-\r
-#define GLEW_EXT_packed_float GLEW_GET_VAR(__GLEW_EXT_packed_float)\r
-\r
-#endif /* GL_EXT_packed_float */\r
-\r
-/* -------------------------- GL_EXT_packed_pixels ------------------------- */\r
-\r
-#ifndef GL_EXT_packed_pixels\r
-#define GL_EXT_packed_pixels 1\r
-\r
-#define GL_UNSIGNED_BYTE_3_3_2_EXT 0x8032\r
-#define GL_UNSIGNED_SHORT_4_4_4_4_EXT 0x8033\r
-#define GL_UNSIGNED_SHORT_5_5_5_1_EXT 0x8034\r
-#define GL_UNSIGNED_INT_8_8_8_8_EXT 0x8035\r
-#define GL_UNSIGNED_INT_10_10_10_2_EXT 0x8036\r
-\r
-#define GLEW_EXT_packed_pixels GLEW_GET_VAR(__GLEW_EXT_packed_pixels)\r
-\r
-#endif /* GL_EXT_packed_pixels */\r
-\r
-/* ------------------------ GL_EXT_paletted_texture ------------------------ */\r
-\r
-#ifndef GL_EXT_paletted_texture\r
-#define GL_EXT_paletted_texture 1\r
-\r
-#define GL_TEXTURE_1D 0x0DE0\r
-#define GL_TEXTURE_2D 0x0DE1\r
-#define GL_PROXY_TEXTURE_1D 0x8063\r
-#define GL_PROXY_TEXTURE_2D 0x8064\r
-#define GL_TEXTURE_3D_EXT 0x806F\r
-#define GL_PROXY_TEXTURE_3D_EXT 0x8070\r
-#define GL_COLOR_TABLE_FORMAT_EXT 0x80D8\r
-#define GL_COLOR_TABLE_WIDTH_EXT 0x80D9\r
-#define GL_COLOR_TABLE_RED_SIZE_EXT 0x80DA\r
-#define GL_COLOR_TABLE_GREEN_SIZE_EXT 0x80DB\r
-#define GL_COLOR_TABLE_BLUE_SIZE_EXT 0x80DC\r
-#define GL_COLOR_TABLE_ALPHA_SIZE_EXT 0x80DD\r
-#define GL_COLOR_TABLE_LUMINANCE_SIZE_EXT 0x80DE\r
-#define GL_COLOR_TABLE_INTENSITY_SIZE_EXT 0x80DF\r
-#define GL_COLOR_INDEX1_EXT 0x80E2\r
-#define GL_COLOR_INDEX2_EXT 0x80E3\r
-#define GL_COLOR_INDEX4_EXT 0x80E4\r
-#define GL_COLOR_INDEX8_EXT 0x80E5\r
-#define GL_COLOR_INDEX12_EXT 0x80E6\r
-#define GL_COLOR_INDEX16_EXT 0x80E7\r
-#define GL_TEXTURE_INDEX_SIZE_EXT 0x80ED\r
-#define GL_TEXTURE_CUBE_MAP_ARB 0x8513\r
-#define GL_PROXY_TEXTURE_CUBE_MAP_ARB 0x851B\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEEXTPROC) (GLenum target, GLenum internalFormat, GLsizei width, GLenum format, GLenum type, const void* data);\r
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEEXTPROC) (GLenum target, GLenum format, GLenum type, void* data);\r
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVEXTPROC) (GLenum target, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint* params);\r
-\r
-#define glColorTableEXT GLEW_GET_FUN(__glewColorTableEXT)\r
-#define glGetColorTableEXT GLEW_GET_FUN(__glewGetColorTableEXT)\r
-#define glGetColorTableParameterfvEXT GLEW_GET_FUN(__glewGetColorTableParameterfvEXT)\r
-#define glGetColorTableParameterivEXT GLEW_GET_FUN(__glewGetColorTableParameterivEXT)\r
-\r
-#define GLEW_EXT_paletted_texture GLEW_GET_VAR(__GLEW_EXT_paletted_texture)\r
-\r
-#endif /* GL_EXT_paletted_texture */\r
-\r
-/* ----------------------- GL_EXT_pixel_buffer_object ---------------------- */\r
-\r
-#ifndef GL_EXT_pixel_buffer_object\r
-#define GL_EXT_pixel_buffer_object 1\r
-\r
-#define GL_PIXEL_PACK_BUFFER_EXT 0x88EB\r
-#define GL_PIXEL_UNPACK_BUFFER_EXT 0x88EC\r
-#define GL_PIXEL_PACK_BUFFER_BINDING_EXT 0x88ED\r
-#define GL_PIXEL_UNPACK_BUFFER_BINDING_EXT 0x88EF\r
-\r
-#define GLEW_EXT_pixel_buffer_object GLEW_GET_VAR(__GLEW_EXT_pixel_buffer_object)\r
-\r
-#endif /* GL_EXT_pixel_buffer_object */\r
-\r
-/* ------------------------- GL_EXT_pixel_transform ------------------------ */\r
-\r
-#ifndef GL_EXT_pixel_transform\r
-#define GL_EXT_pixel_transform 1\r
-\r
-#define GL_PIXEL_TRANSFORM_2D_EXT 0x8330\r
-#define GL_PIXEL_MAG_FILTER_EXT 0x8331\r
-#define GL_PIXEL_MIN_FILTER_EXT 0x8332\r
-#define GL_PIXEL_CUBIC_WEIGHT_EXT 0x8333\r
-#define GL_CUBIC_EXT 0x8334\r
-#define GL_AVERAGE_EXT 0x8335\r
-#define GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8336\r
-#define GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT 0x8337\r
-#define GL_PIXEL_TRANSFORM_2D_MATRIX_EXT 0x8338\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFEXTPROC) (GLenum target, GLenum pname, const GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC) (GLenum target, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIEXTPROC) (GLenum target, GLenum pname, const GLint param);\r
-typedef void (GLAPIENTRY * PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC) (GLenum target, GLenum pname, const GLint* params);\r
-\r
-#define glGetPixelTransformParameterfvEXT GLEW_GET_FUN(__glewGetPixelTransformParameterfvEXT)\r
-#define glGetPixelTransformParameterivEXT GLEW_GET_FUN(__glewGetPixelTransformParameterivEXT)\r
-#define glPixelTransformParameterfEXT GLEW_GET_FUN(__glewPixelTransformParameterfEXT)\r
-#define glPixelTransformParameterfvEXT GLEW_GET_FUN(__glewPixelTransformParameterfvEXT)\r
-#define glPixelTransformParameteriEXT GLEW_GET_FUN(__glewPixelTransformParameteriEXT)\r
-#define glPixelTransformParameterivEXT GLEW_GET_FUN(__glewPixelTransformParameterivEXT)\r
-\r
-#define GLEW_EXT_pixel_transform GLEW_GET_VAR(__GLEW_EXT_pixel_transform)\r
-\r
-#endif /* GL_EXT_pixel_transform */\r
-\r
-/* ------------------- GL_EXT_pixel_transform_color_table ------------------ */\r
-\r
-#ifndef GL_EXT_pixel_transform_color_table\r
-#define GL_EXT_pixel_transform_color_table 1\r
-\r
-#define GLEW_EXT_pixel_transform_color_table GLEW_GET_VAR(__GLEW_EXT_pixel_transform_color_table)\r
-\r
-#endif /* GL_EXT_pixel_transform_color_table */\r
-\r
-/* ------------------------ GL_EXT_point_parameters ------------------------ */\r
-\r
-#ifndef GL_EXT_point_parameters\r
-#define GL_EXT_point_parameters 1\r
-\r
-#define GL_POINT_SIZE_MIN_EXT 0x8126\r
-#define GL_POINT_SIZE_MAX_EXT 0x8127\r
-#define GL_POINT_FADE_THRESHOLD_SIZE_EXT 0x8128\r
-#define GL_DISTANCE_ATTENUATION_EXT 0x8129\r
-\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFEXTPROC) (GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERFVEXTPROC) (GLenum pname, const GLfloat* params);\r
-\r
-#define glPointParameterfEXT GLEW_GET_FUN(__glewPointParameterfEXT)\r
-#define glPointParameterfvEXT GLEW_GET_FUN(__glewPointParameterfvEXT)\r
-\r
-#define GLEW_EXT_point_parameters GLEW_GET_VAR(__GLEW_EXT_point_parameters)\r
-\r
-#endif /* GL_EXT_point_parameters */\r
-\r
-/* ------------------------- GL_EXT_polygon_offset ------------------------- */\r
-\r
-#ifndef GL_EXT_polygon_offset\r
-#define GL_EXT_polygon_offset 1\r
-\r
-#define GL_POLYGON_OFFSET_EXT 0x8037\r
-#define GL_POLYGON_OFFSET_FACTOR_EXT 0x8038\r
-#define GL_POLYGON_OFFSET_BIAS_EXT 0x8039\r
-\r
-typedef void (GLAPIENTRY * PFNGLPOLYGONOFFSETEXTPROC) (GLfloat factor, GLfloat bias);\r
-\r
-#define glPolygonOffsetEXT GLEW_GET_FUN(__glewPolygonOffsetEXT)\r
-\r
-#define GLEW_EXT_polygon_offset GLEW_GET_VAR(__GLEW_EXT_polygon_offset)\r
-\r
-#endif /* GL_EXT_polygon_offset */\r
-\r
-/* ------------------------ GL_EXT_provoking_vertex ------------------------ */\r
-\r
-#ifndef GL_EXT_provoking_vertex\r
-#define GL_EXT_provoking_vertex 1\r
-\r
-#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT 0x8E4C\r
-#define GL_FIRST_VERTEX_CONVENTION_EXT 0x8E4D\r
-#define GL_LAST_VERTEX_CONVENTION_EXT 0x8E4E\r
-#define GL_PROVOKING_VERTEX_EXT 0x8E4F\r
-\r
-typedef void (GLAPIENTRY * PFNGLPROVOKINGVERTEXEXTPROC) (GLenum mode);\r
-\r
-#define glProvokingVertexEXT GLEW_GET_FUN(__glewProvokingVertexEXT)\r
-\r
-#define GLEW_EXT_provoking_vertex GLEW_GET_VAR(__GLEW_EXT_provoking_vertex)\r
-\r
-#endif /* GL_EXT_provoking_vertex */\r
-\r
-/* ------------------------- GL_EXT_rescale_normal ------------------------- */\r
-\r
-#ifndef GL_EXT_rescale_normal\r
-#define GL_EXT_rescale_normal 1\r
-\r
-#define GL_RESCALE_NORMAL_EXT 0x803A\r
-\r
-#define GLEW_EXT_rescale_normal GLEW_GET_VAR(__GLEW_EXT_rescale_normal)\r
-\r
-#endif /* GL_EXT_rescale_normal */\r
-\r
-/* -------------------------- GL_EXT_scene_marker -------------------------- */\r
-\r
-#ifndef GL_EXT_scene_marker\r
-#define GL_EXT_scene_marker 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINSCENEEXTPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLENDSCENEEXTPROC) (void);\r
-\r
-#define glBeginSceneEXT GLEW_GET_FUN(__glewBeginSceneEXT)\r
-#define glEndSceneEXT GLEW_GET_FUN(__glewEndSceneEXT)\r
-\r
-#define GLEW_EXT_scene_marker GLEW_GET_VAR(__GLEW_EXT_scene_marker)\r
-\r
-#endif /* GL_EXT_scene_marker */\r
-\r
-/* ------------------------- GL_EXT_secondary_color ------------------------ */\r
-\r
-#ifndef GL_EXT_secondary_color\r
-#define GL_EXT_secondary_color 1\r
-\r
-#define GL_COLOR_SUM_EXT 0x8458\r
-#define GL_CURRENT_SECONDARY_COLOR_EXT 0x8459\r
-#define GL_SECONDARY_COLOR_ARRAY_SIZE_EXT 0x845A\r
-#define GL_SECONDARY_COLOR_ARRAY_TYPE_EXT 0x845B\r
-#define GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT 0x845C\r
-#define GL_SECONDARY_COLOR_ARRAY_POINTER_EXT 0x845D\r
-#define GL_SECONDARY_COLOR_ARRAY_EXT 0x845E\r
-\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BEXTPROC) (GLbyte red, GLbyte green, GLbyte blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3BVEXTPROC) (const GLbyte *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DEXTPROC) (GLdouble red, GLdouble green, GLdouble blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3DVEXTPROC) (const GLdouble *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FEXTPROC) (GLfloat red, GLfloat green, GLfloat blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3FVEXTPROC) (const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IEXTPROC) (GLint red, GLint green, GLint blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3IVEXTPROC) (const GLint *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SEXTPROC) (GLshort red, GLshort green, GLshort blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3SVEXTPROC) (const GLshort *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBEXTPROC) (GLubyte red, GLubyte green, GLubyte blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UBVEXTPROC) (const GLubyte *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIEXTPROC) (GLuint red, GLuint green, GLuint blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3UIVEXTPROC) (const GLuint *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USEXTPROC) (GLushort red, GLushort green, GLushort blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3USVEXTPROC) (const GLushort *v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);\r
-\r
-#define glSecondaryColor3bEXT GLEW_GET_FUN(__glewSecondaryColor3bEXT)\r
-#define glSecondaryColor3bvEXT GLEW_GET_FUN(__glewSecondaryColor3bvEXT)\r
-#define glSecondaryColor3dEXT GLEW_GET_FUN(__glewSecondaryColor3dEXT)\r
-#define glSecondaryColor3dvEXT GLEW_GET_FUN(__glewSecondaryColor3dvEXT)\r
-#define glSecondaryColor3fEXT GLEW_GET_FUN(__glewSecondaryColor3fEXT)\r
-#define glSecondaryColor3fvEXT GLEW_GET_FUN(__glewSecondaryColor3fvEXT)\r
-#define glSecondaryColor3iEXT GLEW_GET_FUN(__glewSecondaryColor3iEXT)\r
-#define glSecondaryColor3ivEXT GLEW_GET_FUN(__glewSecondaryColor3ivEXT)\r
-#define glSecondaryColor3sEXT GLEW_GET_FUN(__glewSecondaryColor3sEXT)\r
-#define glSecondaryColor3svEXT GLEW_GET_FUN(__glewSecondaryColor3svEXT)\r
-#define glSecondaryColor3ubEXT GLEW_GET_FUN(__glewSecondaryColor3ubEXT)\r
-#define glSecondaryColor3ubvEXT GLEW_GET_FUN(__glewSecondaryColor3ubvEXT)\r
-#define glSecondaryColor3uiEXT GLEW_GET_FUN(__glewSecondaryColor3uiEXT)\r
-#define glSecondaryColor3uivEXT GLEW_GET_FUN(__glewSecondaryColor3uivEXT)\r
-#define glSecondaryColor3usEXT GLEW_GET_FUN(__glewSecondaryColor3usEXT)\r
-#define glSecondaryColor3usvEXT GLEW_GET_FUN(__glewSecondaryColor3usvEXT)\r
-#define glSecondaryColorPointerEXT GLEW_GET_FUN(__glewSecondaryColorPointerEXT)\r
-\r
-#define GLEW_EXT_secondary_color GLEW_GET_VAR(__GLEW_EXT_secondary_color)\r
-\r
-#endif /* GL_EXT_secondary_color */\r
-\r
-/* --------------------- GL_EXT_separate_shader_objects -------------------- */\r
-\r
-#ifndef GL_EXT_separate_shader_objects\r
-#define GL_EXT_separate_shader_objects 1\r
-\r
-#define GL_ACTIVE_PROGRAM_EXT 0x8B8D\r
-\r
-typedef void (GLAPIENTRY * PFNGLACTIVEPROGRAMEXTPROC) (GLuint program);\r
-typedef GLuint (GLAPIENTRY * PFNGLCREATESHADERPROGRAMEXTPROC) (GLenum type, const char* string);\r
-typedef void (GLAPIENTRY * PFNGLUSESHADERPROGRAMEXTPROC) (GLenum type, GLuint program);\r
-\r
-#define glActiveProgramEXT GLEW_GET_FUN(__glewActiveProgramEXT)\r
-#define glCreateShaderProgramEXT GLEW_GET_FUN(__glewCreateShaderProgramEXT)\r
-#define glUseShaderProgramEXT GLEW_GET_FUN(__glewUseShaderProgramEXT)\r
-\r
-#define GLEW_EXT_separate_shader_objects GLEW_GET_VAR(__GLEW_EXT_separate_shader_objects)\r
-\r
-#endif /* GL_EXT_separate_shader_objects */\r
-\r
-/* --------------------- GL_EXT_separate_specular_color -------------------- */\r
-\r
-#ifndef GL_EXT_separate_specular_color\r
-#define GL_EXT_separate_specular_color 1\r
-\r
-#define GL_LIGHT_MODEL_COLOR_CONTROL_EXT 0x81F8\r
-#define GL_SINGLE_COLOR_EXT 0x81F9\r
-#define GL_SEPARATE_SPECULAR_COLOR_EXT 0x81FA\r
-\r
-#define GLEW_EXT_separate_specular_color GLEW_GET_VAR(__GLEW_EXT_separate_specular_color)\r
-\r
-#endif /* GL_EXT_separate_specular_color */\r
-\r
-/* --------------------- GL_EXT_shader_image_load_store -------------------- */\r
-\r
-#ifndef GL_EXT_shader_image_load_store\r
-#define GL_EXT_shader_image_load_store 1\r
-\r
-#define GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT 0x00000001\r
-#define GL_ELEMENT_ARRAY_BARRIER_BIT_EXT 0x00000002\r
-#define GL_UNIFORM_BARRIER_BIT_EXT 0x00000004\r
-#define GL_TEXTURE_FETCH_BARRIER_BIT_EXT 0x00000008\r
-#define GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT 0x00000020\r
-#define GL_COMMAND_BARRIER_BIT_EXT 0x00000040\r
-#define GL_PIXEL_BUFFER_BARRIER_BIT_EXT 0x00000080\r
-#define GL_TEXTURE_UPDATE_BARRIER_BIT_EXT 0x00000100\r
-#define GL_BUFFER_UPDATE_BARRIER_BIT_EXT 0x00000200\r
-#define GL_FRAMEBUFFER_BARRIER_BIT_EXT 0x00000400\r
-#define GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT 0x00000800\r
-#define GL_ATOMIC_COUNTER_BARRIER_BIT_EXT 0x00001000\r
-#define GL_MAX_IMAGE_UNITS_EXT 0x8F38\r
-#define GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT 0x8F39\r
-#define GL_IMAGE_BINDING_NAME_EXT 0x8F3A\r
-#define GL_IMAGE_BINDING_LEVEL_EXT 0x8F3B\r
-#define GL_IMAGE_BINDING_LAYERED_EXT 0x8F3C\r
-#define GL_IMAGE_BINDING_LAYER_EXT 0x8F3D\r
-#define GL_IMAGE_BINDING_ACCESS_EXT 0x8F3E\r
-#define GL_IMAGE_1D_EXT 0x904C\r
-#define GL_IMAGE_2D_EXT 0x904D\r
-#define GL_IMAGE_3D_EXT 0x904E\r
-#define GL_IMAGE_2D_RECT_EXT 0x904F\r
-#define GL_IMAGE_CUBE_EXT 0x9050\r
-#define GL_IMAGE_BUFFER_EXT 0x9051\r
-#define GL_IMAGE_1D_ARRAY_EXT 0x9052\r
-#define GL_IMAGE_2D_ARRAY_EXT 0x9053\r
-#define GL_IMAGE_CUBE_MAP_ARRAY_EXT 0x9054\r
-#define GL_IMAGE_2D_MULTISAMPLE_EXT 0x9055\r
-#define GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9056\r
-#define GL_INT_IMAGE_1D_EXT 0x9057\r
-#define GL_INT_IMAGE_2D_EXT 0x9058\r
-#define GL_INT_IMAGE_3D_EXT 0x9059\r
-#define GL_INT_IMAGE_2D_RECT_EXT 0x905A\r
-#define GL_INT_IMAGE_CUBE_EXT 0x905B\r
-#define GL_INT_IMAGE_BUFFER_EXT 0x905C\r
-#define GL_INT_IMAGE_1D_ARRAY_EXT 0x905D\r
-#define GL_INT_IMAGE_2D_ARRAY_EXT 0x905E\r
-#define GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x905F\r
-#define GL_INT_IMAGE_2D_MULTISAMPLE_EXT 0x9060\r
-#define GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x9061\r
-#define GL_UNSIGNED_INT_IMAGE_1D_EXT 0x9062\r
-#define GL_UNSIGNED_INT_IMAGE_2D_EXT 0x9063\r
-#define GL_UNSIGNED_INT_IMAGE_3D_EXT 0x9064\r
-#define GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT 0x9065\r
-#define GL_UNSIGNED_INT_IMAGE_CUBE_EXT 0x9066\r
-#define GL_UNSIGNED_INT_IMAGE_BUFFER_EXT 0x9067\r
-#define GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT 0x9068\r
-#define GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT 0x9069\r
-#define GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT 0x906A\r
-#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT 0x906B\r
-#define GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT 0x906C\r
-#define GL_MAX_IMAGE_SAMPLES_EXT 0x906D\r
-#define GL_IMAGE_BINDING_FORMAT_EXT 0x906E\r
-#define GL_ALL_BARRIER_BITS_EXT 0xFFFFFFFF\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDIMAGETEXTUREEXTPROC) (GLuint index, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLint format);\r
-typedef void (GLAPIENTRY * PFNGLMEMORYBARRIEREXTPROC) (GLbitfield barriers);\r
-\r
-#define glBindImageTextureEXT GLEW_GET_FUN(__glewBindImageTextureEXT)\r
-#define glMemoryBarrierEXT GLEW_GET_FUN(__glewMemoryBarrierEXT)\r
-\r
-#define GLEW_EXT_shader_image_load_store GLEW_GET_VAR(__GLEW_EXT_shader_image_load_store)\r
-\r
-#endif /* GL_EXT_shader_image_load_store */\r
-\r
-/* -------------------------- GL_EXT_shadow_funcs -------------------------- */\r
-\r
-#ifndef GL_EXT_shadow_funcs\r
-#define GL_EXT_shadow_funcs 1\r
-\r
-#define GLEW_EXT_shadow_funcs GLEW_GET_VAR(__GLEW_EXT_shadow_funcs)\r
-\r
-#endif /* GL_EXT_shadow_funcs */\r
-\r
-/* --------------------- GL_EXT_shared_texture_palette --------------------- */\r
-\r
-#ifndef GL_EXT_shared_texture_palette\r
-#define GL_EXT_shared_texture_palette 1\r
-\r
-#define GL_SHARED_TEXTURE_PALETTE_EXT 0x81FB\r
-\r
-#define GLEW_EXT_shared_texture_palette GLEW_GET_VAR(__GLEW_EXT_shared_texture_palette)\r
-\r
-#endif /* GL_EXT_shared_texture_palette */\r
-\r
-/* ------------------------ GL_EXT_stencil_clear_tag ----------------------- */\r
-\r
-#ifndef GL_EXT_stencil_clear_tag\r
-#define GL_EXT_stencil_clear_tag 1\r
-\r
-#define GL_STENCIL_TAG_BITS_EXT 0x88F2\r
-#define GL_STENCIL_CLEAR_TAG_VALUE_EXT 0x88F3\r
-\r
-#define GLEW_EXT_stencil_clear_tag GLEW_GET_VAR(__GLEW_EXT_stencil_clear_tag)\r
-\r
-#endif /* GL_EXT_stencil_clear_tag */\r
-\r
-/* ------------------------ GL_EXT_stencil_two_side ------------------------ */\r
-\r
-#ifndef GL_EXT_stencil_two_side\r
-#define GL_EXT_stencil_two_side 1\r
-\r
-#define GL_STENCIL_TEST_TWO_SIDE_EXT 0x8910\r
-#define GL_ACTIVE_STENCIL_FACE_EXT 0x8911\r
-\r
-typedef void (GLAPIENTRY * PFNGLACTIVESTENCILFACEEXTPROC) (GLenum face);\r
-\r
-#define glActiveStencilFaceEXT GLEW_GET_FUN(__glewActiveStencilFaceEXT)\r
-\r
-#define GLEW_EXT_stencil_two_side GLEW_GET_VAR(__GLEW_EXT_stencil_two_side)\r
-\r
-#endif /* GL_EXT_stencil_two_side */\r
-\r
-/* -------------------------- GL_EXT_stencil_wrap -------------------------- */\r
-\r
-#ifndef GL_EXT_stencil_wrap\r
-#define GL_EXT_stencil_wrap 1\r
-\r
-#define GL_INCR_WRAP_EXT 0x8507\r
-#define GL_DECR_WRAP_EXT 0x8508\r
-\r
-#define GLEW_EXT_stencil_wrap GLEW_GET_VAR(__GLEW_EXT_stencil_wrap)\r
-\r
-#endif /* GL_EXT_stencil_wrap */\r
-\r
-/* --------------------------- GL_EXT_subtexture --------------------------- */\r
-\r
-#ifndef GL_EXT_subtexture\r
-#define GL_EXT_subtexture 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE1DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE2DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE3DEXTPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);\r
-\r
-#define glTexSubImage1DEXT GLEW_GET_FUN(__glewTexSubImage1DEXT)\r
-#define glTexSubImage2DEXT GLEW_GET_FUN(__glewTexSubImage2DEXT)\r
-#define glTexSubImage3DEXT GLEW_GET_FUN(__glewTexSubImage3DEXT)\r
-\r
-#define GLEW_EXT_subtexture GLEW_GET_VAR(__GLEW_EXT_subtexture)\r
-\r
-#endif /* GL_EXT_subtexture */\r
-\r
-/* ----------------------------- GL_EXT_texture ---------------------------- */\r
-\r
-#ifndef GL_EXT_texture\r
-#define GL_EXT_texture 1\r
-\r
-#define GL_ALPHA4_EXT 0x803B\r
-#define GL_ALPHA8_EXT 0x803C\r
-#define GL_ALPHA12_EXT 0x803D\r
-#define GL_ALPHA16_EXT 0x803E\r
-#define GL_LUMINANCE4_EXT 0x803F\r
-#define GL_LUMINANCE8_EXT 0x8040\r
-#define GL_LUMINANCE12_EXT 0x8041\r
-#define GL_LUMINANCE16_EXT 0x8042\r
-#define GL_LUMINANCE4_ALPHA4_EXT 0x8043\r
-#define GL_LUMINANCE6_ALPHA2_EXT 0x8044\r
-#define GL_LUMINANCE8_ALPHA8_EXT 0x8045\r
-#define GL_LUMINANCE12_ALPHA4_EXT 0x8046\r
-#define GL_LUMINANCE12_ALPHA12_EXT 0x8047\r
-#define GL_LUMINANCE16_ALPHA16_EXT 0x8048\r
-#define GL_INTENSITY_EXT 0x8049\r
-#define GL_INTENSITY4_EXT 0x804A\r
-#define GL_INTENSITY8_EXT 0x804B\r
-#define GL_INTENSITY12_EXT 0x804C\r
-#define GL_INTENSITY16_EXT 0x804D\r
-#define GL_RGB2_EXT 0x804E\r
-#define GL_RGB4_EXT 0x804F\r
-#define GL_RGB5_EXT 0x8050\r
-#define GL_RGB8_EXT 0x8051\r
-#define GL_RGB10_EXT 0x8052\r
-#define GL_RGB12_EXT 0x8053\r
-#define GL_RGB16_EXT 0x8054\r
-#define GL_RGBA2_EXT 0x8055\r
-#define GL_RGBA4_EXT 0x8056\r
-#define GL_RGB5_A1_EXT 0x8057\r
-#define GL_RGBA8_EXT 0x8058\r
-#define GL_RGB10_A2_EXT 0x8059\r
-#define GL_RGBA12_EXT 0x805A\r
-#define GL_RGBA16_EXT 0x805B\r
-#define GL_TEXTURE_RED_SIZE_EXT 0x805C\r
-#define GL_TEXTURE_GREEN_SIZE_EXT 0x805D\r
-#define GL_TEXTURE_BLUE_SIZE_EXT 0x805E\r
-#define GL_TEXTURE_ALPHA_SIZE_EXT 0x805F\r
-#define GL_TEXTURE_LUMINANCE_SIZE_EXT 0x8060\r
-#define GL_TEXTURE_INTENSITY_SIZE_EXT 0x8061\r
-#define GL_REPLACE_EXT 0x8062\r
-#define GL_PROXY_TEXTURE_1D_EXT 0x8063\r
-#define GL_PROXY_TEXTURE_2D_EXT 0x8064\r
-\r
-#define GLEW_EXT_texture GLEW_GET_VAR(__GLEW_EXT_texture)\r
-\r
-#endif /* GL_EXT_texture */\r
-\r
-/* ---------------------------- GL_EXT_texture3D --------------------------- */\r
-\r
-#ifndef GL_EXT_texture3D\r
-#define GL_EXT_texture3D 1\r
-\r
-#define GL_PACK_SKIP_IMAGES_EXT 0x806B\r
-#define GL_PACK_IMAGE_HEIGHT_EXT 0x806C\r
-#define GL_UNPACK_SKIP_IMAGES_EXT 0x806D\r
-#define GL_UNPACK_IMAGE_HEIGHT_EXT 0x806E\r
-#define GL_TEXTURE_3D_EXT 0x806F\r
-#define GL_PROXY_TEXTURE_3D_EXT 0x8070\r
-#define GL_TEXTURE_DEPTH_EXT 0x8071\r
-#define GL_TEXTURE_WRAP_R_EXT 0x8072\r
-#define GL_MAX_3D_TEXTURE_SIZE_EXT 0x8073\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DEXTPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels);\r
-\r
-#define glTexImage3DEXT GLEW_GET_FUN(__glewTexImage3DEXT)\r
-\r
-#define GLEW_EXT_texture3D GLEW_GET_VAR(__GLEW_EXT_texture3D)\r
-\r
-#endif /* GL_EXT_texture3D */\r
-\r
-/* -------------------------- GL_EXT_texture_array ------------------------- */\r
-\r
-#ifndef GL_EXT_texture_array\r
-#define GL_EXT_texture_array 1\r
-\r
-#define GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT 0x884E\r
-#define GL_MAX_ARRAY_TEXTURE_LAYERS_EXT 0x88FF\r
-#define GL_TEXTURE_1D_ARRAY_EXT 0x8C18\r
-#define GL_PROXY_TEXTURE_1D_ARRAY_EXT 0x8C19\r
-#define GL_TEXTURE_2D_ARRAY_EXT 0x8C1A\r
-#define GL_PROXY_TEXTURE_2D_ARRAY_EXT 0x8C1B\r
-#define GL_TEXTURE_BINDING_1D_ARRAY_EXT 0x8C1C\r
-#define GL_TEXTURE_BINDING_2D_ARRAY_EXT 0x8C1D\r
-\r
-typedef void (GLAPIENTRY * PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);\r
-\r
-#define glFramebufferTextureLayerEXT GLEW_GET_FUN(__glewFramebufferTextureLayerEXT)\r
-\r
-#define GLEW_EXT_texture_array GLEW_GET_VAR(__GLEW_EXT_texture_array)\r
-\r
-#endif /* GL_EXT_texture_array */\r
-\r
-/* ---------------------- GL_EXT_texture_buffer_object --------------------- */\r
-\r
-#ifndef GL_EXT_texture_buffer_object\r
-#define GL_EXT_texture_buffer_object 1\r
-\r
-#define GL_TEXTURE_BUFFER_EXT 0x8C2A\r
-#define GL_MAX_TEXTURE_BUFFER_SIZE_EXT 0x8C2B\r
-#define GL_TEXTURE_BINDING_BUFFER_EXT 0x8C2C\r
-#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT 0x8C2D\r
-#define GL_TEXTURE_BUFFER_FORMAT_EXT 0x8C2E\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXBUFFEREXTPROC) (GLenum target, GLenum internalformat, GLuint buffer);\r
-\r
-#define glTexBufferEXT GLEW_GET_FUN(__glewTexBufferEXT)\r
-\r
-#define GLEW_EXT_texture_buffer_object GLEW_GET_VAR(__GLEW_EXT_texture_buffer_object)\r
-\r
-#endif /* GL_EXT_texture_buffer_object */\r
-\r
-/* -------------------- GL_EXT_texture_compression_dxt1 -------------------- */\r
-\r
-#ifndef GL_EXT_texture_compression_dxt1\r
-#define GL_EXT_texture_compression_dxt1 1\r
-\r
-#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0\r
-#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1\r
-\r
-#define GLEW_EXT_texture_compression_dxt1 GLEW_GET_VAR(__GLEW_EXT_texture_compression_dxt1)\r
-\r
-#endif /* GL_EXT_texture_compression_dxt1 */\r
-\r
-/* -------------------- GL_EXT_texture_compression_latc -------------------- */\r
-\r
-#ifndef GL_EXT_texture_compression_latc\r
-#define GL_EXT_texture_compression_latc 1\r
-\r
-#define GL_COMPRESSED_LUMINANCE_LATC1_EXT 0x8C70\r
-#define GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT 0x8C71\r
-#define GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT 0x8C72\r
-#define GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT 0x8C73\r
-\r
-#define GLEW_EXT_texture_compression_latc GLEW_GET_VAR(__GLEW_EXT_texture_compression_latc)\r
-\r
-#endif /* GL_EXT_texture_compression_latc */\r
-\r
-/* -------------------- GL_EXT_texture_compression_rgtc -------------------- */\r
-\r
-#ifndef GL_EXT_texture_compression_rgtc\r
-#define GL_EXT_texture_compression_rgtc 1\r
-\r
-#define GL_COMPRESSED_RED_RGTC1_EXT 0x8DBB\r
-#define GL_COMPRESSED_SIGNED_RED_RGTC1_EXT 0x8DBC\r
-#define GL_COMPRESSED_RED_GREEN_RGTC2_EXT 0x8DBD\r
-#define GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT 0x8DBE\r
-\r
-#define GLEW_EXT_texture_compression_rgtc GLEW_GET_VAR(__GLEW_EXT_texture_compression_rgtc)\r
-\r
-#endif /* GL_EXT_texture_compression_rgtc */\r
-\r
-/* -------------------- GL_EXT_texture_compression_s3tc -------------------- */\r
-\r
-#ifndef GL_EXT_texture_compression_s3tc\r
-#define GL_EXT_texture_compression_s3tc 1\r
-\r
-#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0\r
-#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1\r
-#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2\r
-#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3\r
-\r
-#define GLEW_EXT_texture_compression_s3tc GLEW_GET_VAR(__GLEW_EXT_texture_compression_s3tc)\r
-\r
-#endif /* GL_EXT_texture_compression_s3tc */\r
-\r
-/* ------------------------ GL_EXT_texture_cube_map ------------------------ */\r
-\r
-#ifndef GL_EXT_texture_cube_map\r
-#define GL_EXT_texture_cube_map 1\r
-\r
-#define GL_NORMAL_MAP_EXT 0x8511\r
-#define GL_REFLECTION_MAP_EXT 0x8512\r
-#define GL_TEXTURE_CUBE_MAP_EXT 0x8513\r
-#define GL_TEXTURE_BINDING_CUBE_MAP_EXT 0x8514\r
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT 0x8515\r
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT 0x8516\r
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT 0x8517\r
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT 0x8518\r
-#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT 0x8519\r
-#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT 0x851A\r
-#define GL_PROXY_TEXTURE_CUBE_MAP_EXT 0x851B\r
-#define GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT 0x851C\r
-\r
-#define GLEW_EXT_texture_cube_map GLEW_GET_VAR(__GLEW_EXT_texture_cube_map)\r
-\r
-#endif /* GL_EXT_texture_cube_map */\r
-\r
-/* ----------------------- GL_EXT_texture_edge_clamp ----------------------- */\r
-\r
-#ifndef GL_EXT_texture_edge_clamp\r
-#define GL_EXT_texture_edge_clamp 1\r
-\r
-#define GL_CLAMP_TO_EDGE_EXT 0x812F\r
-\r
-#define GLEW_EXT_texture_edge_clamp GLEW_GET_VAR(__GLEW_EXT_texture_edge_clamp)\r
-\r
-#endif /* GL_EXT_texture_edge_clamp */\r
-\r
-/* --------------------------- GL_EXT_texture_env -------------------------- */\r
-\r
-#ifndef GL_EXT_texture_env\r
-#define GL_EXT_texture_env 1\r
-\r
-#define GL_TEXTURE_ENV0_EXT 0\r
-#define GL_ENV_BLEND_EXT 0\r
-#define GL_TEXTURE_ENV_SHIFT_EXT 0\r
-#define GL_ENV_REPLACE_EXT 0\r
-#define GL_ENV_ADD_EXT 0\r
-#define GL_ENV_SUBTRACT_EXT 0\r
-#define GL_TEXTURE_ENV_MODE_ALPHA_EXT 0\r
-#define GL_ENV_REVERSE_SUBTRACT_EXT 0\r
-#define GL_ENV_REVERSE_BLEND_EXT 0\r
-#define GL_ENV_COPY_EXT 0\r
-#define GL_ENV_MODULATE_EXT 0\r
-\r
-#define GLEW_EXT_texture_env GLEW_GET_VAR(__GLEW_EXT_texture_env)\r
-\r
-#endif /* GL_EXT_texture_env */\r
-\r
-/* ------------------------- GL_EXT_texture_env_add ------------------------ */\r
-\r
-#ifndef GL_EXT_texture_env_add\r
-#define GL_EXT_texture_env_add 1\r
-\r
-#define GLEW_EXT_texture_env_add GLEW_GET_VAR(__GLEW_EXT_texture_env_add)\r
-\r
-#endif /* GL_EXT_texture_env_add */\r
-\r
-/* ----------------------- GL_EXT_texture_env_combine ---------------------- */\r
-\r
-#ifndef GL_EXT_texture_env_combine\r
-#define GL_EXT_texture_env_combine 1\r
-\r
-#define GL_COMBINE_EXT 0x8570\r
-#define GL_COMBINE_RGB_EXT 0x8571\r
-#define GL_COMBINE_ALPHA_EXT 0x8572\r
-#define GL_RGB_SCALE_EXT 0x8573\r
-#define GL_ADD_SIGNED_EXT 0x8574\r
-#define GL_INTERPOLATE_EXT 0x8575\r
-#define GL_CONSTANT_EXT 0x8576\r
-#define GL_PRIMARY_COLOR_EXT 0x8577\r
-#define GL_PREVIOUS_EXT 0x8578\r
-#define GL_SOURCE0_RGB_EXT 0x8580\r
-#define GL_SOURCE1_RGB_EXT 0x8581\r
-#define GL_SOURCE2_RGB_EXT 0x8582\r
-#define GL_SOURCE0_ALPHA_EXT 0x8588\r
-#define GL_SOURCE1_ALPHA_EXT 0x8589\r
-#define GL_SOURCE2_ALPHA_EXT 0x858A\r
-#define GL_OPERAND0_RGB_EXT 0x8590\r
-#define GL_OPERAND1_RGB_EXT 0x8591\r
-#define GL_OPERAND2_RGB_EXT 0x8592\r
-#define GL_OPERAND0_ALPHA_EXT 0x8598\r
-#define GL_OPERAND1_ALPHA_EXT 0x8599\r
-#define GL_OPERAND2_ALPHA_EXT 0x859A\r
-\r
-#define GLEW_EXT_texture_env_combine GLEW_GET_VAR(__GLEW_EXT_texture_env_combine)\r
-\r
-#endif /* GL_EXT_texture_env_combine */\r
-\r
-/* ------------------------ GL_EXT_texture_env_dot3 ------------------------ */\r
-\r
-#ifndef GL_EXT_texture_env_dot3\r
-#define GL_EXT_texture_env_dot3 1\r
-\r
-#define GL_DOT3_RGB_EXT 0x8740\r
-#define GL_DOT3_RGBA_EXT 0x8741\r
-\r
-#define GLEW_EXT_texture_env_dot3 GLEW_GET_VAR(__GLEW_EXT_texture_env_dot3)\r
-\r
-#endif /* GL_EXT_texture_env_dot3 */\r
-\r
-/* ------------------- GL_EXT_texture_filter_anisotropic ------------------- */\r
-\r
-#ifndef GL_EXT_texture_filter_anisotropic\r
-#define GL_EXT_texture_filter_anisotropic 1\r
-\r
-#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE\r
-#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF\r
-\r
-#define GLEW_EXT_texture_filter_anisotropic GLEW_GET_VAR(__GLEW_EXT_texture_filter_anisotropic)\r
-\r
-#endif /* GL_EXT_texture_filter_anisotropic */\r
-\r
-/* ------------------------- GL_EXT_texture_integer ------------------------ */\r
-\r
-#ifndef GL_EXT_texture_integer\r
-#define GL_EXT_texture_integer 1\r
-\r
-#define GL_RGBA32UI_EXT 0x8D70\r
-#define GL_RGB32UI_EXT 0x8D71\r
-#define GL_ALPHA32UI_EXT 0x8D72\r
-#define GL_INTENSITY32UI_EXT 0x8D73\r
-#define GL_LUMINANCE32UI_EXT 0x8D74\r
-#define GL_LUMINANCE_ALPHA32UI_EXT 0x8D75\r
-#define GL_RGBA16UI_EXT 0x8D76\r
-#define GL_RGB16UI_EXT 0x8D77\r
-#define GL_ALPHA16UI_EXT 0x8D78\r
-#define GL_INTENSITY16UI_EXT 0x8D79\r
-#define GL_LUMINANCE16UI_EXT 0x8D7A\r
-#define GL_LUMINANCE_ALPHA16UI_EXT 0x8D7B\r
-#define GL_RGBA8UI_EXT 0x8D7C\r
-#define GL_RGB8UI_EXT 0x8D7D\r
-#define GL_ALPHA8UI_EXT 0x8D7E\r
-#define GL_INTENSITY8UI_EXT 0x8D7F\r
-#define GL_LUMINANCE8UI_EXT 0x8D80\r
-#define GL_LUMINANCE_ALPHA8UI_EXT 0x8D81\r
-#define GL_RGBA32I_EXT 0x8D82\r
-#define GL_RGB32I_EXT 0x8D83\r
-#define GL_ALPHA32I_EXT 0x8D84\r
-#define GL_INTENSITY32I_EXT 0x8D85\r
-#define GL_LUMINANCE32I_EXT 0x8D86\r
-#define GL_LUMINANCE_ALPHA32I_EXT 0x8D87\r
-#define GL_RGBA16I_EXT 0x8D88\r
-#define GL_RGB16I_EXT 0x8D89\r
-#define GL_ALPHA16I_EXT 0x8D8A\r
-#define GL_INTENSITY16I_EXT 0x8D8B\r
-#define GL_LUMINANCE16I_EXT 0x8D8C\r
-#define GL_LUMINANCE_ALPHA16I_EXT 0x8D8D\r
-#define GL_RGBA8I_EXT 0x8D8E\r
-#define GL_RGB8I_EXT 0x8D8F\r
-#define GL_ALPHA8I_EXT 0x8D90\r
-#define GL_INTENSITY8I_EXT 0x8D91\r
-#define GL_LUMINANCE8I_EXT 0x8D92\r
-#define GL_LUMINANCE_ALPHA8I_EXT 0x8D93\r
-#define GL_RED_INTEGER_EXT 0x8D94\r
-#define GL_GREEN_INTEGER_EXT 0x8D95\r
-#define GL_BLUE_INTEGER_EXT 0x8D96\r
-#define GL_ALPHA_INTEGER_EXT 0x8D97\r
-#define GL_RGB_INTEGER_EXT 0x8D98\r
-#define GL_RGBA_INTEGER_EXT 0x8D99\r
-#define GL_BGR_INTEGER_EXT 0x8D9A\r
-#define GL_BGRA_INTEGER_EXT 0x8D9B\r
-#define GL_LUMINANCE_INTEGER_EXT 0x8D9C\r
-#define GL_LUMINANCE_ALPHA_INTEGER_EXT 0x8D9D\r
-#define GL_RGBA_INTEGER_MODE_EXT 0x8D9E\r
-\r
-typedef void (GLAPIENTRY * PFNGLCLEARCOLORIIEXTPROC) (GLint red, GLint green, GLint blue, GLint alpha);\r
-typedef void (GLAPIENTRY * PFNGLCLEARCOLORIUIEXTPROC) (GLuint red, GLuint green, GLuint blue, GLuint alpha);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLGETTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, GLuint *params);\r
-typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIIVEXTPROC) (GLenum target, GLenum pname, const GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLTEXPARAMETERIUIVEXTPROC) (GLenum target, GLenum pname, const GLuint *params);\r
-\r
-#define glClearColorIiEXT GLEW_GET_FUN(__glewClearColorIiEXT)\r
-#define glClearColorIuiEXT GLEW_GET_FUN(__glewClearColorIuiEXT)\r
-#define glGetTexParameterIivEXT GLEW_GET_FUN(__glewGetTexParameterIivEXT)\r
-#define glGetTexParameterIuivEXT GLEW_GET_FUN(__glewGetTexParameterIuivEXT)\r
-#define glTexParameterIivEXT GLEW_GET_FUN(__glewTexParameterIivEXT)\r
-#define glTexParameterIuivEXT GLEW_GET_FUN(__glewTexParameterIuivEXT)\r
-\r
-#define GLEW_EXT_texture_integer GLEW_GET_VAR(__GLEW_EXT_texture_integer)\r
-\r
-#endif /* GL_EXT_texture_integer */\r
-\r
-/* ------------------------ GL_EXT_texture_lod_bias ------------------------ */\r
-\r
-#ifndef GL_EXT_texture_lod_bias\r
-#define GL_EXT_texture_lod_bias 1\r
-\r
-#define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD\r
-#define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500\r
-#define GL_TEXTURE_LOD_BIAS_EXT 0x8501\r
-\r
-#define GLEW_EXT_texture_lod_bias GLEW_GET_VAR(__GLEW_EXT_texture_lod_bias)\r
-\r
-#endif /* GL_EXT_texture_lod_bias */\r
-\r
-/* ---------------------- GL_EXT_texture_mirror_clamp ---------------------- */\r
-\r
-#ifndef GL_EXT_texture_mirror_clamp\r
-#define GL_EXT_texture_mirror_clamp 1\r
-\r
-#define GL_MIRROR_CLAMP_EXT 0x8742\r
-#define GL_MIRROR_CLAMP_TO_EDGE_EXT 0x8743\r
-#define GL_MIRROR_CLAMP_TO_BORDER_EXT 0x8912\r
-\r
-#define GLEW_EXT_texture_mirror_clamp GLEW_GET_VAR(__GLEW_EXT_texture_mirror_clamp)\r
-\r
-#endif /* GL_EXT_texture_mirror_clamp */\r
-\r
-/* ------------------------- GL_EXT_texture_object ------------------------- */\r
-\r
-#ifndef GL_EXT_texture_object\r
-#define GL_EXT_texture_object 1\r
-\r
-#define GL_TEXTURE_PRIORITY_EXT 0x8066\r
-#define GL_TEXTURE_RESIDENT_EXT 0x8067\r
-#define GL_TEXTURE_1D_BINDING_EXT 0x8068\r
-#define GL_TEXTURE_2D_BINDING_EXT 0x8069\r
-#define GL_TEXTURE_3D_BINDING_EXT 0x806A\r
-\r
-typedef GLboolean (GLAPIENTRY * PFNGLARETEXTURESRESIDENTEXTPROC) (GLsizei n, const GLuint* textures, GLboolean* residences);\r
-typedef void (GLAPIENTRY * PFNGLBINDTEXTUREEXTPROC) (GLenum target, GLuint texture);\r
-typedef void (GLAPIENTRY * PFNGLDELETETEXTURESEXTPROC) (GLsizei n, const GLuint* textures);\r
-typedef void (GLAPIENTRY * PFNGLGENTEXTURESEXTPROC) (GLsizei n, GLuint* textures);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISTEXTUREEXTPROC) (GLuint texture);\r
-typedef void (GLAPIENTRY * PFNGLPRIORITIZETEXTURESEXTPROC) (GLsizei n, const GLuint* textures, const GLclampf* priorities);\r
-\r
-#define glAreTexturesResidentEXT GLEW_GET_FUN(__glewAreTexturesResidentEXT)\r
-#define glBindTextureEXT GLEW_GET_FUN(__glewBindTextureEXT)\r
-#define glDeleteTexturesEXT GLEW_GET_FUN(__glewDeleteTexturesEXT)\r
-#define glGenTexturesEXT GLEW_GET_FUN(__glewGenTexturesEXT)\r
-#define glIsTextureEXT GLEW_GET_FUN(__glewIsTextureEXT)\r
-#define glPrioritizeTexturesEXT GLEW_GET_FUN(__glewPrioritizeTexturesEXT)\r
-\r
-#define GLEW_EXT_texture_object GLEW_GET_VAR(__GLEW_EXT_texture_object)\r
-\r
-#endif /* GL_EXT_texture_object */\r
-\r
-/* --------------------- GL_EXT_texture_perturb_normal --------------------- */\r
-\r
-#ifndef GL_EXT_texture_perturb_normal\r
-#define GL_EXT_texture_perturb_normal 1\r
-\r
-#define GL_PERTURB_EXT 0x85AE\r
-#define GL_TEXTURE_NORMAL_EXT 0x85AF\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXTURENORMALEXTPROC) (GLenum mode);\r
-\r
-#define glTextureNormalEXT GLEW_GET_FUN(__glewTextureNormalEXT)\r
-\r
-#define GLEW_EXT_texture_perturb_normal GLEW_GET_VAR(__GLEW_EXT_texture_perturb_normal)\r
-\r
-#endif /* GL_EXT_texture_perturb_normal */\r
-\r
-/* ------------------------ GL_EXT_texture_rectangle ----------------------- */\r
-\r
-#ifndef GL_EXT_texture_rectangle\r
-#define GL_EXT_texture_rectangle 1\r
-\r
-#define GL_TEXTURE_RECTANGLE_EXT 0x84F5\r
-#define GL_TEXTURE_BINDING_RECTANGLE_EXT 0x84F6\r
-#define GL_PROXY_TEXTURE_RECTANGLE_EXT 0x84F7\r
-#define GL_MAX_RECTANGLE_TEXTURE_SIZE_EXT 0x84F8\r
-\r
-#define GLEW_EXT_texture_rectangle GLEW_GET_VAR(__GLEW_EXT_texture_rectangle)\r
-\r
-#endif /* GL_EXT_texture_rectangle */\r
-\r
-/* -------------------------- GL_EXT_texture_sRGB -------------------------- */\r
-\r
-#ifndef GL_EXT_texture_sRGB\r
-#define GL_EXT_texture_sRGB 1\r
-\r
-#define GL_SRGB_EXT 0x8C40\r
-#define GL_SRGB8_EXT 0x8C41\r
-#define GL_SRGB_ALPHA_EXT 0x8C42\r
-#define GL_SRGB8_ALPHA8_EXT 0x8C43\r
-#define GL_SLUMINANCE_ALPHA_EXT 0x8C44\r
-#define GL_SLUMINANCE8_ALPHA8_EXT 0x8C45\r
-#define GL_SLUMINANCE_EXT 0x8C46\r
-#define GL_SLUMINANCE8_EXT 0x8C47\r
-#define GL_COMPRESSED_SRGB_EXT 0x8C48\r
-#define GL_COMPRESSED_SRGB_ALPHA_EXT 0x8C49\r
-#define GL_COMPRESSED_SLUMINANCE_EXT 0x8C4A\r
-#define GL_COMPRESSED_SLUMINANCE_ALPHA_EXT 0x8C4B\r
-#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C\r
-#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D\r
-#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E\r
-#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F\r
-\r
-#define GLEW_EXT_texture_sRGB GLEW_GET_VAR(__GLEW_EXT_texture_sRGB)\r
-\r
-#endif /* GL_EXT_texture_sRGB */\r
-\r
-/* ----------------------- GL_EXT_texture_sRGB_decode ---------------------- */\r
-\r
-#ifndef GL_EXT_texture_sRGB_decode\r
-#define GL_EXT_texture_sRGB_decode 1\r
-\r
-#define GL_TEXTURE_SRGB_DECODE_EXT 0x8A48\r
-#define GL_DECODE_EXT 0x8A49\r
-#define GL_SKIP_DECODE_EXT 0x8A4A\r
-\r
-#define GLEW_EXT_texture_sRGB_decode GLEW_GET_VAR(__GLEW_EXT_texture_sRGB_decode)\r
-\r
-#endif /* GL_EXT_texture_sRGB_decode */\r
-\r
-/* --------------------- GL_EXT_texture_shared_exponent -------------------- */\r
-\r
-#ifndef GL_EXT_texture_shared_exponent\r
-#define GL_EXT_texture_shared_exponent 1\r
-\r
-#define GL_RGB9_E5_EXT 0x8C3D\r
-#define GL_UNSIGNED_INT_5_9_9_9_REV_EXT 0x8C3E\r
-#define GL_TEXTURE_SHARED_SIZE_EXT 0x8C3F\r
-\r
-#define GLEW_EXT_texture_shared_exponent GLEW_GET_VAR(__GLEW_EXT_texture_shared_exponent)\r
-\r
-#endif /* GL_EXT_texture_shared_exponent */\r
-\r
-/* -------------------------- GL_EXT_texture_snorm ------------------------- */\r
-\r
-#ifndef GL_EXT_texture_snorm\r
-#define GL_EXT_texture_snorm 1\r
-\r
-#define GL_RED_SNORM 0x8F90\r
-#define GL_RG_SNORM 0x8F91\r
-#define GL_RGB_SNORM 0x8F92\r
-#define GL_RGBA_SNORM 0x8F93\r
-#define GL_R8_SNORM 0x8F94\r
-#define GL_RG8_SNORM 0x8F95\r
-#define GL_RGB8_SNORM 0x8F96\r
-#define GL_RGBA8_SNORM 0x8F97\r
-#define GL_R16_SNORM 0x8F98\r
-#define GL_RG16_SNORM 0x8F99\r
-#define GL_RGB16_SNORM 0x8F9A\r
-#define GL_RGBA16_SNORM 0x8F9B\r
-#define GL_SIGNED_NORMALIZED 0x8F9C\r
-#define GL_ALPHA_SNORM 0x9010\r
-#define GL_LUMINANCE_SNORM 0x9011\r
-#define GL_LUMINANCE_ALPHA_SNORM 0x9012\r
-#define GL_INTENSITY_SNORM 0x9013\r
-#define GL_ALPHA8_SNORM 0x9014\r
-#define GL_LUMINANCE8_SNORM 0x9015\r
-#define GL_LUMINANCE8_ALPHA8_SNORM 0x9016\r
-#define GL_INTENSITY8_SNORM 0x9017\r
-#define GL_ALPHA16_SNORM 0x9018\r
-#define GL_LUMINANCE16_SNORM 0x9019\r
-#define GL_LUMINANCE16_ALPHA16_SNORM 0x901A\r
-#define GL_INTENSITY16_SNORM 0x901B\r
-\r
-#define GLEW_EXT_texture_snorm GLEW_GET_VAR(__GLEW_EXT_texture_snorm)\r
-\r
-#endif /* GL_EXT_texture_snorm */\r
-\r
-/* ------------------------- GL_EXT_texture_swizzle ------------------------ */\r
-\r
-#ifndef GL_EXT_texture_swizzle\r
-#define GL_EXT_texture_swizzle 1\r
-\r
-#define GL_TEXTURE_SWIZZLE_R_EXT 0x8E42\r
-#define GL_TEXTURE_SWIZZLE_G_EXT 0x8E43\r
-#define GL_TEXTURE_SWIZZLE_B_EXT 0x8E44\r
-#define GL_TEXTURE_SWIZZLE_A_EXT 0x8E45\r
-#define GL_TEXTURE_SWIZZLE_RGBA_EXT 0x8E46\r
-\r
-#define GLEW_EXT_texture_swizzle GLEW_GET_VAR(__GLEW_EXT_texture_swizzle)\r
-\r
-#endif /* GL_EXT_texture_swizzle */\r
-\r
-/* --------------------------- GL_EXT_timer_query -------------------------- */\r
-\r
-#ifndef GL_EXT_timer_query\r
-#define GL_EXT_timer_query 1\r
-\r
-#define GL_TIME_ELAPSED_EXT 0x88BF\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTI64VEXTPROC) (GLuint id, GLenum pname, GLint64EXT *params);\r
-typedef void (GLAPIENTRY * PFNGLGETQUERYOBJECTUI64VEXTPROC) (GLuint id, GLenum pname, GLuint64EXT *params);\r
-\r
-#define glGetQueryObjecti64vEXT GLEW_GET_FUN(__glewGetQueryObjecti64vEXT)\r
-#define glGetQueryObjectui64vEXT GLEW_GET_FUN(__glewGetQueryObjectui64vEXT)\r
-\r
-#define GLEW_EXT_timer_query GLEW_GET_VAR(__GLEW_EXT_timer_query)\r
-\r
-#endif /* GL_EXT_timer_query */\r
-\r
-/* ----------------------- GL_EXT_transform_feedback ----------------------- */\r
-\r
-#ifndef GL_EXT_transform_feedback\r
-#define GL_EXT_transform_feedback 1\r
-\r
-#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT 0x8C76\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT 0x8C7F\r
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT 0x8C80\r
-#define GL_TRANSFORM_FEEDBACK_VARYINGS_EXT 0x8C83\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT 0x8C84\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT 0x8C85\r
-#define GL_PRIMITIVES_GENERATED_EXT 0x8C87\r
-#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT 0x8C88\r
-#define GL_RASTERIZER_DISCARD_EXT 0x8C89\r
-#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT 0x8C8A\r
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT 0x8C8B\r
-#define GL_INTERLEAVED_ATTRIBS_EXT 0x8C8C\r
-#define GL_SEPARATE_ATTRIBS_EXT 0x8C8D\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_EXT 0x8C8E\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT 0x8C8F\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKEXTPROC) (GLenum primitiveMode);\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASEEXTPROC) (GLenum target, GLuint index, GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFEROFFSETEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGEEXTPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);\r
-typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKEXTPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei *size, GLenum *type, char *name);\r
-typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC) (GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode);\r
-\r
-#define glBeginTransformFeedbackEXT GLEW_GET_FUN(__glewBeginTransformFeedbackEXT)\r
-#define glBindBufferBaseEXT GLEW_GET_FUN(__glewBindBufferBaseEXT)\r
-#define glBindBufferOffsetEXT GLEW_GET_FUN(__glewBindBufferOffsetEXT)\r
-#define glBindBufferRangeEXT GLEW_GET_FUN(__glewBindBufferRangeEXT)\r
-#define glEndTransformFeedbackEXT GLEW_GET_FUN(__glewEndTransformFeedbackEXT)\r
-#define glGetTransformFeedbackVaryingEXT GLEW_GET_FUN(__glewGetTransformFeedbackVaryingEXT)\r
-#define glTransformFeedbackVaryingsEXT GLEW_GET_FUN(__glewTransformFeedbackVaryingsEXT)\r
-\r
-#define GLEW_EXT_transform_feedback GLEW_GET_VAR(__GLEW_EXT_transform_feedback)\r
-\r
-#endif /* GL_EXT_transform_feedback */\r
-\r
-/* -------------------------- GL_EXT_vertex_array -------------------------- */\r
-\r
-#ifndef GL_EXT_vertex_array\r
-#define GL_EXT_vertex_array 1\r
-\r
-#define GL_DOUBLE_EXT 0x140A\r
-#define GL_VERTEX_ARRAY_EXT 0x8074\r
-#define GL_NORMAL_ARRAY_EXT 0x8075\r
-#define GL_COLOR_ARRAY_EXT 0x8076\r
-#define GL_INDEX_ARRAY_EXT 0x8077\r
-#define GL_TEXTURE_COORD_ARRAY_EXT 0x8078\r
-#define GL_EDGE_FLAG_ARRAY_EXT 0x8079\r
-#define GL_VERTEX_ARRAY_SIZE_EXT 0x807A\r
-#define GL_VERTEX_ARRAY_TYPE_EXT 0x807B\r
-#define GL_VERTEX_ARRAY_STRIDE_EXT 0x807C\r
-#define GL_VERTEX_ARRAY_COUNT_EXT 0x807D\r
-#define GL_NORMAL_ARRAY_TYPE_EXT 0x807E\r
-#define GL_NORMAL_ARRAY_STRIDE_EXT 0x807F\r
-#define GL_NORMAL_ARRAY_COUNT_EXT 0x8080\r
-#define GL_COLOR_ARRAY_SIZE_EXT 0x8081\r
-#define GL_COLOR_ARRAY_TYPE_EXT 0x8082\r
-#define GL_COLOR_ARRAY_STRIDE_EXT 0x8083\r
-#define GL_COLOR_ARRAY_COUNT_EXT 0x8084\r
-#define GL_INDEX_ARRAY_TYPE_EXT 0x8085\r
-#define GL_INDEX_ARRAY_STRIDE_EXT 0x8086\r
-#define GL_INDEX_ARRAY_COUNT_EXT 0x8087\r
-#define GL_TEXTURE_COORD_ARRAY_SIZE_EXT 0x8088\r
-#define GL_TEXTURE_COORD_ARRAY_TYPE_EXT 0x8089\r
-#define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT 0x808A\r
-#define GL_TEXTURE_COORD_ARRAY_COUNT_EXT 0x808B\r
-#define GL_EDGE_FLAG_ARRAY_STRIDE_EXT 0x808C\r
-#define GL_EDGE_FLAG_ARRAY_COUNT_EXT 0x808D\r
-#define GL_VERTEX_ARRAY_POINTER_EXT 0x808E\r
-#define GL_NORMAL_ARRAY_POINTER_EXT 0x808F\r
-#define GL_COLOR_ARRAY_POINTER_EXT 0x8090\r
-#define GL_INDEX_ARRAY_POINTER_EXT 0x8091\r
-#define GL_TEXTURE_COORD_ARRAY_POINTER_EXT 0x8092\r
-#define GL_EDGE_FLAG_ARRAY_POINTER_EXT 0x8093\r
-\r
-typedef void (GLAPIENTRY * PFNGLARRAYELEMENTEXTPROC) (GLint i);\r
-typedef void (GLAPIENTRY * PFNGLCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLDRAWARRAYSEXTPROC) (GLenum mode, GLint first, GLsizei count);\r
-typedef void (GLAPIENTRY * PFNGLEDGEFLAGPOINTEREXTPROC) (GLsizei stride, GLsizei count, const GLboolean* pointer);\r
-typedef void (GLAPIENTRY * PFNGLINDEXPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLNORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const void* pointer);\r
-\r
-#define glArrayElementEXT GLEW_GET_FUN(__glewArrayElementEXT)\r
-#define glColorPointerEXT GLEW_GET_FUN(__glewColorPointerEXT)\r
-#define glDrawArraysEXT GLEW_GET_FUN(__glewDrawArraysEXT)\r
-#define glEdgeFlagPointerEXT GLEW_GET_FUN(__glewEdgeFlagPointerEXT)\r
-#define glIndexPointerEXT GLEW_GET_FUN(__glewIndexPointerEXT)\r
-#define glNormalPointerEXT GLEW_GET_FUN(__glewNormalPointerEXT)\r
-#define glTexCoordPointerEXT GLEW_GET_FUN(__glewTexCoordPointerEXT)\r
-#define glVertexPointerEXT GLEW_GET_FUN(__glewVertexPointerEXT)\r
-\r
-#define GLEW_EXT_vertex_array GLEW_GET_VAR(__GLEW_EXT_vertex_array)\r
-\r
-#endif /* GL_EXT_vertex_array */\r
-\r
-/* ------------------------ GL_EXT_vertex_array_bgra ----------------------- */\r
-\r
-#ifndef GL_EXT_vertex_array_bgra\r
-#define GL_EXT_vertex_array_bgra 1\r
-\r
-#define GL_BGRA 0x80E1\r
-\r
-#define GLEW_EXT_vertex_array_bgra GLEW_GET_VAR(__GLEW_EXT_vertex_array_bgra)\r
-\r
-#endif /* GL_EXT_vertex_array_bgra */\r
-\r
-/* ----------------------- GL_EXT_vertex_attrib_64bit ---------------------- */\r
-\r
-#ifndef GL_EXT_vertex_attrib_64bit\r
-#define GL_EXT_vertex_attrib_64bit 1\r
-\r
-#define GL_DOUBLE_MAT2_EXT 0x8F46\r
-#define GL_DOUBLE_MAT3_EXT 0x8F47\r
-#define GL_DOUBLE_MAT4_EXT 0x8F48\r
-#define GL_DOUBLE_MAT2x3_EXT 0x8F49\r
-#define GL_DOUBLE_MAT2x4_EXT 0x8F4A\r
-#define GL_DOUBLE_MAT3x2_EXT 0x8F4B\r
-#define GL_DOUBLE_MAT3x4_EXT 0x8F4C\r
-#define GL_DOUBLE_MAT4x2_EXT 0x8F4D\r
-#define GL_DOUBLE_MAT4x3_EXT 0x8F4E\r
-#define GL_DOUBLE_VEC2_EXT 0x8FFC\r
-#define GL_DOUBLE_VEC3_EXT 0x8FFD\r
-#define GL_DOUBLE_VEC4_EXT 0x8FFE\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLDVEXTPROC) (GLuint index, GLenum pname, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC) (GLuint vaobj, GLuint buffer, GLuint index, GLint size, GLenum type, GLsizei stride, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DEXTPROC) (GLuint index, GLdouble x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1DVEXTPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DEXTPROC) (GLuint index, GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2DVEXTPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3DVEXTPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DEXTPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4DVEXTPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLPOINTEREXTPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer);\r
-\r
-#define glGetVertexAttribLdvEXT GLEW_GET_FUN(__glewGetVertexAttribLdvEXT)\r
-#define glVertexArrayVertexAttribLOffsetEXT GLEW_GET_FUN(__glewVertexArrayVertexAttribLOffsetEXT)\r
-#define glVertexAttribL1dEXT GLEW_GET_FUN(__glewVertexAttribL1dEXT)\r
-#define glVertexAttribL1dvEXT GLEW_GET_FUN(__glewVertexAttribL1dvEXT)\r
-#define glVertexAttribL2dEXT GLEW_GET_FUN(__glewVertexAttribL2dEXT)\r
-#define glVertexAttribL2dvEXT GLEW_GET_FUN(__glewVertexAttribL2dvEXT)\r
-#define glVertexAttribL3dEXT GLEW_GET_FUN(__glewVertexAttribL3dEXT)\r
-#define glVertexAttribL3dvEXT GLEW_GET_FUN(__glewVertexAttribL3dvEXT)\r
-#define glVertexAttribL4dEXT GLEW_GET_FUN(__glewVertexAttribL4dEXT)\r
-#define glVertexAttribL4dvEXT GLEW_GET_FUN(__glewVertexAttribL4dvEXT)\r
-#define glVertexAttribLPointerEXT GLEW_GET_FUN(__glewVertexAttribLPointerEXT)\r
-\r
-#define GLEW_EXT_vertex_attrib_64bit GLEW_GET_VAR(__GLEW_EXT_vertex_attrib_64bit)\r
-\r
-#endif /* GL_EXT_vertex_attrib_64bit */\r
-\r
-/* -------------------------- GL_EXT_vertex_shader ------------------------- */\r
-\r
-#ifndef GL_EXT_vertex_shader\r
-#define GL_EXT_vertex_shader 1\r
-\r
-#define GL_VERTEX_SHADER_EXT 0x8780\r
-#define GL_VERTEX_SHADER_BINDING_EXT 0x8781\r
-#define GL_OP_INDEX_EXT 0x8782\r
-#define GL_OP_NEGATE_EXT 0x8783\r
-#define GL_OP_DOT3_EXT 0x8784\r
-#define GL_OP_DOT4_EXT 0x8785\r
-#define GL_OP_MUL_EXT 0x8786\r
-#define GL_OP_ADD_EXT 0x8787\r
-#define GL_OP_MADD_EXT 0x8788\r
-#define GL_OP_FRAC_EXT 0x8789\r
-#define GL_OP_MAX_EXT 0x878A\r
-#define GL_OP_MIN_EXT 0x878B\r
-#define GL_OP_SET_GE_EXT 0x878C\r
-#define GL_OP_SET_LT_EXT 0x878D\r
-#define GL_OP_CLAMP_EXT 0x878E\r
-#define GL_OP_FLOOR_EXT 0x878F\r
-#define GL_OP_ROUND_EXT 0x8790\r
-#define GL_OP_EXP_BASE_2_EXT 0x8791\r
-#define GL_OP_LOG_BASE_2_EXT 0x8792\r
-#define GL_OP_POWER_EXT 0x8793\r
-#define GL_OP_RECIP_EXT 0x8794\r
-#define GL_OP_RECIP_SQRT_EXT 0x8795\r
-#define GL_OP_SUB_EXT 0x8796\r
-#define GL_OP_CROSS_PRODUCT_EXT 0x8797\r
-#define GL_OP_MULTIPLY_MATRIX_EXT 0x8798\r
-#define GL_OP_MOV_EXT 0x8799\r
-#define GL_OUTPUT_VERTEX_EXT 0x879A\r
-#define GL_OUTPUT_COLOR0_EXT 0x879B\r
-#define GL_OUTPUT_COLOR1_EXT 0x879C\r
-#define GL_OUTPUT_TEXTURE_COORD0_EXT 0x879D\r
-#define GL_OUTPUT_TEXTURE_COORD1_EXT 0x879E\r
-#define GL_OUTPUT_TEXTURE_COORD2_EXT 0x879F\r
-#define GL_OUTPUT_TEXTURE_COORD3_EXT 0x87A0\r
-#define GL_OUTPUT_TEXTURE_COORD4_EXT 0x87A1\r
-#define GL_OUTPUT_TEXTURE_COORD5_EXT 0x87A2\r
-#define GL_OUTPUT_TEXTURE_COORD6_EXT 0x87A3\r
-#define GL_OUTPUT_TEXTURE_COORD7_EXT 0x87A4\r
-#define GL_OUTPUT_TEXTURE_COORD8_EXT 0x87A5\r
-#define GL_OUTPUT_TEXTURE_COORD9_EXT 0x87A6\r
-#define GL_OUTPUT_TEXTURE_COORD10_EXT 0x87A7\r
-#define GL_OUTPUT_TEXTURE_COORD11_EXT 0x87A8\r
-#define GL_OUTPUT_TEXTURE_COORD12_EXT 0x87A9\r
-#define GL_OUTPUT_TEXTURE_COORD13_EXT 0x87AA\r
-#define GL_OUTPUT_TEXTURE_COORD14_EXT 0x87AB\r
-#define GL_OUTPUT_TEXTURE_COORD15_EXT 0x87AC\r
-#define GL_OUTPUT_TEXTURE_COORD16_EXT 0x87AD\r
-#define GL_OUTPUT_TEXTURE_COORD17_EXT 0x87AE\r
-#define GL_OUTPUT_TEXTURE_COORD18_EXT 0x87AF\r
-#define GL_OUTPUT_TEXTURE_COORD19_EXT 0x87B0\r
-#define GL_OUTPUT_TEXTURE_COORD20_EXT 0x87B1\r
-#define GL_OUTPUT_TEXTURE_COORD21_EXT 0x87B2\r
-#define GL_OUTPUT_TEXTURE_COORD22_EXT 0x87B3\r
-#define GL_OUTPUT_TEXTURE_COORD23_EXT 0x87B4\r
-#define GL_OUTPUT_TEXTURE_COORD24_EXT 0x87B5\r
-#define GL_OUTPUT_TEXTURE_COORD25_EXT 0x87B6\r
-#define GL_OUTPUT_TEXTURE_COORD26_EXT 0x87B7\r
-#define GL_OUTPUT_TEXTURE_COORD27_EXT 0x87B8\r
-#define GL_OUTPUT_TEXTURE_COORD28_EXT 0x87B9\r
-#define GL_OUTPUT_TEXTURE_COORD29_EXT 0x87BA\r
-#define GL_OUTPUT_TEXTURE_COORD30_EXT 0x87BB\r
-#define GL_OUTPUT_TEXTURE_COORD31_EXT 0x87BC\r
-#define GL_OUTPUT_FOG_EXT 0x87BD\r
-#define GL_SCALAR_EXT 0x87BE\r
-#define GL_VECTOR_EXT 0x87BF\r
-#define GL_MATRIX_EXT 0x87C0\r
-#define GL_VARIANT_EXT 0x87C1\r
-#define GL_INVARIANT_EXT 0x87C2\r
-#define GL_LOCAL_CONSTANT_EXT 0x87C3\r
-#define GL_LOCAL_EXT 0x87C4\r
-#define GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87C5\r
-#define GL_MAX_VERTEX_SHADER_VARIANTS_EXT 0x87C6\r
-#define GL_MAX_VERTEX_SHADER_INVARIANTS_EXT 0x87C7\r
-#define GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87C8\r
-#define GL_MAX_VERTEX_SHADER_LOCALS_EXT 0x87C9\r
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CA\r
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT 0x87CB\r
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT 0x87CC\r
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87CD\r
-#define GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT 0x87CE\r
-#define GL_VERTEX_SHADER_INSTRUCTIONS_EXT 0x87CF\r
-#define GL_VERTEX_SHADER_VARIANTS_EXT 0x87D0\r
-#define GL_VERTEX_SHADER_INVARIANTS_EXT 0x87D1\r
-#define GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT 0x87D2\r
-#define GL_VERTEX_SHADER_LOCALS_EXT 0x87D3\r
-#define GL_VERTEX_SHADER_OPTIMIZED_EXT 0x87D4\r
-#define GL_X_EXT 0x87D5\r
-#define GL_Y_EXT 0x87D6\r
-#define GL_Z_EXT 0x87D7\r
-#define GL_W_EXT 0x87D8\r
-#define GL_NEGATIVE_X_EXT 0x87D9\r
-#define GL_NEGATIVE_Y_EXT 0x87DA\r
-#define GL_NEGATIVE_Z_EXT 0x87DB\r
-#define GL_NEGATIVE_W_EXT 0x87DC\r
-#define GL_ZERO_EXT 0x87DD\r
-#define GL_ONE_EXT 0x87DE\r
-#define GL_NEGATIVE_ONE_EXT 0x87DF\r
-#define GL_NORMALIZED_RANGE_EXT 0x87E0\r
-#define GL_FULL_RANGE_EXT 0x87E1\r
-#define GL_CURRENT_VERTEX_EXT 0x87E2\r
-#define GL_MVP_MATRIX_EXT 0x87E3\r
-#define GL_VARIANT_VALUE_EXT 0x87E4\r
-#define GL_VARIANT_DATATYPE_EXT 0x87E5\r
-#define GL_VARIANT_ARRAY_STRIDE_EXT 0x87E6\r
-#define GL_VARIANT_ARRAY_TYPE_EXT 0x87E7\r
-#define GL_VARIANT_ARRAY_EXT 0x87E8\r
-#define GL_VARIANT_ARRAY_POINTER_EXT 0x87E9\r
-#define GL_INVARIANT_VALUE_EXT 0x87EA\r
-#define GL_INVARIANT_DATATYPE_EXT 0x87EB\r
-#define GL_LOCAL_CONSTANT_VALUE_EXT 0x87EC\r
-#define GL_LOCAL_CONSTANT_DATATYPE_EXT 0x87ED\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINVERTEXSHADEREXTPROC) (void);\r
-typedef GLuint (GLAPIENTRY * PFNGLBINDLIGHTPARAMETEREXTPROC) (GLenum light, GLenum value);\r
-typedef GLuint (GLAPIENTRY * PFNGLBINDMATERIALPARAMETEREXTPROC) (GLenum face, GLenum value);\r
-typedef GLuint (GLAPIENTRY * PFNGLBINDPARAMETEREXTPROC) (GLenum value);\r
-typedef GLuint (GLAPIENTRY * PFNGLBINDTEXGENPARAMETEREXTPROC) (GLenum unit, GLenum coord, GLenum value);\r
-typedef GLuint (GLAPIENTRY * PFNGLBINDTEXTUREUNITPARAMETEREXTPROC) (GLenum unit, GLenum value);\r
-typedef void (GLAPIENTRY * PFNGLBINDVERTEXSHADEREXTPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLDELETEVERTEXSHADEREXTPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLENABLEVARIANTCLIENTSTATEEXTPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLENDVERTEXSHADEREXTPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLEXTRACTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num);\r
-typedef GLuint (GLAPIENTRY * PFNGLGENSYMBOLSEXTPROC) (GLenum dataType, GLenum storageType, GLenum range, GLuint components);\r
-typedef GLuint (GLAPIENTRY * PFNGLGENVERTEXSHADERSEXTPROC) (GLuint range);\r
-typedef void (GLAPIENTRY * PFNGLGETINVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);\r
-typedef void (GLAPIENTRY * PFNGLGETINVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);\r
-typedef void (GLAPIENTRY * PFNGLGETINVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);\r
-typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);\r
-typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);\r
-typedef void (GLAPIENTRY * PFNGLGETLOCALCONSTANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);\r
-typedef void (GLAPIENTRY * PFNGLGETVARIANTBOOLEANVEXTPROC) (GLuint id, GLenum value, GLboolean *data);\r
-typedef void (GLAPIENTRY * PFNGLGETVARIANTFLOATVEXTPROC) (GLuint id, GLenum value, GLfloat *data);\r
-typedef void (GLAPIENTRY * PFNGLGETVARIANTINTEGERVEXTPROC) (GLuint id, GLenum value, GLint *data);\r
-typedef void (GLAPIENTRY * PFNGLGETVARIANTPOINTERVEXTPROC) (GLuint id, GLenum value, GLvoid **data);\r
-typedef void (GLAPIENTRY * PFNGLINSERTCOMPONENTEXTPROC) (GLuint res, GLuint src, GLuint num);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISVARIANTENABLEDEXTPROC) (GLuint id, GLenum cap);\r
-typedef void (GLAPIENTRY * PFNGLSETINVARIANTEXTPROC) (GLuint id, GLenum type, GLvoid *addr);\r
-typedef void (GLAPIENTRY * PFNGLSETLOCALCONSTANTEXTPROC) (GLuint id, GLenum type, GLvoid *addr);\r
-typedef void (GLAPIENTRY * PFNGLSHADEROP1EXTPROC) (GLenum op, GLuint res, GLuint arg1);\r
-typedef void (GLAPIENTRY * PFNGLSHADEROP2EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2);\r
-typedef void (GLAPIENTRY * PFNGLSHADEROP3EXTPROC) (GLenum op, GLuint res, GLuint arg1, GLuint arg2, GLuint arg3);\r
-typedef void (GLAPIENTRY * PFNGLSWIZZLEEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTPOINTEREXTPROC) (GLuint id, GLenum type, GLuint stride, GLvoid *addr);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTBVEXTPROC) (GLuint id, GLbyte *addr);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTDVEXTPROC) (GLuint id, GLdouble *addr);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTFVEXTPROC) (GLuint id, GLfloat *addr);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTIVEXTPROC) (GLuint id, GLint *addr);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTSVEXTPROC) (GLuint id, GLshort *addr);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTUBVEXTPROC) (GLuint id, GLubyte *addr);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTUIVEXTPROC) (GLuint id, GLuint *addr);\r
-typedef void (GLAPIENTRY * PFNGLVARIANTUSVEXTPROC) (GLuint id, GLushort *addr);\r
-typedef void (GLAPIENTRY * PFNGLWRITEMASKEXTPROC) (GLuint res, GLuint in, GLenum outX, GLenum outY, GLenum outZ, GLenum outW);\r
-\r
-#define glBeginVertexShaderEXT GLEW_GET_FUN(__glewBeginVertexShaderEXT)\r
-#define glBindLightParameterEXT GLEW_GET_FUN(__glewBindLightParameterEXT)\r
-#define glBindMaterialParameterEXT GLEW_GET_FUN(__glewBindMaterialParameterEXT)\r
-#define glBindParameterEXT GLEW_GET_FUN(__glewBindParameterEXT)\r
-#define glBindTexGenParameterEXT GLEW_GET_FUN(__glewBindTexGenParameterEXT)\r
-#define glBindTextureUnitParameterEXT GLEW_GET_FUN(__glewBindTextureUnitParameterEXT)\r
-#define glBindVertexShaderEXT GLEW_GET_FUN(__glewBindVertexShaderEXT)\r
-#define glDeleteVertexShaderEXT GLEW_GET_FUN(__glewDeleteVertexShaderEXT)\r
-#define glDisableVariantClientStateEXT GLEW_GET_FUN(__glewDisableVariantClientStateEXT)\r
-#define glEnableVariantClientStateEXT GLEW_GET_FUN(__glewEnableVariantClientStateEXT)\r
-#define glEndVertexShaderEXT GLEW_GET_FUN(__glewEndVertexShaderEXT)\r
-#define glExtractComponentEXT GLEW_GET_FUN(__glewExtractComponentEXT)\r
-#define glGenSymbolsEXT GLEW_GET_FUN(__glewGenSymbolsEXT)\r
-#define glGenVertexShadersEXT GLEW_GET_FUN(__glewGenVertexShadersEXT)\r
-#define glGetInvariantBooleanvEXT GLEW_GET_FUN(__glewGetInvariantBooleanvEXT)\r
-#define glGetInvariantFloatvEXT GLEW_GET_FUN(__glewGetInvariantFloatvEXT)\r
-#define glGetInvariantIntegervEXT GLEW_GET_FUN(__glewGetInvariantIntegervEXT)\r
-#define glGetLocalConstantBooleanvEXT GLEW_GET_FUN(__glewGetLocalConstantBooleanvEXT)\r
-#define glGetLocalConstantFloatvEXT GLEW_GET_FUN(__glewGetLocalConstantFloatvEXT)\r
-#define glGetLocalConstantIntegervEXT GLEW_GET_FUN(__glewGetLocalConstantIntegervEXT)\r
-#define glGetVariantBooleanvEXT GLEW_GET_FUN(__glewGetVariantBooleanvEXT)\r
-#define glGetVariantFloatvEXT GLEW_GET_FUN(__glewGetVariantFloatvEXT)\r
-#define glGetVariantIntegervEXT GLEW_GET_FUN(__glewGetVariantIntegervEXT)\r
-#define glGetVariantPointervEXT GLEW_GET_FUN(__glewGetVariantPointervEXT)\r
-#define glInsertComponentEXT GLEW_GET_FUN(__glewInsertComponentEXT)\r
-#define glIsVariantEnabledEXT GLEW_GET_FUN(__glewIsVariantEnabledEXT)\r
-#define glSetInvariantEXT GLEW_GET_FUN(__glewSetInvariantEXT)\r
-#define glSetLocalConstantEXT GLEW_GET_FUN(__glewSetLocalConstantEXT)\r
-#define glShaderOp1EXT GLEW_GET_FUN(__glewShaderOp1EXT)\r
-#define glShaderOp2EXT GLEW_GET_FUN(__glewShaderOp2EXT)\r
-#define glShaderOp3EXT GLEW_GET_FUN(__glewShaderOp3EXT)\r
-#define glSwizzleEXT GLEW_GET_FUN(__glewSwizzleEXT)\r
-#define glVariantPointerEXT GLEW_GET_FUN(__glewVariantPointerEXT)\r
-#define glVariantbvEXT GLEW_GET_FUN(__glewVariantbvEXT)\r
-#define glVariantdvEXT GLEW_GET_FUN(__glewVariantdvEXT)\r
-#define glVariantfvEXT GLEW_GET_FUN(__glewVariantfvEXT)\r
-#define glVariantivEXT GLEW_GET_FUN(__glewVariantivEXT)\r
-#define glVariantsvEXT GLEW_GET_FUN(__glewVariantsvEXT)\r
-#define glVariantubvEXT GLEW_GET_FUN(__glewVariantubvEXT)\r
-#define glVariantuivEXT GLEW_GET_FUN(__glewVariantuivEXT)\r
-#define glVariantusvEXT GLEW_GET_FUN(__glewVariantusvEXT)\r
-#define glWriteMaskEXT GLEW_GET_FUN(__glewWriteMaskEXT)\r
-\r
-#define GLEW_EXT_vertex_shader GLEW_GET_VAR(__GLEW_EXT_vertex_shader)\r
-\r
-#endif /* GL_EXT_vertex_shader */\r
-\r
-/* ------------------------ GL_EXT_vertex_weighting ------------------------ */\r
-\r
-#ifndef GL_EXT_vertex_weighting\r
-#define GL_EXT_vertex_weighting 1\r
-\r
-#define GL_MODELVIEW0_STACK_DEPTH_EXT 0x0BA3\r
-#define GL_MODELVIEW0_MATRIX_EXT 0x0BA6\r
-#define GL_MODELVIEW0_EXT 0x1700\r
-#define GL_MODELVIEW1_STACK_DEPTH_EXT 0x8502\r
-#define GL_MODELVIEW1_MATRIX_EXT 0x8506\r
-#define GL_VERTEX_WEIGHTING_EXT 0x8509\r
-#define GL_MODELVIEW1_EXT 0x850A\r
-#define GL_CURRENT_VERTEX_WEIGHT_EXT 0x850B\r
-#define GL_VERTEX_WEIGHT_ARRAY_EXT 0x850C\r
-#define GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT 0x850D\r
-#define GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT 0x850E\r
-#define GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT 0x850F\r
-#define GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT 0x8510\r
-\r
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTFEXTPROC) (GLfloat weight);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTFVEXTPROC) (GLfloat* weight);\r
-\r
-#define glVertexWeightPointerEXT GLEW_GET_FUN(__glewVertexWeightPointerEXT)\r
-#define glVertexWeightfEXT GLEW_GET_FUN(__glewVertexWeightfEXT)\r
-#define glVertexWeightfvEXT GLEW_GET_FUN(__glewVertexWeightfvEXT)\r
-\r
-#define GLEW_EXT_vertex_weighting GLEW_GET_VAR(__GLEW_EXT_vertex_weighting)\r
-\r
-#endif /* GL_EXT_vertex_weighting */\r
-\r
-/* ------------------------- GL_EXT_x11_sync_object ------------------------ */\r
-\r
-#ifndef GL_EXT_x11_sync_object\r
-#define GL_EXT_x11_sync_object 1\r
-\r
-#define GL_SYNC_X11_FENCE_EXT 0x90E1\r
-\r
-typedef GLsync (GLAPIENTRY * PFNGLIMPORTSYNCEXTPROC) (GLenum external_sync_type, GLintptr external_sync, GLbitfield flags);\r
-\r
-#define glImportSyncEXT GLEW_GET_FUN(__glewImportSyncEXT)\r
-\r
-#define GLEW_EXT_x11_sync_object GLEW_GET_VAR(__GLEW_EXT_x11_sync_object)\r
-\r
-#endif /* GL_EXT_x11_sync_object */\r
-\r
-/* ---------------------- GL_GREMEDY_frame_terminator ---------------------- */\r
-\r
-#ifndef GL_GREMEDY_frame_terminator\r
-#define GL_GREMEDY_frame_terminator 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLFRAMETERMINATORGREMEDYPROC) (void);\r
-\r
-#define glFrameTerminatorGREMEDY GLEW_GET_FUN(__glewFrameTerminatorGREMEDY)\r
-\r
-#define GLEW_GREMEDY_frame_terminator GLEW_GET_VAR(__GLEW_GREMEDY_frame_terminator)\r
-\r
-#endif /* GL_GREMEDY_frame_terminator */\r
-\r
-/* ------------------------ GL_GREMEDY_string_marker ----------------------- */\r
-\r
-#ifndef GL_GREMEDY_string_marker\r
-#define GL_GREMEDY_string_marker 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLSTRINGMARKERGREMEDYPROC) (GLsizei len, const void* string);\r
-\r
-#define glStringMarkerGREMEDY GLEW_GET_FUN(__glewStringMarkerGREMEDY)\r
-\r
-#define GLEW_GREMEDY_string_marker GLEW_GET_VAR(__GLEW_GREMEDY_string_marker)\r
-\r
-#endif /* GL_GREMEDY_string_marker */\r
-\r
-/* --------------------- GL_HP_convolution_border_modes -------------------- */\r
-\r
-#ifndef GL_HP_convolution_border_modes\r
-#define GL_HP_convolution_border_modes 1\r
-\r
-#define GLEW_HP_convolution_border_modes GLEW_GET_VAR(__GLEW_HP_convolution_border_modes)\r
-\r
-#endif /* GL_HP_convolution_border_modes */\r
-\r
-/* ------------------------- GL_HP_image_transform ------------------------- */\r
-\r
-#ifndef GL_HP_image_transform\r
-#define GL_HP_image_transform 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERFHPPROC) (GLenum target, GLenum pname, const GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERFVHPPROC) (GLenum target, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERIHPPROC) (GLenum target, GLenum pname, const GLint param);\r
-typedef void (GLAPIENTRY * PFNGLIMAGETRANSFORMPARAMETERIVHPPROC) (GLenum target, GLenum pname, const GLint* params);\r
-\r
-#define glGetImageTransformParameterfvHP GLEW_GET_FUN(__glewGetImageTransformParameterfvHP)\r
-#define glGetImageTransformParameterivHP GLEW_GET_FUN(__glewGetImageTransformParameterivHP)\r
-#define glImageTransformParameterfHP GLEW_GET_FUN(__glewImageTransformParameterfHP)\r
-#define glImageTransformParameterfvHP GLEW_GET_FUN(__glewImageTransformParameterfvHP)\r
-#define glImageTransformParameteriHP GLEW_GET_FUN(__glewImageTransformParameteriHP)\r
-#define glImageTransformParameterivHP GLEW_GET_FUN(__glewImageTransformParameterivHP)\r
-\r
-#define GLEW_HP_image_transform GLEW_GET_VAR(__GLEW_HP_image_transform)\r
-\r
-#endif /* GL_HP_image_transform */\r
-\r
-/* -------------------------- GL_HP_occlusion_test ------------------------- */\r
-\r
-#ifndef GL_HP_occlusion_test\r
-#define GL_HP_occlusion_test 1\r
-\r
-#define GL_OCCLUSION_TEST_HP 0x8165\r
-#define GL_OCCLUSION_TEST_RESULT_HP 0x8166\r
-\r
-#define GLEW_HP_occlusion_test GLEW_GET_VAR(__GLEW_HP_occlusion_test)\r
-\r
-#endif /* GL_HP_occlusion_test */\r
-\r
-/* ------------------------- GL_HP_texture_lighting ------------------------ */\r
-\r
-#ifndef GL_HP_texture_lighting\r
-#define GL_HP_texture_lighting 1\r
-\r
-#define GLEW_HP_texture_lighting GLEW_GET_VAR(__GLEW_HP_texture_lighting)\r
-\r
-#endif /* GL_HP_texture_lighting */\r
-\r
-/* --------------------------- GL_IBM_cull_vertex -------------------------- */\r
-\r
-#ifndef GL_IBM_cull_vertex\r
-#define GL_IBM_cull_vertex 1\r
-\r
-#define GL_CULL_VERTEX_IBM 103050\r
-\r
-#define GLEW_IBM_cull_vertex GLEW_GET_VAR(__GLEW_IBM_cull_vertex)\r
-\r
-#endif /* GL_IBM_cull_vertex */\r
-\r
-/* ---------------------- GL_IBM_multimode_draw_arrays --------------------- */\r
-\r
-#ifndef GL_IBM_multimode_draw_arrays\r
-#define GL_IBM_multimode_draw_arrays 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLMULTIMODEDRAWARRAYSIBMPROC) (const GLenum* mode, const GLint *first, const GLsizei *count, GLsizei primcount, GLint modestride);\r
-typedef void (GLAPIENTRY * PFNGLMULTIMODEDRAWELEMENTSIBMPROC) (const GLenum* mode, const GLsizei *count, GLenum type, const GLvoid * const *indices, GLsizei primcount, GLint modestride);\r
-\r
-#define glMultiModeDrawArraysIBM GLEW_GET_FUN(__glewMultiModeDrawArraysIBM)\r
-#define glMultiModeDrawElementsIBM GLEW_GET_FUN(__glewMultiModeDrawElementsIBM)\r
-\r
-#define GLEW_IBM_multimode_draw_arrays GLEW_GET_VAR(__GLEW_IBM_multimode_draw_arrays)\r
-\r
-#endif /* GL_IBM_multimode_draw_arrays */\r
-\r
-/* ------------------------- GL_IBM_rasterpos_clip ------------------------- */\r
-\r
-#ifndef GL_IBM_rasterpos_clip\r
-#define GL_IBM_rasterpos_clip 1\r
-\r
-#define GL_RASTER_POSITION_UNCLIPPED_IBM 103010\r
-\r
-#define GLEW_IBM_rasterpos_clip GLEW_GET_VAR(__GLEW_IBM_rasterpos_clip)\r
-\r
-#endif /* GL_IBM_rasterpos_clip */\r
-\r
-/* --------------------------- GL_IBM_static_data -------------------------- */\r
-\r
-#ifndef GL_IBM_static_data\r
-#define GL_IBM_static_data 1\r
-\r
-#define GL_ALL_STATIC_DATA_IBM 103060\r
-#define GL_STATIC_VERTEX_ARRAY_IBM 103061\r
-\r
-#define GLEW_IBM_static_data GLEW_GET_VAR(__GLEW_IBM_static_data)\r
-\r
-#endif /* GL_IBM_static_data */\r
-\r
-/* --------------------- GL_IBM_texture_mirrored_repeat -------------------- */\r
-\r
-#ifndef GL_IBM_texture_mirrored_repeat\r
-#define GL_IBM_texture_mirrored_repeat 1\r
-\r
-#define GL_MIRRORED_REPEAT_IBM 0x8370\r
-\r
-#define GLEW_IBM_texture_mirrored_repeat GLEW_GET_VAR(__GLEW_IBM_texture_mirrored_repeat)\r
-\r
-#endif /* GL_IBM_texture_mirrored_repeat */\r
-\r
-/* ----------------------- GL_IBM_vertex_array_lists ----------------------- */\r
-\r
-#ifndef GL_IBM_vertex_array_lists\r
-#define GL_IBM_vertex_array_lists 1\r
-\r
-#define GL_VERTEX_ARRAY_LIST_IBM 103070\r
-#define GL_NORMAL_ARRAY_LIST_IBM 103071\r
-#define GL_COLOR_ARRAY_LIST_IBM 103072\r
-#define GL_INDEX_ARRAY_LIST_IBM 103073\r
-#define GL_TEXTURE_COORD_ARRAY_LIST_IBM 103074\r
-#define GL_EDGE_FLAG_ARRAY_LIST_IBM 103075\r
-#define GL_FOG_COORDINATE_ARRAY_LIST_IBM 103076\r
-#define GL_SECONDARY_COLOR_ARRAY_LIST_IBM 103077\r
-#define GL_VERTEX_ARRAY_LIST_STRIDE_IBM 103080\r
-#define GL_NORMAL_ARRAY_LIST_STRIDE_IBM 103081\r
-#define GL_COLOR_ARRAY_LIST_STRIDE_IBM 103082\r
-#define GL_INDEX_ARRAY_LIST_STRIDE_IBM 103083\r
-#define GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM 103084\r
-#define GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM 103085\r
-#define GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM 103086\r
-#define GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM 103087\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);\r
-typedef void (GLAPIENTRY * PFNGLEDGEFLAGPOINTERLISTIBMPROC) (GLint stride, const GLboolean ** pointer, GLint ptrstride);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);\r
-typedef void (GLAPIENTRY * PFNGLINDEXPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);\r
-typedef void (GLAPIENTRY * PFNGLNORMALPOINTERLISTIBMPROC) (GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXPOINTERLISTIBMPROC) (GLint size, GLenum type, GLint stride, const GLvoid ** pointer, GLint ptrstride);\r
-\r
-#define glColorPointerListIBM GLEW_GET_FUN(__glewColorPointerListIBM)\r
-#define glEdgeFlagPointerListIBM GLEW_GET_FUN(__glewEdgeFlagPointerListIBM)\r
-#define glFogCoordPointerListIBM GLEW_GET_FUN(__glewFogCoordPointerListIBM)\r
-#define glIndexPointerListIBM GLEW_GET_FUN(__glewIndexPointerListIBM)\r
-#define glNormalPointerListIBM GLEW_GET_FUN(__glewNormalPointerListIBM)\r
-#define glSecondaryColorPointerListIBM GLEW_GET_FUN(__glewSecondaryColorPointerListIBM)\r
-#define glTexCoordPointerListIBM GLEW_GET_FUN(__glewTexCoordPointerListIBM)\r
-#define glVertexPointerListIBM GLEW_GET_FUN(__glewVertexPointerListIBM)\r
-\r
-#define GLEW_IBM_vertex_array_lists GLEW_GET_VAR(__GLEW_IBM_vertex_array_lists)\r
-\r
-#endif /* GL_IBM_vertex_array_lists */\r
-\r
-/* -------------------------- GL_INGR_color_clamp -------------------------- */\r
-\r
-#ifndef GL_INGR_color_clamp\r
-#define GL_INGR_color_clamp 1\r
-\r
-#define GL_RED_MIN_CLAMP_INGR 0x8560\r
-#define GL_GREEN_MIN_CLAMP_INGR 0x8561\r
-#define GL_BLUE_MIN_CLAMP_INGR 0x8562\r
-#define GL_ALPHA_MIN_CLAMP_INGR 0x8563\r
-#define GL_RED_MAX_CLAMP_INGR 0x8564\r
-#define GL_GREEN_MAX_CLAMP_INGR 0x8565\r
-#define GL_BLUE_MAX_CLAMP_INGR 0x8566\r
-#define GL_ALPHA_MAX_CLAMP_INGR 0x8567\r
-\r
-#define GLEW_INGR_color_clamp GLEW_GET_VAR(__GLEW_INGR_color_clamp)\r
-\r
-#endif /* GL_INGR_color_clamp */\r
-\r
-/* ------------------------- GL_INGR_interlace_read ------------------------ */\r
-\r
-#ifndef GL_INGR_interlace_read\r
-#define GL_INGR_interlace_read 1\r
-\r
-#define GL_INTERLACE_READ_INGR 0x8568\r
-\r
-#define GLEW_INGR_interlace_read GLEW_GET_VAR(__GLEW_INGR_interlace_read)\r
-\r
-#endif /* GL_INGR_interlace_read */\r
-\r
-/* ------------------------ GL_INTEL_parallel_arrays ----------------------- */\r
-\r
-#ifndef GL_INTEL_parallel_arrays\r
-#define GL_INTEL_parallel_arrays 1\r
-\r
-#define GL_PARALLEL_ARRAYS_INTEL 0x83F4\r
-#define GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL 0x83F5\r
-#define GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL 0x83F6\r
-#define GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL 0x83F7\r
-#define GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL 0x83F8\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLORPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer);\r
-typedef void (GLAPIENTRY * PFNGLNORMALPOINTERVINTELPROC) (GLenum type, const void** pointer);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXPOINTERVINTELPROC) (GLint size, GLenum type, const void** pointer);\r
-\r
-#define glColorPointervINTEL GLEW_GET_FUN(__glewColorPointervINTEL)\r
-#define glNormalPointervINTEL GLEW_GET_FUN(__glewNormalPointervINTEL)\r
-#define glTexCoordPointervINTEL GLEW_GET_FUN(__glewTexCoordPointervINTEL)\r
-#define glVertexPointervINTEL GLEW_GET_FUN(__glewVertexPointervINTEL)\r
-\r
-#define GLEW_INTEL_parallel_arrays GLEW_GET_VAR(__GLEW_INTEL_parallel_arrays)\r
-\r
-#endif /* GL_INTEL_parallel_arrays */\r
-\r
-/* ------------------------ GL_INTEL_texture_scissor ----------------------- */\r
-\r
-#ifndef GL_INTEL_texture_scissor\r
-#define GL_INTEL_texture_scissor 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXSCISSORFUNCINTELPROC) (GLenum target, GLenum lfunc, GLenum hfunc);\r
-typedef void (GLAPIENTRY * PFNGLTEXSCISSORINTELPROC) (GLenum target, GLclampf tlow, GLclampf thigh);\r
-\r
-#define glTexScissorFuncINTEL GLEW_GET_FUN(__glewTexScissorFuncINTEL)\r
-#define glTexScissorINTEL GLEW_GET_FUN(__glewTexScissorINTEL)\r
-\r
-#define GLEW_INTEL_texture_scissor GLEW_GET_VAR(__GLEW_INTEL_texture_scissor)\r
-\r
-#endif /* GL_INTEL_texture_scissor */\r
-\r
-/* -------------------------- GL_KTX_buffer_region ------------------------- */\r
-\r
-#ifndef GL_KTX_buffer_region\r
-#define GL_KTX_buffer_region 1\r
-\r
-#define GL_KTX_FRONT_REGION 0x0\r
-#define GL_KTX_BACK_REGION 0x1\r
-#define GL_KTX_Z_REGION 0x2\r
-#define GL_KTX_STENCIL_REGION 0x3\r
-\r
-typedef GLuint (GLAPIENTRY * PFNGLBUFFERREGIONENABLEDPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLDELETEBUFFERREGIONPROC) (GLenum region);\r
-typedef void (GLAPIENTRY * PFNGLDRAWBUFFERREGIONPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest);\r
-typedef GLuint (GLAPIENTRY * PFNGLNEWBUFFERREGIONPROC) (GLenum region);\r
-typedef void (GLAPIENTRY * PFNGLREADBUFFERREGIONPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height);\r
-\r
-#define glBufferRegionEnabled GLEW_GET_FUN(__glewBufferRegionEnabled)\r
-#define glDeleteBufferRegion GLEW_GET_FUN(__glewDeleteBufferRegion)\r
-#define glDrawBufferRegion GLEW_GET_FUN(__glewDrawBufferRegion)\r
-#define glNewBufferRegion GLEW_GET_FUN(__glewNewBufferRegion)\r
-#define glReadBufferRegion GLEW_GET_FUN(__glewReadBufferRegion)\r
-\r
-#define GLEW_KTX_buffer_region GLEW_GET_VAR(__GLEW_KTX_buffer_region)\r
-\r
-#endif /* GL_KTX_buffer_region */\r
-\r
-/* ------------------------- GL_MESAX_texture_stack ------------------------ */\r
-\r
-#ifndef GL_MESAX_texture_stack\r
-#define GL_MESAX_texture_stack 1\r
-\r
-#define GL_TEXTURE_1D_STACK_MESAX 0x8759\r
-#define GL_TEXTURE_2D_STACK_MESAX 0x875A\r
-#define GL_PROXY_TEXTURE_1D_STACK_MESAX 0x875B\r
-#define GL_PROXY_TEXTURE_2D_STACK_MESAX 0x875C\r
-#define GL_TEXTURE_1D_STACK_BINDING_MESAX 0x875D\r
-#define GL_TEXTURE_2D_STACK_BINDING_MESAX 0x875E\r
-\r
-#define GLEW_MESAX_texture_stack GLEW_GET_VAR(__GLEW_MESAX_texture_stack)\r
-\r
-#endif /* GL_MESAX_texture_stack */\r
-\r
-/* -------------------------- GL_MESA_pack_invert -------------------------- */\r
-\r
-#ifndef GL_MESA_pack_invert\r
-#define GL_MESA_pack_invert 1\r
-\r
-#define GL_PACK_INVERT_MESA 0x8758\r
-\r
-#define GLEW_MESA_pack_invert GLEW_GET_VAR(__GLEW_MESA_pack_invert)\r
-\r
-#endif /* GL_MESA_pack_invert */\r
-\r
-/* ------------------------- GL_MESA_resize_buffers ------------------------ */\r
-\r
-#ifndef GL_MESA_resize_buffers\r
-#define GL_MESA_resize_buffers 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLRESIZEBUFFERSMESAPROC) (void);\r
-\r
-#define glResizeBuffersMESA GLEW_GET_FUN(__glewResizeBuffersMESA)\r
-\r
-#define GLEW_MESA_resize_buffers GLEW_GET_VAR(__GLEW_MESA_resize_buffers)\r
-\r
-#endif /* GL_MESA_resize_buffers */\r
-\r
-/* --------------------------- GL_MESA_window_pos -------------------------- */\r
-\r
-#ifndef GL_MESA_window_pos\r
-#define GL_MESA_window_pos 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DMESAPROC) (GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2DVMESAPROC) (const GLdouble* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FMESAPROC) (GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2FVMESAPROC) (const GLfloat* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IMESAPROC) (GLint x, GLint y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2IVMESAPROC) (const GLint* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SMESAPROC) (GLshort x, GLshort y);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS2SVMESAPROC) (const GLshort* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DMESAPROC) (GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3DVMESAPROC) (const GLdouble* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FMESAPROC) (GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3FVMESAPROC) (const GLfloat* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IMESAPROC) (GLint x, GLint y, GLint z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3IVMESAPROC) (const GLint* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SMESAPROC) (GLshort x, GLshort y, GLshort z);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS3SVMESAPROC) (const GLshort* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4DMESAPROC) (GLdouble x, GLdouble y, GLdouble z, GLdouble);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4DVMESAPROC) (const GLdouble* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4FMESAPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4FVMESAPROC) (const GLfloat* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4IMESAPROC) (GLint x, GLint y, GLint z, GLint w);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4IVMESAPROC) (const GLint* p);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4SMESAPROC) (GLshort x, GLshort y, GLshort z, GLshort w);\r
-typedef void (GLAPIENTRY * PFNGLWINDOWPOS4SVMESAPROC) (const GLshort* p);\r
-\r
-#define glWindowPos2dMESA GLEW_GET_FUN(__glewWindowPos2dMESA)\r
-#define glWindowPos2dvMESA GLEW_GET_FUN(__glewWindowPos2dvMESA)\r
-#define glWindowPos2fMESA GLEW_GET_FUN(__glewWindowPos2fMESA)\r
-#define glWindowPos2fvMESA GLEW_GET_FUN(__glewWindowPos2fvMESA)\r
-#define glWindowPos2iMESA GLEW_GET_FUN(__glewWindowPos2iMESA)\r
-#define glWindowPos2ivMESA GLEW_GET_FUN(__glewWindowPos2ivMESA)\r
-#define glWindowPos2sMESA GLEW_GET_FUN(__glewWindowPos2sMESA)\r
-#define glWindowPos2svMESA GLEW_GET_FUN(__glewWindowPos2svMESA)\r
-#define glWindowPos3dMESA GLEW_GET_FUN(__glewWindowPos3dMESA)\r
-#define glWindowPos3dvMESA GLEW_GET_FUN(__glewWindowPos3dvMESA)\r
-#define glWindowPos3fMESA GLEW_GET_FUN(__glewWindowPos3fMESA)\r
-#define glWindowPos3fvMESA GLEW_GET_FUN(__glewWindowPos3fvMESA)\r
-#define glWindowPos3iMESA GLEW_GET_FUN(__glewWindowPos3iMESA)\r
-#define glWindowPos3ivMESA GLEW_GET_FUN(__glewWindowPos3ivMESA)\r
-#define glWindowPos3sMESA GLEW_GET_FUN(__glewWindowPos3sMESA)\r
-#define glWindowPos3svMESA GLEW_GET_FUN(__glewWindowPos3svMESA)\r
-#define glWindowPos4dMESA GLEW_GET_FUN(__glewWindowPos4dMESA)\r
-#define glWindowPos4dvMESA GLEW_GET_FUN(__glewWindowPos4dvMESA)\r
-#define glWindowPos4fMESA GLEW_GET_FUN(__glewWindowPos4fMESA)\r
-#define glWindowPos4fvMESA GLEW_GET_FUN(__glewWindowPos4fvMESA)\r
-#define glWindowPos4iMESA GLEW_GET_FUN(__glewWindowPos4iMESA)\r
-#define glWindowPos4ivMESA GLEW_GET_FUN(__glewWindowPos4ivMESA)\r
-#define glWindowPos4sMESA GLEW_GET_FUN(__glewWindowPos4sMESA)\r
-#define glWindowPos4svMESA GLEW_GET_FUN(__glewWindowPos4svMESA)\r
-\r
-#define GLEW_MESA_window_pos GLEW_GET_VAR(__GLEW_MESA_window_pos)\r
-\r
-#endif /* GL_MESA_window_pos */\r
-\r
-/* ------------------------- GL_MESA_ycbcr_texture ------------------------- */\r
-\r
-#ifndef GL_MESA_ycbcr_texture\r
-#define GL_MESA_ycbcr_texture 1\r
-\r
-#define GL_UNSIGNED_SHORT_8_8_MESA 0x85BA\r
-#define GL_UNSIGNED_SHORT_8_8_REV_MESA 0x85BB\r
-#define GL_YCBCR_MESA 0x8757\r
-\r
-#define GLEW_MESA_ycbcr_texture GLEW_GET_VAR(__GLEW_MESA_ycbcr_texture)\r
-\r
-#endif /* GL_MESA_ycbcr_texture */\r
-\r
-/* ------------------------- GL_NVX_gpu_memory_info ------------------------ */\r
-\r
-#ifndef GL_NVX_gpu_memory_info\r
-#define GL_NVX_gpu_memory_info 1\r
-\r
-#define GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX 0x9047\r
-#define GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX 0x9048\r
-#define GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX 0x9049\r
-#define GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX 0x904A\r
-#define GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX 0x904B\r
-\r
-#define GLEW_NVX_gpu_memory_info GLEW_GET_VAR(__GLEW_NVX_gpu_memory_info)\r
-\r
-#endif /* GL_NVX_gpu_memory_info */\r
-\r
-/* --------------------------- GL_NV_blend_square -------------------------- */\r
-\r
-#ifndef GL_NV_blend_square\r
-#define GL_NV_blend_square 1\r
-\r
-#define GLEW_NV_blend_square GLEW_GET_VAR(__GLEW_NV_blend_square)\r
-\r
-#endif /* GL_NV_blend_square */\r
-\r
-/* ------------------------ GL_NV_conditional_render ----------------------- */\r
-\r
-#ifndef GL_NV_conditional_render\r
-#define GL_NV_conditional_render 1\r
-\r
-#define GL_QUERY_WAIT_NV 0x8E13\r
-#define GL_QUERY_NO_WAIT_NV 0x8E14\r
-#define GL_QUERY_BY_REGION_WAIT_NV 0x8E15\r
-#define GL_QUERY_BY_REGION_NO_WAIT_NV 0x8E16\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINCONDITIONALRENDERNVPROC) (GLuint id, GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLENDCONDITIONALRENDERNVPROC) (void);\r
-\r
-#define glBeginConditionalRenderNV GLEW_GET_FUN(__glewBeginConditionalRenderNV)\r
-#define glEndConditionalRenderNV GLEW_GET_FUN(__glewEndConditionalRenderNV)\r
-\r
-#define GLEW_NV_conditional_render GLEW_GET_VAR(__GLEW_NV_conditional_render)\r
-\r
-#endif /* GL_NV_conditional_render */\r
-\r
-/* ----------------------- GL_NV_copy_depth_to_color ----------------------- */\r
-\r
-#ifndef GL_NV_copy_depth_to_color\r
-#define GL_NV_copy_depth_to_color 1\r
-\r
-#define GL_DEPTH_STENCIL_TO_RGBA_NV 0x886E\r
-#define GL_DEPTH_STENCIL_TO_BGRA_NV 0x886F\r
-\r
-#define GLEW_NV_copy_depth_to_color GLEW_GET_VAR(__GLEW_NV_copy_depth_to_color)\r
-\r
-#endif /* GL_NV_copy_depth_to_color */\r
-\r
-/* ---------------------------- GL_NV_copy_image --------------------------- */\r
-\r
-#ifndef GL_NV_copy_image\r
-#define GL_NV_copy_image 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOPYIMAGESUBDATANVPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);\r
-\r
-#define glCopyImageSubDataNV GLEW_GET_FUN(__glewCopyImageSubDataNV)\r
-\r
-#define GLEW_NV_copy_image GLEW_GET_VAR(__GLEW_NV_copy_image)\r
-\r
-#endif /* GL_NV_copy_image */\r
-\r
-/* ------------------------ GL_NV_depth_buffer_float ----------------------- */\r
-\r
-#ifndef GL_NV_depth_buffer_float\r
-#define GL_NV_depth_buffer_float 1\r
-\r
-#define GL_DEPTH_COMPONENT32F_NV 0x8DAB\r
-#define GL_DEPTH32F_STENCIL8_NV 0x8DAC\r
-#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV 0x8DAD\r
-#define GL_DEPTH_BUFFER_FLOAT_MODE_NV 0x8DAF\r
-\r
-typedef void (GLAPIENTRY * PFNGLCLEARDEPTHDNVPROC) (GLdouble depth);\r
-typedef void (GLAPIENTRY * PFNGLDEPTHBOUNDSDNVPROC) (GLdouble zmin, GLdouble zmax);\r
-typedef void (GLAPIENTRY * PFNGLDEPTHRANGEDNVPROC) (GLdouble zNear, GLdouble zFar);\r
-\r
-#define glClearDepthdNV GLEW_GET_FUN(__glewClearDepthdNV)\r
-#define glDepthBoundsdNV GLEW_GET_FUN(__glewDepthBoundsdNV)\r
-#define glDepthRangedNV GLEW_GET_FUN(__glewDepthRangedNV)\r
-\r
-#define GLEW_NV_depth_buffer_float GLEW_GET_VAR(__GLEW_NV_depth_buffer_float)\r
-\r
-#endif /* GL_NV_depth_buffer_float */\r
-\r
-/* --------------------------- GL_NV_depth_clamp --------------------------- */\r
-\r
-#ifndef GL_NV_depth_clamp\r
-#define GL_NV_depth_clamp 1\r
-\r
-#define GL_DEPTH_CLAMP_NV 0x864F\r
-\r
-#define GLEW_NV_depth_clamp GLEW_GET_VAR(__GLEW_NV_depth_clamp)\r
-\r
-#endif /* GL_NV_depth_clamp */\r
-\r
-/* ---------------------- GL_NV_depth_range_unclamped ---------------------- */\r
-\r
-#ifndef GL_NV_depth_range_unclamped\r
-#define GL_NV_depth_range_unclamped 1\r
-\r
-#define GL_SAMPLE_COUNT_BITS_NV 0x8864\r
-#define GL_CURRENT_SAMPLE_COUNT_QUERY_NV 0x8865\r
-#define GL_QUERY_RESULT_NV 0x8866\r
-#define GL_QUERY_RESULT_AVAILABLE_NV 0x8867\r
-#define GL_SAMPLE_COUNT_NV 0x8914\r
-\r
-#define GLEW_NV_depth_range_unclamped GLEW_GET_VAR(__GLEW_NV_depth_range_unclamped)\r
-\r
-#endif /* GL_NV_depth_range_unclamped */\r
-\r
-/* ---------------------------- GL_NV_evaluators --------------------------- */\r
-\r
-#ifndef GL_NV_evaluators\r
-#define GL_NV_evaluators 1\r
-\r
-#define GL_EVAL_2D_NV 0x86C0\r
-#define GL_EVAL_TRIANGULAR_2D_NV 0x86C1\r
-#define GL_MAP_TESSELLATION_NV 0x86C2\r
-#define GL_MAP_ATTRIB_U_ORDER_NV 0x86C3\r
-#define GL_MAP_ATTRIB_V_ORDER_NV 0x86C4\r
-#define GL_EVAL_FRACTIONAL_TESSELLATION_NV 0x86C5\r
-#define GL_EVAL_VERTEX_ATTRIB0_NV 0x86C6\r
-#define GL_EVAL_VERTEX_ATTRIB1_NV 0x86C7\r
-#define GL_EVAL_VERTEX_ATTRIB2_NV 0x86C8\r
-#define GL_EVAL_VERTEX_ATTRIB3_NV 0x86C9\r
-#define GL_EVAL_VERTEX_ATTRIB4_NV 0x86CA\r
-#define GL_EVAL_VERTEX_ATTRIB5_NV 0x86CB\r
-#define GL_EVAL_VERTEX_ATTRIB6_NV 0x86CC\r
-#define GL_EVAL_VERTEX_ATTRIB7_NV 0x86CD\r
-#define GL_EVAL_VERTEX_ATTRIB8_NV 0x86CE\r
-#define GL_EVAL_VERTEX_ATTRIB9_NV 0x86CF\r
-#define GL_EVAL_VERTEX_ATTRIB10_NV 0x86D0\r
-#define GL_EVAL_VERTEX_ATTRIB11_NV 0x86D1\r
-#define GL_EVAL_VERTEX_ATTRIB12_NV 0x86D2\r
-#define GL_EVAL_VERTEX_ATTRIB13_NV 0x86D3\r
-#define GL_EVAL_VERTEX_ATTRIB14_NV 0x86D4\r
-#define GL_EVAL_VERTEX_ATTRIB15_NV 0x86D5\r
-#define GL_MAX_MAP_TESSELLATION_NV 0x86D6\r
-#define GL_MAX_RATIONAL_EVAL_ORDER_NV 0x86D7\r
-\r
-typedef void (GLAPIENTRY * PFNGLEVALMAPSNVPROC) (GLenum target, GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLGETMAPATTRIBPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMAPATTRIBPARAMETERIVNVPROC) (GLenum target, GLuint index, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLboolean packed, void* points);\r
-typedef void (GLAPIENTRY * PFNGLGETMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLMAPCONTROLPOINTSNVPROC) (GLenum target, GLuint index, GLenum type, GLsizei ustride, GLsizei vstride, GLint uorder, GLint vorder, GLboolean packed, const void* points);\r
-typedef void (GLAPIENTRY * PFNGLMAPPARAMETERFVNVPROC) (GLenum target, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLMAPPARAMETERIVNVPROC) (GLenum target, GLenum pname, const GLint* params);\r
-\r
-#define glEvalMapsNV GLEW_GET_FUN(__glewEvalMapsNV)\r
-#define glGetMapAttribParameterfvNV GLEW_GET_FUN(__glewGetMapAttribParameterfvNV)\r
-#define glGetMapAttribParameterivNV GLEW_GET_FUN(__glewGetMapAttribParameterivNV)\r
-#define glGetMapControlPointsNV GLEW_GET_FUN(__glewGetMapControlPointsNV)\r
-#define glGetMapParameterfvNV GLEW_GET_FUN(__glewGetMapParameterfvNV)\r
-#define glGetMapParameterivNV GLEW_GET_FUN(__glewGetMapParameterivNV)\r
-#define glMapControlPointsNV GLEW_GET_FUN(__glewMapControlPointsNV)\r
-#define glMapParameterfvNV GLEW_GET_FUN(__glewMapParameterfvNV)\r
-#define glMapParameterivNV GLEW_GET_FUN(__glewMapParameterivNV)\r
-\r
-#define GLEW_NV_evaluators GLEW_GET_VAR(__GLEW_NV_evaluators)\r
-\r
-#endif /* GL_NV_evaluators */\r
-\r
-/* ----------------------- GL_NV_explicit_multisample ---------------------- */\r
-\r
-#ifndef GL_NV_explicit_multisample\r
-#define GL_NV_explicit_multisample 1\r
-\r
-#define GL_SAMPLE_POSITION_NV 0x8E50\r
-#define GL_SAMPLE_MASK_NV 0x8E51\r
-#define GL_SAMPLE_MASK_VALUE_NV 0x8E52\r
-#define GL_TEXTURE_BINDING_RENDERBUFFER_NV 0x8E53\r
-#define GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV 0x8E54\r
-#define GL_TEXTURE_RENDERBUFFER_NV 0x8E55\r
-#define GL_SAMPLER_RENDERBUFFER_NV 0x8E56\r
-#define GL_INT_SAMPLER_RENDERBUFFER_NV 0x8E57\r
-#define GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV 0x8E58\r
-#define GL_MAX_SAMPLE_MASK_WORDS_NV 0x8E59\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETMULTISAMPLEFVNVPROC) (GLenum pname, GLuint index, GLfloat* val);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLEMASKINDEXEDNVPROC) (GLuint index, GLbitfield mask);\r
-typedef void (GLAPIENTRY * PFNGLTEXRENDERBUFFERNVPROC) (GLenum target, GLuint renderbuffer);\r
-\r
-#define glGetMultisamplefvNV GLEW_GET_FUN(__glewGetMultisamplefvNV)\r
-#define glSampleMaskIndexedNV GLEW_GET_FUN(__glewSampleMaskIndexedNV)\r
-#define glTexRenderbufferNV GLEW_GET_FUN(__glewTexRenderbufferNV)\r
-\r
-#define GLEW_NV_explicit_multisample GLEW_GET_VAR(__GLEW_NV_explicit_multisample)\r
-\r
-#endif /* GL_NV_explicit_multisample */\r
-\r
-/* ------------------------------ GL_NV_fence ------------------------------ */\r
-\r
-#ifndef GL_NV_fence\r
-#define GL_NV_fence 1\r
-\r
-#define GL_ALL_COMPLETED_NV 0x84F2\r
-#define GL_FENCE_STATUS_NV 0x84F3\r
-#define GL_FENCE_CONDITION_NV 0x84F4\r
-\r
-typedef void (GLAPIENTRY * PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint* fences);\r
-typedef void (GLAPIENTRY * PFNGLFINISHFENCENVPROC) (GLuint fence);\r
-typedef void (GLAPIENTRY * PFNGLGENFENCESNVPROC) (GLsizei n, GLuint* fences);\r
-typedef void (GLAPIENTRY * PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISFENCENVPROC) (GLuint fence);\r
-typedef void (GLAPIENTRY * PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);\r
-typedef GLboolean (GLAPIENTRY * PFNGLTESTFENCENVPROC) (GLuint fence);\r
-\r
-#define glDeleteFencesNV GLEW_GET_FUN(__glewDeleteFencesNV)\r
-#define glFinishFenceNV GLEW_GET_FUN(__glewFinishFenceNV)\r
-#define glGenFencesNV GLEW_GET_FUN(__glewGenFencesNV)\r
-#define glGetFenceivNV GLEW_GET_FUN(__glewGetFenceivNV)\r
-#define glIsFenceNV GLEW_GET_FUN(__glewIsFenceNV)\r
-#define glSetFenceNV GLEW_GET_FUN(__glewSetFenceNV)\r
-#define glTestFenceNV GLEW_GET_FUN(__glewTestFenceNV)\r
-\r
-#define GLEW_NV_fence GLEW_GET_VAR(__GLEW_NV_fence)\r
-\r
-#endif /* GL_NV_fence */\r
-\r
-/* --------------------------- GL_NV_float_buffer -------------------------- */\r
-\r
-#ifndef GL_NV_float_buffer\r
-#define GL_NV_float_buffer 1\r
-\r
-#define GL_FLOAT_R_NV 0x8880\r
-#define GL_FLOAT_RG_NV 0x8881\r
-#define GL_FLOAT_RGB_NV 0x8882\r
-#define GL_FLOAT_RGBA_NV 0x8883\r
-#define GL_FLOAT_R16_NV 0x8884\r
-#define GL_FLOAT_R32_NV 0x8885\r
-#define GL_FLOAT_RG16_NV 0x8886\r
-#define GL_FLOAT_RG32_NV 0x8887\r
-#define GL_FLOAT_RGB16_NV 0x8888\r
-#define GL_FLOAT_RGB32_NV 0x8889\r
-#define GL_FLOAT_RGBA16_NV 0x888A\r
-#define GL_FLOAT_RGBA32_NV 0x888B\r
-#define GL_TEXTURE_FLOAT_COMPONENTS_NV 0x888C\r
-#define GL_FLOAT_CLEAR_COLOR_VALUE_NV 0x888D\r
-#define GL_FLOAT_RGBA_MODE_NV 0x888E\r
-\r
-#define GLEW_NV_float_buffer GLEW_GET_VAR(__GLEW_NV_float_buffer)\r
-\r
-#endif /* GL_NV_float_buffer */\r
-\r
-/* --------------------------- GL_NV_fog_distance -------------------------- */\r
-\r
-#ifndef GL_NV_fog_distance\r
-#define GL_NV_fog_distance 1\r
-\r
-#define GL_FOG_DISTANCE_MODE_NV 0x855A\r
-#define GL_EYE_RADIAL_NV 0x855B\r
-#define GL_EYE_PLANE_ABSOLUTE_NV 0x855C\r
-\r
-#define GLEW_NV_fog_distance GLEW_GET_VAR(__GLEW_NV_fog_distance)\r
-\r
-#endif /* GL_NV_fog_distance */\r
-\r
-/* ------------------------- GL_NV_fragment_program ------------------------ */\r
-\r
-#ifndef GL_NV_fragment_program\r
-#define GL_NV_fragment_program 1\r
-\r
-#define GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV 0x8868\r
-#define GL_FRAGMENT_PROGRAM_NV 0x8870\r
-#define GL_MAX_TEXTURE_COORDS_NV 0x8871\r
-#define GL_MAX_TEXTURE_IMAGE_UNITS_NV 0x8872\r
-#define GL_FRAGMENT_PROGRAM_BINDING_NV 0x8873\r
-#define GL_PROGRAM_ERROR_STRING_NV 0x8874\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLdouble *params);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLfloat *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, const GLdouble v[]);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FNVPROC) (GLuint id, GLsizei len, const GLubyte* name, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC) (GLuint id, GLsizei len, const GLubyte* name, const GLfloat v[]);\r
-\r
-#define glGetProgramNamedParameterdvNV GLEW_GET_FUN(__glewGetProgramNamedParameterdvNV)\r
-#define glGetProgramNamedParameterfvNV GLEW_GET_FUN(__glewGetProgramNamedParameterfvNV)\r
-#define glProgramNamedParameter4dNV GLEW_GET_FUN(__glewProgramNamedParameter4dNV)\r
-#define glProgramNamedParameter4dvNV GLEW_GET_FUN(__glewProgramNamedParameter4dvNV)\r
-#define glProgramNamedParameter4fNV GLEW_GET_FUN(__glewProgramNamedParameter4fNV)\r
-#define glProgramNamedParameter4fvNV GLEW_GET_FUN(__glewProgramNamedParameter4fvNV)\r
-\r
-#define GLEW_NV_fragment_program GLEW_GET_VAR(__GLEW_NV_fragment_program)\r
-\r
-#endif /* GL_NV_fragment_program */\r
-\r
-/* ------------------------ GL_NV_fragment_program2 ------------------------ */\r
-\r
-#ifndef GL_NV_fragment_program2\r
-#define GL_NV_fragment_program2 1\r
-\r
-#define GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4\r
-#define GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5\r
-#define GL_MAX_PROGRAM_IF_DEPTH_NV 0x88F6\r
-#define GL_MAX_PROGRAM_LOOP_DEPTH_NV 0x88F7\r
-#define GL_MAX_PROGRAM_LOOP_COUNT_NV 0x88F8\r
-\r
-#define GLEW_NV_fragment_program2 GLEW_GET_VAR(__GLEW_NV_fragment_program2)\r
-\r
-#endif /* GL_NV_fragment_program2 */\r
-\r
-/* ------------------------ GL_NV_fragment_program4 ------------------------ */\r
-\r
-#ifndef GL_NV_fragment_program4\r
-#define GL_NV_fragment_program4 1\r
-\r
-#define GLEW_NV_fragment_program4 GLEW_GET_VAR(__GLEW_NV_fragment_program4)\r
-\r
-#endif /* GL_NV_fragment_program4 */\r
-\r
-/* --------------------- GL_NV_fragment_program_option --------------------- */\r
-\r
-#ifndef GL_NV_fragment_program_option\r
-#define GL_NV_fragment_program_option 1\r
-\r
-#define GLEW_NV_fragment_program_option GLEW_GET_VAR(__GLEW_NV_fragment_program_option)\r
-\r
-#endif /* GL_NV_fragment_program_option */\r
-\r
-/* ----------------- GL_NV_framebuffer_multisample_coverage ---------------- */\r
-\r
-#ifndef GL_NV_framebuffer_multisample_coverage\r
-#define GL_NV_framebuffer_multisample_coverage 1\r
-\r
-#define GL_RENDERBUFFER_COVERAGE_SAMPLES_NV 0x8CAB\r
-#define GL_RENDERBUFFER_COLOR_SAMPLES_NV 0x8E10\r
-#define GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV 0x8E11\r
-#define GL_MULTISAMPLE_COVERAGE_MODES_NV 0x8E12\r
-\r
-typedef void (GLAPIENTRY * PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLenum internalformat, GLsizei width, GLsizei height);\r
-\r
-#define glRenderbufferStorageMultisampleCoverageNV GLEW_GET_FUN(__glewRenderbufferStorageMultisampleCoverageNV)\r
-\r
-#define GLEW_NV_framebuffer_multisample_coverage GLEW_GET_VAR(__GLEW_NV_framebuffer_multisample_coverage)\r
-\r
-#endif /* GL_NV_framebuffer_multisample_coverage */\r
-\r
-/* ------------------------ GL_NV_geometry_program4 ------------------------ */\r
-\r
-#ifndef GL_NV_geometry_program4\r
-#define GL_NV_geometry_program4 1\r
-\r
-#define GL_GEOMETRY_PROGRAM_NV 0x8C26\r
-#define GL_MAX_PROGRAM_OUTPUT_VERTICES_NV 0x8C27\r
-#define GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV 0x8C28\r
-\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMVERTEXLIMITNVPROC) (GLenum target, GLint limit);\r
-\r
-#define glProgramVertexLimitNV GLEW_GET_FUN(__glewProgramVertexLimitNV)\r
-\r
-#define GLEW_NV_geometry_program4 GLEW_GET_VAR(__GLEW_NV_geometry_program4)\r
-\r
-#endif /* GL_NV_geometry_program4 */\r
-\r
-/* ------------------------- GL_NV_geometry_shader4 ------------------------ */\r
-\r
-#ifndef GL_NV_geometry_shader4\r
-#define GL_NV_geometry_shader4 1\r
-\r
-#define GLEW_NV_geometry_shader4 GLEW_GET_VAR(__GLEW_NV_geometry_shader4)\r
-\r
-#endif /* GL_NV_geometry_shader4 */\r
-\r
-/* --------------------------- GL_NV_gpu_program4 -------------------------- */\r
-\r
-#ifndef GL_NV_gpu_program4\r
-#define GL_NV_gpu_program4 1\r
-\r
-#define GL_MIN_PROGRAM_TEXEL_OFFSET_NV 0x8904\r
-#define GL_MAX_PROGRAM_TEXEL_OFFSET_NV 0x8905\r
-#define GL_PROGRAM_ATTRIB_COMPONENTS_NV 0x8906\r
-#define GL_PROGRAM_RESULT_COMPONENTS_NV 0x8907\r
-#define GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV 0x8908\r
-#define GL_MAX_PROGRAM_RESULT_COMPONENTS_NV 0x8909\r
-#define GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV 0x8DA5\r
-#define GL_MAX_PROGRAM_GENERIC_RESULTS_NV 0x8DA6\r
-\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4INVPROC) (GLenum target, GLuint index, GLint x, GLint y, GLint z, GLint w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC) (GLenum target, GLuint index, const GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4UINVPROC) (GLenum target, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC) (GLenum target, GLuint index, const GLuint *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC) (GLenum target, GLuint index, GLsizei count, const GLuint *params);\r
-\r
-#define glProgramEnvParameterI4iNV GLEW_GET_FUN(__glewProgramEnvParameterI4iNV)\r
-#define glProgramEnvParameterI4ivNV GLEW_GET_FUN(__glewProgramEnvParameterI4ivNV)\r
-#define glProgramEnvParameterI4uiNV GLEW_GET_FUN(__glewProgramEnvParameterI4uiNV)\r
-#define glProgramEnvParameterI4uivNV GLEW_GET_FUN(__glewProgramEnvParameterI4uivNV)\r
-#define glProgramEnvParametersI4ivNV GLEW_GET_FUN(__glewProgramEnvParametersI4ivNV)\r
-#define glProgramEnvParametersI4uivNV GLEW_GET_FUN(__glewProgramEnvParametersI4uivNV)\r
-#define glProgramLocalParameterI4iNV GLEW_GET_FUN(__glewProgramLocalParameterI4iNV)\r
-#define glProgramLocalParameterI4ivNV GLEW_GET_FUN(__glewProgramLocalParameterI4ivNV)\r
-#define glProgramLocalParameterI4uiNV GLEW_GET_FUN(__glewProgramLocalParameterI4uiNV)\r
-#define glProgramLocalParameterI4uivNV GLEW_GET_FUN(__glewProgramLocalParameterI4uivNV)\r
-#define glProgramLocalParametersI4ivNV GLEW_GET_FUN(__glewProgramLocalParametersI4ivNV)\r
-#define glProgramLocalParametersI4uivNV GLEW_GET_FUN(__glewProgramLocalParametersI4uivNV)\r
-\r
-#define GLEW_NV_gpu_program4 GLEW_GET_VAR(__GLEW_NV_gpu_program4)\r
-\r
-#endif /* GL_NV_gpu_program4 */\r
-\r
-/* --------------------------- GL_NV_gpu_program5 -------------------------- */\r
-\r
-#ifndef GL_NV_gpu_program5\r
-#define GL_NV_gpu_program5 1\r
-\r
-#define GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV 0x8E5A\r
-#define GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5B\r
-#define GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV 0x8E5C\r
-#define GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV 0x8E5D\r
-#define GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV 0x8E5E\r
-#define GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV 0x8E5F\r
-\r
-#define GLEW_NV_gpu_program5 GLEW_GET_VAR(__GLEW_NV_gpu_program5)\r
-\r
-#endif /* GL_NV_gpu_program5 */\r
-\r
-/* ------------------------- GL_NV_gpu_program_fp64 ------------------------ */\r
-\r
-#ifndef GL_NV_gpu_program_fp64\r
-#define GL_NV_gpu_program_fp64 1\r
-\r
-#define GLEW_NV_gpu_program_fp64 GLEW_GET_VAR(__GLEW_NV_gpu_program_fp64)\r
-\r
-#endif /* GL_NV_gpu_program_fp64 */\r
-\r
-/* --------------------------- GL_NV_gpu_shader5 --------------------------- */\r
-\r
-#ifndef GL_NV_gpu_shader5\r
-#define GL_NV_gpu_shader5 1\r
-\r
-#define GL_INT64_NV 0x140E\r
-#define GL_UNSIGNED_INT64_NV 0x140F\r
-#define GL_INT8_NV 0x8FE0\r
-#define GL_INT8_VEC2_NV 0x8FE1\r
-#define GL_INT8_VEC3_NV 0x8FE2\r
-#define GL_INT8_VEC4_NV 0x8FE3\r
-#define GL_INT16_NV 0x8FE4\r
-#define GL_INT16_VEC2_NV 0x8FE5\r
-#define GL_INT16_VEC3_NV 0x8FE6\r
-#define GL_INT16_VEC4_NV 0x8FE7\r
-#define GL_INT64_VEC2_NV 0x8FE9\r
-#define GL_INT64_VEC3_NV 0x8FEA\r
-#define GL_INT64_VEC4_NV 0x8FEB\r
-#define GL_UNSIGNED_INT8_NV 0x8FEC\r
-#define GL_UNSIGNED_INT8_VEC2_NV 0x8FED\r
-#define GL_UNSIGNED_INT8_VEC3_NV 0x8FEE\r
-#define GL_UNSIGNED_INT8_VEC4_NV 0x8FEF\r
-#define GL_UNSIGNED_INT16_NV 0x8FF0\r
-#define GL_UNSIGNED_INT16_VEC2_NV 0x8FF1\r
-#define GL_UNSIGNED_INT16_VEC3_NV 0x8FF2\r
-#define GL_UNSIGNED_INT16_VEC4_NV 0x8FF3\r
-#define GL_UNSIGNED_INT64_VEC2_NV 0x8FF5\r
-#define GL_UNSIGNED_INT64_VEC3_NV 0x8FF6\r
-#define GL_UNSIGNED_INT64_VEC4_NV 0x8FF7\r
-#define GL_FLOAT16_NV 0x8FF8\r
-#define GL_FLOAT16_VEC2_NV 0x8FF9\r
-#define GL_FLOAT16_VEC3_NV 0x8FFA\r
-#define GL_FLOAT16_VEC4_NV 0x8FFB\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMI64VNVPROC) (GLuint program, GLint location, GLint64EXT* params);\r
-typedef void (GLAPIENTRY * PFNGLGETUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLuint64EXT* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64NVPROC) (GLuint program, GLint location, GLint64EXT x);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM1UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM2UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM3UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64NVPROC) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4I64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64NVPROC) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORM4UI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1I64NVPROC) (GLint location, GLint64EXT x);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64NVPROC) (GLint location, GLuint64EXT x);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM1UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM2UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM3UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4I64NVPROC) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4I64VNVPROC) (GLint location, GLsizei count, const GLint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64NVPROC) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORM4UI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);\r
-\r
-#define glGetUniformi64vNV GLEW_GET_FUN(__glewGetUniformi64vNV)\r
-#define glGetUniformui64vNV GLEW_GET_FUN(__glewGetUniformui64vNV)\r
-#define glProgramUniform1i64NV GLEW_GET_FUN(__glewProgramUniform1i64NV)\r
-#define glProgramUniform1i64vNV GLEW_GET_FUN(__glewProgramUniform1i64vNV)\r
-#define glProgramUniform1ui64NV GLEW_GET_FUN(__glewProgramUniform1ui64NV)\r
-#define glProgramUniform1ui64vNV GLEW_GET_FUN(__glewProgramUniform1ui64vNV)\r
-#define glProgramUniform2i64NV GLEW_GET_FUN(__glewProgramUniform2i64NV)\r
-#define glProgramUniform2i64vNV GLEW_GET_FUN(__glewProgramUniform2i64vNV)\r
-#define glProgramUniform2ui64NV GLEW_GET_FUN(__glewProgramUniform2ui64NV)\r
-#define glProgramUniform2ui64vNV GLEW_GET_FUN(__glewProgramUniform2ui64vNV)\r
-#define glProgramUniform3i64NV GLEW_GET_FUN(__glewProgramUniform3i64NV)\r
-#define glProgramUniform3i64vNV GLEW_GET_FUN(__glewProgramUniform3i64vNV)\r
-#define glProgramUniform3ui64NV GLEW_GET_FUN(__glewProgramUniform3ui64NV)\r
-#define glProgramUniform3ui64vNV GLEW_GET_FUN(__glewProgramUniform3ui64vNV)\r
-#define glProgramUniform4i64NV GLEW_GET_FUN(__glewProgramUniform4i64NV)\r
-#define glProgramUniform4i64vNV GLEW_GET_FUN(__glewProgramUniform4i64vNV)\r
-#define glProgramUniform4ui64NV GLEW_GET_FUN(__glewProgramUniform4ui64NV)\r
-#define glProgramUniform4ui64vNV GLEW_GET_FUN(__glewProgramUniform4ui64vNV)\r
-#define glUniform1i64NV GLEW_GET_FUN(__glewUniform1i64NV)\r
-#define glUniform1i64vNV GLEW_GET_FUN(__glewUniform1i64vNV)\r
-#define glUniform1ui64NV GLEW_GET_FUN(__glewUniform1ui64NV)\r
-#define glUniform1ui64vNV GLEW_GET_FUN(__glewUniform1ui64vNV)\r
-#define glUniform2i64NV GLEW_GET_FUN(__glewUniform2i64NV)\r
-#define glUniform2i64vNV GLEW_GET_FUN(__glewUniform2i64vNV)\r
-#define glUniform2ui64NV GLEW_GET_FUN(__glewUniform2ui64NV)\r
-#define glUniform2ui64vNV GLEW_GET_FUN(__glewUniform2ui64vNV)\r
-#define glUniform3i64NV GLEW_GET_FUN(__glewUniform3i64NV)\r
-#define glUniform3i64vNV GLEW_GET_FUN(__glewUniform3i64vNV)\r
-#define glUniform3ui64NV GLEW_GET_FUN(__glewUniform3ui64NV)\r
-#define glUniform3ui64vNV GLEW_GET_FUN(__glewUniform3ui64vNV)\r
-#define glUniform4i64NV GLEW_GET_FUN(__glewUniform4i64NV)\r
-#define glUniform4i64vNV GLEW_GET_FUN(__glewUniform4i64vNV)\r
-#define glUniform4ui64NV GLEW_GET_FUN(__glewUniform4ui64NV)\r
-#define glUniform4ui64vNV GLEW_GET_FUN(__glewUniform4ui64vNV)\r
-\r
-#define GLEW_NV_gpu_shader5 GLEW_GET_VAR(__GLEW_NV_gpu_shader5)\r
-\r
-#endif /* GL_NV_gpu_shader5 */\r
-\r
-/* ---------------------------- GL_NV_half_float --------------------------- */\r
-\r
-#ifndef GL_NV_half_float\r
-#define GL_NV_half_float 1\r
-\r
-#define GL_HALF_FLOAT_NV 0x140B\r
-\r
-typedef unsigned short GLhalf;\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLOR3HNVPROC) (GLhalf red, GLhalf green, GLhalf blue);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR3HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR4HNVPROC) (GLhalf red, GLhalf green, GLhalf blue, GLhalf alpha);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR4HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDHNVPROC) (GLhalf fog);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDHVNVPROC) (const GLhalf* fog);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1HNVPROC) (GLenum target, GLhalf s);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD1HVNVPROC) (GLenum target, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2HNVPROC) (GLenum target, GLhalf s, GLhalf t);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD2HVNVPROC) (GLenum target, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3HNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD3HVNVPROC) (GLenum target, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4HNVPROC) (GLenum target, GLhalf s, GLhalf t, GLhalf r, GLhalf q);\r
-typedef void (GLAPIENTRY * PFNGLMULTITEXCOORD4HVNVPROC) (GLenum target, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLNORMAL3HNVPROC) (GLhalf nx, GLhalf ny, GLhalf nz);\r
-typedef void (GLAPIENTRY * PFNGLNORMAL3HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3HNVPROC) (GLhalf red, GLhalf green, GLhalf blue);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLOR3HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD1HNVPROC) (GLhalf s);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD1HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2HNVPROC) (GLhalf s, GLhalf t);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD3HNVPROC) (GLhalf s, GLhalf t, GLhalf r);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD3HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4HNVPROC) (GLhalf s, GLhalf t, GLhalf r, GLhalf q);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEX2HNVPROC) (GLhalf x, GLhalf y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEX2HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEX3HNVPROC) (GLhalf x, GLhalf y, GLhalf z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEX3HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEX4HNVPROC) (GLhalf x, GLhalf y, GLhalf z, GLhalf w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEX4HVNVPROC) (const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1HNVPROC) (GLuint index, GLhalf x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1HVNVPROC) (GLuint index, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2HNVPROC) (GLuint index, GLhalf x, GLhalf y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2HVNVPROC) (GLuint index, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3HNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3HVNVPROC) (GLuint index, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4HNVPROC) (GLuint index, GLhalf x, GLhalf y, GLhalf z, GLhalf w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4HVNVPROC) (GLuint index, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4HVNVPROC) (GLuint index, GLsizei n, const GLhalf* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTHNVPROC) (GLhalf weight);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXWEIGHTHVNVPROC) (const GLhalf* weight);\r
-\r
-#define glColor3hNV GLEW_GET_FUN(__glewColor3hNV)\r
-#define glColor3hvNV GLEW_GET_FUN(__glewColor3hvNV)\r
-#define glColor4hNV GLEW_GET_FUN(__glewColor4hNV)\r
-#define glColor4hvNV GLEW_GET_FUN(__glewColor4hvNV)\r
-#define glFogCoordhNV GLEW_GET_FUN(__glewFogCoordhNV)\r
-#define glFogCoordhvNV GLEW_GET_FUN(__glewFogCoordhvNV)\r
-#define glMultiTexCoord1hNV GLEW_GET_FUN(__glewMultiTexCoord1hNV)\r
-#define glMultiTexCoord1hvNV GLEW_GET_FUN(__glewMultiTexCoord1hvNV)\r
-#define glMultiTexCoord2hNV GLEW_GET_FUN(__glewMultiTexCoord2hNV)\r
-#define glMultiTexCoord2hvNV GLEW_GET_FUN(__glewMultiTexCoord2hvNV)\r
-#define glMultiTexCoord3hNV GLEW_GET_FUN(__glewMultiTexCoord3hNV)\r
-#define glMultiTexCoord3hvNV GLEW_GET_FUN(__glewMultiTexCoord3hvNV)\r
-#define glMultiTexCoord4hNV GLEW_GET_FUN(__glewMultiTexCoord4hNV)\r
-#define glMultiTexCoord4hvNV GLEW_GET_FUN(__glewMultiTexCoord4hvNV)\r
-#define glNormal3hNV GLEW_GET_FUN(__glewNormal3hNV)\r
-#define glNormal3hvNV GLEW_GET_FUN(__glewNormal3hvNV)\r
-#define glSecondaryColor3hNV GLEW_GET_FUN(__glewSecondaryColor3hNV)\r
-#define glSecondaryColor3hvNV GLEW_GET_FUN(__glewSecondaryColor3hvNV)\r
-#define glTexCoord1hNV GLEW_GET_FUN(__glewTexCoord1hNV)\r
-#define glTexCoord1hvNV GLEW_GET_FUN(__glewTexCoord1hvNV)\r
-#define glTexCoord2hNV GLEW_GET_FUN(__glewTexCoord2hNV)\r
-#define glTexCoord2hvNV GLEW_GET_FUN(__glewTexCoord2hvNV)\r
-#define glTexCoord3hNV GLEW_GET_FUN(__glewTexCoord3hNV)\r
-#define glTexCoord3hvNV GLEW_GET_FUN(__glewTexCoord3hvNV)\r
-#define glTexCoord4hNV GLEW_GET_FUN(__glewTexCoord4hNV)\r
-#define glTexCoord4hvNV GLEW_GET_FUN(__glewTexCoord4hvNV)\r
-#define glVertex2hNV GLEW_GET_FUN(__glewVertex2hNV)\r
-#define glVertex2hvNV GLEW_GET_FUN(__glewVertex2hvNV)\r
-#define glVertex3hNV GLEW_GET_FUN(__glewVertex3hNV)\r
-#define glVertex3hvNV GLEW_GET_FUN(__glewVertex3hvNV)\r
-#define glVertex4hNV GLEW_GET_FUN(__glewVertex4hNV)\r
-#define glVertex4hvNV GLEW_GET_FUN(__glewVertex4hvNV)\r
-#define glVertexAttrib1hNV GLEW_GET_FUN(__glewVertexAttrib1hNV)\r
-#define glVertexAttrib1hvNV GLEW_GET_FUN(__glewVertexAttrib1hvNV)\r
-#define glVertexAttrib2hNV GLEW_GET_FUN(__glewVertexAttrib2hNV)\r
-#define glVertexAttrib2hvNV GLEW_GET_FUN(__glewVertexAttrib2hvNV)\r
-#define glVertexAttrib3hNV GLEW_GET_FUN(__glewVertexAttrib3hNV)\r
-#define glVertexAttrib3hvNV GLEW_GET_FUN(__glewVertexAttrib3hvNV)\r
-#define glVertexAttrib4hNV GLEW_GET_FUN(__glewVertexAttrib4hNV)\r
-#define glVertexAttrib4hvNV GLEW_GET_FUN(__glewVertexAttrib4hvNV)\r
-#define glVertexAttribs1hvNV GLEW_GET_FUN(__glewVertexAttribs1hvNV)\r
-#define glVertexAttribs2hvNV GLEW_GET_FUN(__glewVertexAttribs2hvNV)\r
-#define glVertexAttribs3hvNV GLEW_GET_FUN(__glewVertexAttribs3hvNV)\r
-#define glVertexAttribs4hvNV GLEW_GET_FUN(__glewVertexAttribs4hvNV)\r
-#define glVertexWeighthNV GLEW_GET_FUN(__glewVertexWeighthNV)\r
-#define glVertexWeighthvNV GLEW_GET_FUN(__glewVertexWeighthvNV)\r
-\r
-#define GLEW_NV_half_float GLEW_GET_VAR(__GLEW_NV_half_float)\r
-\r
-#endif /* GL_NV_half_float */\r
-\r
-/* ------------------------ GL_NV_light_max_exponent ----------------------- */\r
-\r
-#ifndef GL_NV_light_max_exponent\r
-#define GL_NV_light_max_exponent 1\r
-\r
-#define GL_MAX_SHININESS_NV 0x8504\r
-#define GL_MAX_SPOT_EXPONENT_NV 0x8505\r
-\r
-#define GLEW_NV_light_max_exponent GLEW_GET_VAR(__GLEW_NV_light_max_exponent)\r
-\r
-#endif /* GL_NV_light_max_exponent */\r
-\r
-/* ----------------------- GL_NV_multisample_coverage ---------------------- */\r
-\r
-#ifndef GL_NV_multisample_coverage\r
-#define GL_NV_multisample_coverage 1\r
-\r
-#define GL_COVERAGE_SAMPLES_NV 0x80A9\r
-#define GL_COLOR_SAMPLES_NV 0x8E20\r
-\r
-#define GLEW_NV_multisample_coverage GLEW_GET_VAR(__GLEW_NV_multisample_coverage)\r
-\r
-#endif /* GL_NV_multisample_coverage */\r
-\r
-/* --------------------- GL_NV_multisample_filter_hint --------------------- */\r
-\r
-#ifndef GL_NV_multisample_filter_hint\r
-#define GL_NV_multisample_filter_hint 1\r
-\r
-#define GL_MULTISAMPLE_FILTER_HINT_NV 0x8534\r
-\r
-#define GLEW_NV_multisample_filter_hint GLEW_GET_VAR(__GLEW_NV_multisample_filter_hint)\r
-\r
-#endif /* GL_NV_multisample_filter_hint */\r
-\r
-/* ------------------------- GL_NV_occlusion_query ------------------------- */\r
-\r
-#ifndef GL_NV_occlusion_query\r
-#define GL_NV_occlusion_query 1\r
-\r
-#define GL_PIXEL_COUNTER_BITS_NV 0x8864\r
-#define GL_CURRENT_OCCLUSION_QUERY_ID_NV 0x8865\r
-#define GL_PIXEL_COUNT_NV 0x8866\r
-#define GL_PIXEL_COUNT_AVAILABLE_NV 0x8867\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINOCCLUSIONQUERYNVPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLDELETEOCCLUSIONQUERIESNVPROC) (GLsizei n, const GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLENDOCCLUSIONQUERYNVPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLGENOCCLUSIONQUERIESNVPROC) (GLsizei n, GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLGETOCCLUSIONQUERYIVNVPROC) (GLuint id, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETOCCLUSIONQUERYUIVNVPROC) (GLuint id, GLenum pname, GLuint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISOCCLUSIONQUERYNVPROC) (GLuint id);\r
-\r
-#define glBeginOcclusionQueryNV GLEW_GET_FUN(__glewBeginOcclusionQueryNV)\r
-#define glDeleteOcclusionQueriesNV GLEW_GET_FUN(__glewDeleteOcclusionQueriesNV)\r
-#define glEndOcclusionQueryNV GLEW_GET_FUN(__glewEndOcclusionQueryNV)\r
-#define glGenOcclusionQueriesNV GLEW_GET_FUN(__glewGenOcclusionQueriesNV)\r
-#define glGetOcclusionQueryivNV GLEW_GET_FUN(__glewGetOcclusionQueryivNV)\r
-#define glGetOcclusionQueryuivNV GLEW_GET_FUN(__glewGetOcclusionQueryuivNV)\r
-#define glIsOcclusionQueryNV GLEW_GET_FUN(__glewIsOcclusionQueryNV)\r
-\r
-#define GLEW_NV_occlusion_query GLEW_GET_VAR(__GLEW_NV_occlusion_query)\r
-\r
-#endif /* GL_NV_occlusion_query */\r
-\r
-/* ----------------------- GL_NV_packed_depth_stencil ---------------------- */\r
-\r
-#ifndef GL_NV_packed_depth_stencil\r
-#define GL_NV_packed_depth_stencil 1\r
-\r
-#define GL_DEPTH_STENCIL_NV 0x84F9\r
-#define GL_UNSIGNED_INT_24_8_NV 0x84FA\r
-\r
-#define GLEW_NV_packed_depth_stencil GLEW_GET_VAR(__GLEW_NV_packed_depth_stencil)\r
-\r
-#endif /* GL_NV_packed_depth_stencil */\r
-\r
-/* --------------------- GL_NV_parameter_buffer_object --------------------- */\r
-\r
-#ifndef GL_NV_parameter_buffer_object\r
-#define GL_NV_parameter_buffer_object 1\r
-\r
-#define GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV 0x8DA0\r
-#define GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV 0x8DA1\r
-#define GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV 0x8DA2\r
-#define GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV 0x8DA3\r
-#define GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV 0x8DA4\r
-\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLint *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLuint *params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC) (GLenum target, GLuint buffer, GLuint index, GLsizei count, const GLfloat *params);\r
-\r
-#define glProgramBufferParametersIivNV GLEW_GET_FUN(__glewProgramBufferParametersIivNV)\r
-#define glProgramBufferParametersIuivNV GLEW_GET_FUN(__glewProgramBufferParametersIuivNV)\r
-#define glProgramBufferParametersfvNV GLEW_GET_FUN(__glewProgramBufferParametersfvNV)\r
-\r
-#define GLEW_NV_parameter_buffer_object GLEW_GET_VAR(__GLEW_NV_parameter_buffer_object)\r
-\r
-#endif /* GL_NV_parameter_buffer_object */\r
-\r
-/* --------------------- GL_NV_parameter_buffer_object2 -------------------- */\r
-\r
-#ifndef GL_NV_parameter_buffer_object2\r
-#define GL_NV_parameter_buffer_object2 1\r
-\r
-#define GLEW_NV_parameter_buffer_object2 GLEW_GET_VAR(__GLEW_NV_parameter_buffer_object2)\r
-\r
-#endif /* GL_NV_parameter_buffer_object2 */\r
-\r
-/* -------------------------- GL_NV_path_rendering ------------------------- */\r
-\r
-#ifndef GL_NV_path_rendering\r
-#define GL_NV_path_rendering 1\r
-\r
-#define GL_CLOSE_PATH_NV 0x00\r
-#define GL_BOLD_BIT_NV 0x01\r
-#define GL_GLYPH_WIDTH_BIT_NV 0x01\r
-#define GL_MOVE_TO_NV 0x02\r
-#define GL_GLYPH_HEIGHT_BIT_NV 0x02\r
-#define GL_ITALIC_BIT_NV 0x02\r
-#define GL_RELATIVE_MOVE_TO_NV 0x03\r
-#define GL_LINE_TO_NV 0x04\r
-#define GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV 0x04\r
-#define GL_RELATIVE_LINE_TO_NV 0x05\r
-#define GL_HORIZONTAL_LINE_TO_NV 0x06\r
-#define GL_RELATIVE_HORIZONTAL_LINE_TO_NV 0x07\r
-#define GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV 0x08\r
-#define GL_VERTICAL_LINE_TO_NV 0x08\r
-#define GL_RELATIVE_VERTICAL_LINE_TO_NV 0x09\r
-#define GL_QUADRATIC_CURVE_TO_NV 0x0A\r
-#define GL_RELATIVE_QUADRATIC_CURVE_TO_NV 0x0B\r
-#define GL_CUBIC_CURVE_TO_NV 0x0C\r
-#define GL_RELATIVE_CUBIC_CURVE_TO_NV 0x0D\r
-#define GL_SMOOTH_QUADRATIC_CURVE_TO_NV 0x0E\r
-#define GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV 0x0F\r
-#define GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV 0x10\r
-#define GL_SMOOTH_CUBIC_CURVE_TO_NV 0x10\r
-#define GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV 0x11\r
-#define GL_SMALL_CCW_ARC_TO_NV 0x12\r
-#define GL_RELATIVE_SMALL_CCW_ARC_TO_NV 0x13\r
-#define GL_SMALL_CW_ARC_TO_NV 0x14\r
-#define GL_RELATIVE_SMALL_CW_ARC_TO_NV 0x15\r
-#define GL_LARGE_CCW_ARC_TO_NV 0x16\r
-#define GL_RELATIVE_LARGE_CCW_ARC_TO_NV 0x17\r
-#define GL_LARGE_CW_ARC_TO_NV 0x18\r
-#define GL_RELATIVE_LARGE_CW_ARC_TO_NV 0x19\r
-#define GL_GLYPH_VERTICAL_BEARING_X_BIT_NV 0x20\r
-#define GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV 0x40\r
-#define GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV 0x80\r
-#define GL_CIRCULAR_CCW_ARC_TO_NV 0xF8\r
-#define GL_CIRCULAR_CW_ARC_TO_NV 0xFA\r
-#define GL_CIRCULAR_TANGENT_ARC_TO_NV 0xFC\r
-#define GL_ARC_TO_NV 0xFE\r
-#define GL_RELATIVE_ARC_TO_NV 0xFF\r
-#define GL_GLYPH_HAS_KERNING_NV 0x100\r
-#define GL_PRIMARY_COLOR_NV 0x852C\r
-#define GL_SECONDARY_COLOR_NV 0x852D\r
-#define GL_PRIMARY_COLOR 0x8577\r
-#define GL_PATH_FORMAT_SVG_NV 0x9070\r
-#define GL_PATH_FORMAT_PS_NV 0x9071\r
-#define GL_STANDARD_FONT_NAME_NV 0x9072\r
-#define GL_SYSTEM_FONT_NAME_NV 0x9073\r
-#define GL_FILE_NAME_NV 0x9074\r
-#define GL_PATH_STROKE_WIDTH_NV 0x9075\r
-#define GL_PATH_END_CAPS_NV 0x9076\r
-#define GL_PATH_INITIAL_END_CAP_NV 0x9077\r
-#define GL_PATH_TERMINAL_END_CAP_NV 0x9078\r
-#define GL_PATH_JOIN_STYLE_NV 0x9079\r
-#define GL_PATH_MITER_LIMIT_NV 0x907A\r
-#define GL_PATH_DASH_CAPS_NV 0x907B\r
-#define GL_PATH_INITIAL_DASH_CAP_NV 0x907C\r
-#define GL_PATH_TERMINAL_DASH_CAP_NV 0x907D\r
-#define GL_PATH_DASH_OFFSET_NV 0x907E\r
-#define GL_PATH_CLIENT_LENGTH_NV 0x907F\r
-#define GL_PATH_FILL_MODE_NV 0x9080\r
-#define GL_PATH_FILL_MASK_NV 0x9081\r
-#define GL_PATH_FILL_COVER_MODE_NV 0x9082\r
-#define GL_PATH_STROKE_COVER_MODE_NV 0x9083\r
-#define GL_PATH_STROKE_MASK_NV 0x9084\r
-#define GL_COUNT_UP_NV 0x9088\r
-#define GL_COUNT_DOWN_NV 0x9089\r
-#define GL_PATH_OBJECT_BOUNDING_BOX_NV 0x908A\r
-#define GL_CONVEX_HULL_NV 0x908B\r
-#define GL_BOUNDING_BOX_NV 0x908D\r
-#define GL_TRANSLATE_X_NV 0x908E\r
-#define GL_TRANSLATE_Y_NV 0x908F\r
-#define GL_TRANSLATE_2D_NV 0x9090\r
-#define GL_TRANSLATE_3D_NV 0x9091\r
-#define GL_AFFINE_2D_NV 0x9092\r
-#define GL_AFFINE_3D_NV 0x9094\r
-#define GL_TRANSPOSE_AFFINE_2D_NV 0x9096\r
-#define GL_TRANSPOSE_AFFINE_3D_NV 0x9098\r
-#define GL_UTF8_NV 0x909A\r
-#define GL_UTF16_NV 0x909B\r
-#define GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV 0x909C\r
-#define GL_PATH_COMMAND_COUNT_NV 0x909D\r
-#define GL_PATH_COORD_COUNT_NV 0x909E\r
-#define GL_PATH_DASH_ARRAY_COUNT_NV 0x909F\r
-#define GL_PATH_COMPUTED_LENGTH_NV 0x90A0\r
-#define GL_PATH_FILL_BOUNDING_BOX_NV 0x90A1\r
-#define GL_PATH_STROKE_BOUNDING_BOX_NV 0x90A2\r
-#define GL_SQUARE_NV 0x90A3\r
-#define GL_ROUND_NV 0x90A4\r
-#define GL_TRIANGULAR_NV 0x90A5\r
-#define GL_BEVEL_NV 0x90A6\r
-#define GL_MITER_REVERT_NV 0x90A7\r
-#define GL_MITER_TRUNCATE_NV 0x90A8\r
-#define GL_SKIP_MISSING_GLYPH_NV 0x90A9\r
-#define GL_USE_MISSING_GLYPH_NV 0x90AA\r
-#define GL_PATH_ERROR_POSITION_NV 0x90AB\r
-#define GL_PATH_FOG_GEN_MODE_NV 0x90AC\r
-#define GL_ACCUM_ADJACENT_PAIRS_NV 0x90AD\r
-#define GL_ADJACENT_PAIRS_NV 0x90AE\r
-#define GL_FIRST_TO_REST_NV 0x90AF\r
-#define GL_PATH_GEN_MODE_NV 0x90B0\r
-#define GL_PATH_GEN_COEFF_NV 0x90B1\r
-#define GL_PATH_GEN_COLOR_FORMAT_NV 0x90B2\r
-#define GL_PATH_GEN_COMPONENTS_NV 0x90B3\r
-#define GL_PATH_DASH_OFFSET_RESET_NV 0x90B4\r
-#define GL_MOVE_TO_RESETS_NV 0x90B5\r
-#define GL_MOVE_TO_CONTINUES_NV 0x90B6\r
-#define GL_PATH_STENCIL_FUNC_NV 0x90B7\r
-#define GL_PATH_STENCIL_REF_NV 0x90B8\r
-#define GL_PATH_STENCIL_VALUE_MASK_NV 0x90B9\r
-#define GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV 0x90BD\r
-#define GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV 0x90BE\r
-#define GL_PATH_COVER_DEPTH_FUNC_NV 0x90BF\r
-#define GL_FONT_X_MIN_BOUNDS_NV 0x00010000\r
-#define GL_FONT_Y_MIN_BOUNDS_NV 0x00020000\r
-#define GL_FONT_X_MAX_BOUNDS_NV 0x00040000\r
-#define GL_FONT_Y_MAX_BOUNDS_NV 0x00080000\r
-#define GL_FONT_UNITS_PER_EM_NV 0x00100000\r
-#define GL_FONT_ASCENDER_NV 0x00200000\r
-#define GL_FONT_DESCENDER_NV 0x00400000\r
-#define GL_FONT_HEIGHT_NV 0x00800000\r
-#define GL_FONT_MAX_ADVANCE_WIDTH_NV 0x01000000\r
-#define GL_FONT_MAX_ADVANCE_HEIGHT_NV 0x02000000\r
-#define GL_FONT_UNDERLINE_POSITION_NV 0x04000000\r
-#define GL_FONT_UNDERLINE_THICKNESS_NV 0x08000000\r
-#define GL_FONT_HAS_KERNING_NV 0x10000000\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOPYPATHNVPROC) (GLuint resultPath, GLuint srcPath);\r
-typedef void (GLAPIENTRY * PFNGLCOVERFILLPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues);\r
-typedef void (GLAPIENTRY * PFNGLCOVERFILLPATHNVPROC) (GLuint path, GLenum coverMode);\r
-typedef void (GLAPIENTRY * PFNGLCOVERSTROKEPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues);\r
-typedef void (GLAPIENTRY * PFNGLCOVERSTROKEPATHNVPROC) (GLuint name, GLenum coverMode);\r
-typedef void (GLAPIENTRY * PFNGLDELETEPATHSNVPROC) (GLuint path, GLsizei range);\r
-typedef GLuint (GLAPIENTRY * PFNGLGENPATHSNVPROC) (GLsizei range);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHCOLORGENFVNVPROC) (GLenum color, GLenum pname, GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHCOLORGENIVNVPROC) (GLenum color, GLenum pname, GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHCOMMANDSNVPROC) (GLuint name, GLubyte* commands);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHCOORDSNVPROC) (GLuint name, GLfloat* coords);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHDASHARRAYNVPROC) (GLuint name, GLfloat* dashArray);\r
-typedef GLfloat (GLAPIENTRY * PFNGLGETPATHLENGTHNVPROC) (GLuint path, GLsizei startSegment, GLsizei numSegments);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHMETRICRANGENVPROC) (GLbitfield metricQueryMask, GLuint fistPathName, GLsizei numPaths, GLsizei stride, GLfloat* metrics);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHMETRICSNVPROC) (GLbitfield metricQueryMask, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLsizei stride, GLfloat *metrics);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHPARAMETERFVNVPROC) (GLuint name, GLenum param, GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHPARAMETERIVNVPROC) (GLuint name, GLenum param, GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHSPACINGNVPROC) (GLenum pathListMode, GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLfloat advanceScale, GLfloat kerningScale, GLenum transformType, GLfloat *returnedSpacing);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHTEXGENFVNVPROC) (GLenum texCoordSet, GLenum pname, GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLGETPATHTEXGENIVNVPROC) (GLenum texCoordSet, GLenum pname, GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLINTERPOLATEPATHSNVPROC) (GLuint resultPath, GLuint pathA, GLuint pathB, GLfloat weight);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISPATHNVPROC) (GLuint path);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISPOINTINFILLPATHNVPROC) (GLuint path, GLuint mask, GLfloat x, GLfloat y);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISPOINTINSTROKEPATHNVPROC) (GLuint path, GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLPATHCOLORGENNVPROC) (GLenum color, GLenum genMode, GLenum colorFormat, const GLfloat* coeffs);\r
-typedef void (GLAPIENTRY * PFNGLPATHCOMMANDSNVPROC) (GLuint path, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const GLvoid*coords);\r
-typedef void (GLAPIENTRY * PFNGLPATHCOORDSNVPROC) (GLuint path, GLsizei numCoords, GLenum coordType, const void* coords);\r
-typedef void (GLAPIENTRY * PFNGLPATHCOVERDEPTHFUNCNVPROC) (GLenum zfunc);\r
-typedef void (GLAPIENTRY * PFNGLPATHDASHARRAYNVPROC) (GLuint path, GLsizei dashCount, const GLfloat* dashArray);\r
-typedef void (GLAPIENTRY * PFNGLPATHFOGGENNVPROC) (GLenum genMode);\r
-typedef void (GLAPIENTRY * PFNGLPATHGLYPHRANGENVPROC) (GLuint firstPathName, GLenum fontTarget, const void* fontName, GLbitfield fontStyle, GLuint firstGlyph, GLsizei numGlyphs, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale);\r
-typedef void (GLAPIENTRY * PFNGLPATHGLYPHSNVPROC) (GLuint firstPathName, GLenum fontTarget, const void* fontName, GLbitfield fontStyle, GLsizei numGlyphs, GLenum type, const GLvoid*charcodes, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale);\r
-typedef void (GLAPIENTRY * PFNGLPATHPARAMETERFNVPROC) (GLuint path, GLenum pname, GLfloat value);\r
-typedef void (GLAPIENTRY * PFNGLPATHPARAMETERFVNVPROC) (GLuint path, GLenum pname, const GLfloat* value);\r
-typedef void (GLAPIENTRY * PFNGLPATHPARAMETERINVPROC) (GLuint path, GLenum pname, GLint value);\r
-typedef void (GLAPIENTRY * PFNGLPATHPARAMETERIVNVPROC) (GLuint path, GLenum pname, const GLint* value);\r
-typedef void (GLAPIENTRY * PFNGLPATHSTENCILDEPTHOFFSETNVPROC) (GLfloat factor, GLint units);\r
-typedef void (GLAPIENTRY * PFNGLPATHSTENCILFUNCNVPROC) (GLenum func, GLint ref, GLuint mask);\r
-typedef void (GLAPIENTRY * PFNGLPATHSTRINGNVPROC) (GLuint path, GLenum format, GLsizei length, const void* pathString);\r
-typedef void (GLAPIENTRY * PFNGLPATHSUBCOMMANDSNVPROC) (GLuint path, GLsizei commandStart, GLsizei commandsToDelete, GLsizei numCommands, const GLubyte* commands, GLsizei numCoords, GLenum coordType, const GLvoid*coords);\r
-typedef void (GLAPIENTRY * PFNGLPATHSUBCOORDSNVPROC) (GLuint path, GLsizei coordStart, GLsizei numCoords, GLenum coordType, const void* coords);\r
-typedef void (GLAPIENTRY * PFNGLPATHTEXGENNVPROC) (GLenum texCoordSet, GLenum genMode, GLint components, const GLfloat* coeffs);\r
-typedef GLboolean (GLAPIENTRY * PFNGLPOINTALONGPATHNVPROC) (GLuint path, GLsizei startSegment, GLsizei numSegments, GLfloat distance, GLfloat* x, GLfloat *y, GLfloat *tangentX, GLfloat *tangentY);\r
-typedef void (GLAPIENTRY * PFNGLSTENCILFILLPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum transformType, const GLfloat *transformValues);\r
-typedef void (GLAPIENTRY * PFNGLSTENCILFILLPATHNVPROC) (GLuint path, GLenum fillMode, GLuint mask);\r
-typedef void (GLAPIENTRY * PFNGLSTENCILSTROKEPATHINSTANCEDNVPROC) (GLsizei numPaths, GLenum pathNameType, const void* paths, GLuint pathBase, GLint reference, GLuint mask, GLenum transformType, const GLfloat *transformValues);\r
-typedef void (GLAPIENTRY * PFNGLSTENCILSTROKEPATHNVPROC) (GLuint path, GLint reference, GLuint mask);\r
-typedef void (GLAPIENTRY * PFNGLTRANSFORMPATHNVPROC) (GLuint resultPath, GLuint srcPath, GLenum transformType, const GLfloat* transformValues);\r
-typedef void (GLAPIENTRY * PFNGLWEIGHTPATHSNVPROC) (GLuint resultPath, GLsizei numPaths, const GLuint paths[], const GLfloat weights[]);\r
-\r
-#define glCopyPathNV GLEW_GET_FUN(__glewCopyPathNV)\r
-#define glCoverFillPathInstancedNV GLEW_GET_FUN(__glewCoverFillPathInstancedNV)\r
-#define glCoverFillPathNV GLEW_GET_FUN(__glewCoverFillPathNV)\r
-#define glCoverStrokePathInstancedNV GLEW_GET_FUN(__glewCoverStrokePathInstancedNV)\r
-#define glCoverStrokePathNV GLEW_GET_FUN(__glewCoverStrokePathNV)\r
-#define glDeletePathsNV GLEW_GET_FUN(__glewDeletePathsNV)\r
-#define glGenPathsNV GLEW_GET_FUN(__glewGenPathsNV)\r
-#define glGetPathColorGenfvNV GLEW_GET_FUN(__glewGetPathColorGenfvNV)\r
-#define glGetPathColorGenivNV GLEW_GET_FUN(__glewGetPathColorGenivNV)\r
-#define glGetPathCommandsNV GLEW_GET_FUN(__glewGetPathCommandsNV)\r
-#define glGetPathCoordsNV GLEW_GET_FUN(__glewGetPathCoordsNV)\r
-#define glGetPathDashArrayNV GLEW_GET_FUN(__glewGetPathDashArrayNV)\r
-#define glGetPathLengthNV GLEW_GET_FUN(__glewGetPathLengthNV)\r
-#define glGetPathMetricRangeNV GLEW_GET_FUN(__glewGetPathMetricRangeNV)\r
-#define glGetPathMetricsNV GLEW_GET_FUN(__glewGetPathMetricsNV)\r
-#define glGetPathParameterfvNV GLEW_GET_FUN(__glewGetPathParameterfvNV)\r
-#define glGetPathParameterivNV GLEW_GET_FUN(__glewGetPathParameterivNV)\r
-#define glGetPathSpacingNV GLEW_GET_FUN(__glewGetPathSpacingNV)\r
-#define glGetPathTexGenfvNV GLEW_GET_FUN(__glewGetPathTexGenfvNV)\r
-#define glGetPathTexGenivNV GLEW_GET_FUN(__glewGetPathTexGenivNV)\r
-#define glInterpolatePathsNV GLEW_GET_FUN(__glewInterpolatePathsNV)\r
-#define glIsPathNV GLEW_GET_FUN(__glewIsPathNV)\r
-#define glIsPointInFillPathNV GLEW_GET_FUN(__glewIsPointInFillPathNV)\r
-#define glIsPointInStrokePathNV GLEW_GET_FUN(__glewIsPointInStrokePathNV)\r
-#define glPathColorGenNV GLEW_GET_FUN(__glewPathColorGenNV)\r
-#define glPathCommandsNV GLEW_GET_FUN(__glewPathCommandsNV)\r
-#define glPathCoordsNV GLEW_GET_FUN(__glewPathCoordsNV)\r
-#define glPathCoverDepthFuncNV GLEW_GET_FUN(__glewPathCoverDepthFuncNV)\r
-#define glPathDashArrayNV GLEW_GET_FUN(__glewPathDashArrayNV)\r
-#define glPathFogGenNV GLEW_GET_FUN(__glewPathFogGenNV)\r
-#define glPathGlyphRangeNV GLEW_GET_FUN(__glewPathGlyphRangeNV)\r
-#define glPathGlyphsNV GLEW_GET_FUN(__glewPathGlyphsNV)\r
-#define glPathParameterfNV GLEW_GET_FUN(__glewPathParameterfNV)\r
-#define glPathParameterfvNV GLEW_GET_FUN(__glewPathParameterfvNV)\r
-#define glPathParameteriNV GLEW_GET_FUN(__glewPathParameteriNV)\r
-#define glPathParameterivNV GLEW_GET_FUN(__glewPathParameterivNV)\r
-#define glPathStencilDepthOffsetNV GLEW_GET_FUN(__glewPathStencilDepthOffsetNV)\r
-#define glPathStencilFuncNV GLEW_GET_FUN(__glewPathStencilFuncNV)\r
-#define glPathStringNV GLEW_GET_FUN(__glewPathStringNV)\r
-#define glPathSubCommandsNV GLEW_GET_FUN(__glewPathSubCommandsNV)\r
-#define glPathSubCoordsNV GLEW_GET_FUN(__glewPathSubCoordsNV)\r
-#define glPathTexGenNV GLEW_GET_FUN(__glewPathTexGenNV)\r
-#define glPointAlongPathNV GLEW_GET_FUN(__glewPointAlongPathNV)\r
-#define glStencilFillPathInstancedNV GLEW_GET_FUN(__glewStencilFillPathInstancedNV)\r
-#define glStencilFillPathNV GLEW_GET_FUN(__glewStencilFillPathNV)\r
-#define glStencilStrokePathInstancedNV GLEW_GET_FUN(__glewStencilStrokePathInstancedNV)\r
-#define glStencilStrokePathNV GLEW_GET_FUN(__glewStencilStrokePathNV)\r
-#define glTransformPathNV GLEW_GET_FUN(__glewTransformPathNV)\r
-#define glWeightPathsNV GLEW_GET_FUN(__glewWeightPathsNV)\r
-\r
-#define GLEW_NV_path_rendering GLEW_GET_VAR(__GLEW_NV_path_rendering)\r
-\r
-#endif /* GL_NV_path_rendering */\r
-\r
-/* ------------------------- GL_NV_pixel_data_range ------------------------ */\r
-\r
-#ifndef GL_NV_pixel_data_range\r
-#define GL_NV_pixel_data_range 1\r
-\r
-#define GL_WRITE_PIXEL_DATA_RANGE_NV 0x8878\r
-#define GL_READ_PIXEL_DATA_RANGE_NV 0x8879\r
-#define GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV 0x887A\r
-#define GL_READ_PIXEL_DATA_RANGE_LENGTH_NV 0x887B\r
-#define GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV 0x887C\r
-#define GL_READ_PIXEL_DATA_RANGE_POINTER_NV 0x887D\r
-\r
-typedef void (GLAPIENTRY * PFNGLFLUSHPIXELDATARANGENVPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLPIXELDATARANGENVPROC) (GLenum target, GLsizei length, void* pointer);\r
-\r
-#define glFlushPixelDataRangeNV GLEW_GET_FUN(__glewFlushPixelDataRangeNV)\r
-#define glPixelDataRangeNV GLEW_GET_FUN(__glewPixelDataRangeNV)\r
-\r
-#define GLEW_NV_pixel_data_range GLEW_GET_VAR(__GLEW_NV_pixel_data_range)\r
-\r
-#endif /* GL_NV_pixel_data_range */\r
-\r
-/* --------------------------- GL_NV_point_sprite -------------------------- */\r
-\r
-#ifndef GL_NV_point_sprite\r
-#define GL_NV_point_sprite 1\r
-\r
-#define GL_POINT_SPRITE_NV 0x8861\r
-#define GL_COORD_REPLACE_NV 0x8862\r
-#define GL_POINT_SPRITE_R_MODE_NV 0x8863\r
-\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERINVPROC) (GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLPOINTPARAMETERIVNVPROC) (GLenum pname, const GLint* params);\r
-\r
-#define glPointParameteriNV GLEW_GET_FUN(__glewPointParameteriNV)\r
-#define glPointParameterivNV GLEW_GET_FUN(__glewPointParameterivNV)\r
-\r
-#define GLEW_NV_point_sprite GLEW_GET_VAR(__GLEW_NV_point_sprite)\r
-\r
-#endif /* GL_NV_point_sprite */\r
-\r
-/* -------------------------- GL_NV_present_video -------------------------- */\r
-\r
-#ifndef GL_NV_present_video\r
-#define GL_NV_present_video 1\r
-\r
-#define GL_FRAME_NV 0x8E26\r
-#define GL_FIELDS_NV 0x8E27\r
-#define GL_CURRENT_TIME_NV 0x8E28\r
-#define GL_NUM_FILL_STREAMS_NV 0x8E29\r
-#define GL_PRESENT_TIME_NV 0x8E2A\r
-#define GL_PRESENT_DURATION_NV 0x8E2B\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETVIDEOI64VNVPROC) (GLuint video_slot, GLenum pname, GLint64EXT* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVIDEOIVNVPROC) (GLuint video_slot, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVIDEOUI64VNVPROC) (GLuint video_slot, GLenum pname, GLuint64EXT* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVIDEOUIVNVPROC) (GLuint video_slot, GLenum pname, GLuint* params);\r
-typedef void (GLAPIENTRY * PFNGLPRESENTFRAMEDUALFILLNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLenum target1, GLuint fill1, GLenum target2, GLuint fill2, GLenum target3, GLuint fill3);\r
-typedef void (GLAPIENTRY * PFNGLPRESENTFRAMEKEYEDNVPROC) (GLuint video_slot, GLuint64EXT minPresentTime, GLuint beginPresentTimeId, GLuint presentDurationId, GLenum type, GLenum target0, GLuint fill0, GLuint key0, GLenum target1, GLuint fill1, GLuint key1);\r
-\r
-#define glGetVideoi64vNV GLEW_GET_FUN(__glewGetVideoi64vNV)\r
-#define glGetVideoivNV GLEW_GET_FUN(__glewGetVideoivNV)\r
-#define glGetVideoui64vNV GLEW_GET_FUN(__glewGetVideoui64vNV)\r
-#define glGetVideouivNV GLEW_GET_FUN(__glewGetVideouivNV)\r
-#define glPresentFrameDualFillNV GLEW_GET_FUN(__glewPresentFrameDualFillNV)\r
-#define glPresentFrameKeyedNV GLEW_GET_FUN(__glewPresentFrameKeyedNV)\r
-\r
-#define GLEW_NV_present_video GLEW_GET_VAR(__GLEW_NV_present_video)\r
-\r
-#endif /* GL_NV_present_video */\r
-\r
-/* ------------------------ GL_NV_primitive_restart ------------------------ */\r
-\r
-#ifndef GL_NV_primitive_restart\r
-#define GL_NV_primitive_restart 1\r
-\r
-#define GL_PRIMITIVE_RESTART_NV 0x8558\r
-#define GL_PRIMITIVE_RESTART_INDEX_NV 0x8559\r
-\r
-typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTINDEXNVPROC) (GLuint index);\r
-typedef void (GLAPIENTRY * PFNGLPRIMITIVERESTARTNVPROC) (void);\r
-\r
-#define glPrimitiveRestartIndexNV GLEW_GET_FUN(__glewPrimitiveRestartIndexNV)\r
-#define glPrimitiveRestartNV GLEW_GET_FUN(__glewPrimitiveRestartNV)\r
-\r
-#define GLEW_NV_primitive_restart GLEW_GET_VAR(__GLEW_NV_primitive_restart)\r
-\r
-#endif /* GL_NV_primitive_restart */\r
-\r
-/* ------------------------ GL_NV_register_combiners ----------------------- */\r
-\r
-#ifndef GL_NV_register_combiners\r
-#define GL_NV_register_combiners 1\r
-\r
-#define GL_REGISTER_COMBINERS_NV 0x8522\r
-#define GL_VARIABLE_A_NV 0x8523\r
-#define GL_VARIABLE_B_NV 0x8524\r
-#define GL_VARIABLE_C_NV 0x8525\r
-#define GL_VARIABLE_D_NV 0x8526\r
-#define GL_VARIABLE_E_NV 0x8527\r
-#define GL_VARIABLE_F_NV 0x8528\r
-#define GL_VARIABLE_G_NV 0x8529\r
-#define GL_CONSTANT_COLOR0_NV 0x852A\r
-#define GL_CONSTANT_COLOR1_NV 0x852B\r
-#define GL_PRIMARY_COLOR_NV 0x852C\r
-#define GL_SECONDARY_COLOR_NV 0x852D\r
-#define GL_SPARE0_NV 0x852E\r
-#define GL_SPARE1_NV 0x852F\r
-#define GL_DISCARD_NV 0x8530\r
-#define GL_E_TIMES_F_NV 0x8531\r
-#define GL_SPARE0_PLUS_SECONDARY_COLOR_NV 0x8532\r
-#define GL_UNSIGNED_IDENTITY_NV 0x8536\r
-#define GL_UNSIGNED_INVERT_NV 0x8537\r
-#define GL_EXPAND_NORMAL_NV 0x8538\r
-#define GL_EXPAND_NEGATE_NV 0x8539\r
-#define GL_HALF_BIAS_NORMAL_NV 0x853A\r
-#define GL_HALF_BIAS_NEGATE_NV 0x853B\r
-#define GL_SIGNED_IDENTITY_NV 0x853C\r
-#define GL_SIGNED_NEGATE_NV 0x853D\r
-#define GL_SCALE_BY_TWO_NV 0x853E\r
-#define GL_SCALE_BY_FOUR_NV 0x853F\r
-#define GL_SCALE_BY_ONE_HALF_NV 0x8540\r
-#define GL_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x8541\r
-#define GL_COMBINER_INPUT_NV 0x8542\r
-#define GL_COMBINER_MAPPING_NV 0x8543\r
-#define GL_COMBINER_COMPONENT_USAGE_NV 0x8544\r
-#define GL_COMBINER_AB_DOT_PRODUCT_NV 0x8545\r
-#define GL_COMBINER_CD_DOT_PRODUCT_NV 0x8546\r
-#define GL_COMBINER_MUX_SUM_NV 0x8547\r
-#define GL_COMBINER_SCALE_NV 0x8548\r
-#define GL_COMBINER_BIAS_NV 0x8549\r
-#define GL_COMBINER_AB_OUTPUT_NV 0x854A\r
-#define GL_COMBINER_CD_OUTPUT_NV 0x854B\r
-#define GL_COMBINER_SUM_OUTPUT_NV 0x854C\r
-#define GL_MAX_GENERAL_COMBINERS_NV 0x854D\r
-#define GL_NUM_GENERAL_COMBINERS_NV 0x854E\r
-#define GL_COLOR_SUM_CLAMP_NV 0x854F\r
-#define GL_COMBINER0_NV 0x8550\r
-#define GL_COMBINER1_NV 0x8551\r
-#define GL_COMBINER2_NV 0x8552\r
-#define GL_COMBINER3_NV 0x8553\r
-#define GL_COMBINER4_NV 0x8554\r
-#define GL_COMBINER5_NV 0x8555\r
-#define GL_COMBINER6_NV 0x8556\r
-#define GL_COMBINER7_NV 0x8557\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOMBINERINPUTNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);\r
-typedef void (GLAPIENTRY * PFNGLCOMBINEROUTPUTNVPROC) (GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum);\r
-typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERFNVPROC) (GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERFVNVPROC) (GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERINVPROC) (GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLCOMBINERPARAMETERIVNVPROC) (GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLFINALCOMBINERINPUTNVPROC) (GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage);\r
-typedef void (GLAPIENTRY * PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC) (GLenum stage, GLenum portion, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC) (GLenum variable, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC) (GLenum variable, GLenum pname, GLint* params);\r
-\r
-#define glCombinerInputNV GLEW_GET_FUN(__glewCombinerInputNV)\r
-#define glCombinerOutputNV GLEW_GET_FUN(__glewCombinerOutputNV)\r
-#define glCombinerParameterfNV GLEW_GET_FUN(__glewCombinerParameterfNV)\r
-#define glCombinerParameterfvNV GLEW_GET_FUN(__glewCombinerParameterfvNV)\r
-#define glCombinerParameteriNV GLEW_GET_FUN(__glewCombinerParameteriNV)\r
-#define glCombinerParameterivNV GLEW_GET_FUN(__glewCombinerParameterivNV)\r
-#define glFinalCombinerInputNV GLEW_GET_FUN(__glewFinalCombinerInputNV)\r
-#define glGetCombinerInputParameterfvNV GLEW_GET_FUN(__glewGetCombinerInputParameterfvNV)\r
-#define glGetCombinerInputParameterivNV GLEW_GET_FUN(__glewGetCombinerInputParameterivNV)\r
-#define glGetCombinerOutputParameterfvNV GLEW_GET_FUN(__glewGetCombinerOutputParameterfvNV)\r
-#define glGetCombinerOutputParameterivNV GLEW_GET_FUN(__glewGetCombinerOutputParameterivNV)\r
-#define glGetFinalCombinerInputParameterfvNV GLEW_GET_FUN(__glewGetFinalCombinerInputParameterfvNV)\r
-#define glGetFinalCombinerInputParameterivNV GLEW_GET_FUN(__glewGetFinalCombinerInputParameterivNV)\r
-\r
-#define GLEW_NV_register_combiners GLEW_GET_VAR(__GLEW_NV_register_combiners)\r
-\r
-#endif /* GL_NV_register_combiners */\r
-\r
-/* ----------------------- GL_NV_register_combiners2 ----------------------- */\r
-\r
-#ifndef GL_NV_register_combiners2\r
-#define GL_NV_register_combiners2 1\r
-\r
-#define GL_PER_STAGE_CONSTANTS_NV 0x8535\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC) (GLenum stage, GLenum pname, GLfloat* params);\r
-\r
-#define glCombinerStageParameterfvNV GLEW_GET_FUN(__glewCombinerStageParameterfvNV)\r
-#define glGetCombinerStageParameterfvNV GLEW_GET_FUN(__glewGetCombinerStageParameterfvNV)\r
-\r
-#define GLEW_NV_register_combiners2 GLEW_GET_VAR(__GLEW_NV_register_combiners2)\r
-\r
-#endif /* GL_NV_register_combiners2 */\r
-\r
-/* ------------------------ GL_NV_shader_buffer_load ----------------------- */\r
-\r
-#ifndef GL_NV_shader_buffer_load\r
-#define GL_NV_shader_buffer_load 1\r
-\r
-#define GL_BUFFER_GPU_ADDRESS_NV 0x8F1D\r
-#define GL_GPU_ADDRESS_NV 0x8F34\r
-#define GL_MAX_SHADER_BUFFER_ADDRESS_NV 0x8F35\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETBUFFERPARAMETERUI64VNVPROC) (GLenum target, GLenum pname, GLuint64EXT* params);\r
-typedef void (GLAPIENTRY * PFNGLGETINTEGERUI64VNVPROC) (GLenum value, GLuint64EXT* result);\r
-typedef void (GLAPIENTRY * PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC) (GLuint buffer, GLenum pname, GLuint64EXT* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISBUFFERRESIDENTNVPROC) (GLenum target);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISNAMEDBUFFERRESIDENTNVPROC) (GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLMAKEBUFFERNONRESIDENTNVPROC) (GLenum target);\r
-typedef void (GLAPIENTRY * PFNGLMAKEBUFFERRESIDENTNVPROC) (GLenum target, GLenum access);\r
-typedef void (GLAPIENTRY * PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC) (GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLMAKENAMEDBUFFERRESIDENTNVPROC) (GLuint buffer, GLenum access);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMUI64NVPROC) (GLuint program, GLint location, GLuint64EXT value);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT* value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMUI64NVPROC) (GLint location, GLuint64EXT value);\r
-typedef void (GLAPIENTRY * PFNGLUNIFORMUI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT* value);\r
-\r
-#define glGetBufferParameterui64vNV GLEW_GET_FUN(__glewGetBufferParameterui64vNV)\r
-#define glGetIntegerui64vNV GLEW_GET_FUN(__glewGetIntegerui64vNV)\r
-#define glGetNamedBufferParameterui64vNV GLEW_GET_FUN(__glewGetNamedBufferParameterui64vNV)\r
-#define glIsBufferResidentNV GLEW_GET_FUN(__glewIsBufferResidentNV)\r
-#define glIsNamedBufferResidentNV GLEW_GET_FUN(__glewIsNamedBufferResidentNV)\r
-#define glMakeBufferNonResidentNV GLEW_GET_FUN(__glewMakeBufferNonResidentNV)\r
-#define glMakeBufferResidentNV GLEW_GET_FUN(__glewMakeBufferResidentNV)\r
-#define glMakeNamedBufferNonResidentNV GLEW_GET_FUN(__glewMakeNamedBufferNonResidentNV)\r
-#define glMakeNamedBufferResidentNV GLEW_GET_FUN(__glewMakeNamedBufferResidentNV)\r
-#define glProgramUniformui64NV GLEW_GET_FUN(__glewProgramUniformui64NV)\r
-#define glProgramUniformui64vNV GLEW_GET_FUN(__glewProgramUniformui64vNV)\r
-#define glUniformui64NV GLEW_GET_FUN(__glewUniformui64NV)\r
-#define glUniformui64vNV GLEW_GET_FUN(__glewUniformui64vNV)\r
-\r
-#define GLEW_NV_shader_buffer_load GLEW_GET_VAR(__GLEW_NV_shader_buffer_load)\r
-\r
-#endif /* GL_NV_shader_buffer_load */\r
-\r
-/* ---------------------- GL_NV_tessellation_program5 ---------------------- */\r
-\r
-#ifndef GL_NV_tessellation_program5\r
-#define GL_NV_tessellation_program5 1\r
-\r
-#define GL_MAX_PROGRAM_PATCH_ATTRIBS_NV 0x86D8\r
-#define GL_TESS_CONTROL_PROGRAM_NV 0x891E\r
-#define GL_TESS_EVALUATION_PROGRAM_NV 0x891F\r
-#define GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV 0x8C74\r
-#define GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV 0x8C75\r
-\r
-#define GLEW_NV_tessellation_program5 GLEW_GET_VAR(__GLEW_NV_tessellation_program5)\r
-\r
-#endif /* GL_NV_tessellation_program5 */\r
-\r
-/* -------------------------- GL_NV_texgen_emboss -------------------------- */\r
-\r
-#ifndef GL_NV_texgen_emboss\r
-#define GL_NV_texgen_emboss 1\r
-\r
-#define GL_EMBOSS_LIGHT_NV 0x855D\r
-#define GL_EMBOSS_CONSTANT_NV 0x855E\r
-#define GL_EMBOSS_MAP_NV 0x855F\r
-\r
-#define GLEW_NV_texgen_emboss GLEW_GET_VAR(__GLEW_NV_texgen_emboss)\r
-\r
-#endif /* GL_NV_texgen_emboss */\r
-\r
-/* ------------------------ GL_NV_texgen_reflection ------------------------ */\r
-\r
-#ifndef GL_NV_texgen_reflection\r
-#define GL_NV_texgen_reflection 1\r
-\r
-#define GL_NORMAL_MAP_NV 0x8511\r
-#define GL_REFLECTION_MAP_NV 0x8512\r
-\r
-#define GLEW_NV_texgen_reflection GLEW_GET_VAR(__GLEW_NV_texgen_reflection)\r
-\r
-#endif /* GL_NV_texgen_reflection */\r
-\r
-/* ------------------------- GL_NV_texture_barrier ------------------------- */\r
-\r
-#ifndef GL_NV_texture_barrier\r
-#define GL_NV_texture_barrier 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREBARRIERNVPROC) (void);\r
-\r
-#define glTextureBarrierNV GLEW_GET_FUN(__glewTextureBarrierNV)\r
-\r
-#define GLEW_NV_texture_barrier GLEW_GET_VAR(__GLEW_NV_texture_barrier)\r
-\r
-#endif /* GL_NV_texture_barrier */\r
-\r
-/* --------------------- GL_NV_texture_compression_vtc --------------------- */\r
-\r
-#ifndef GL_NV_texture_compression_vtc\r
-#define GL_NV_texture_compression_vtc 1\r
-\r
-#define GLEW_NV_texture_compression_vtc GLEW_GET_VAR(__GLEW_NV_texture_compression_vtc)\r
-\r
-#endif /* GL_NV_texture_compression_vtc */\r
-\r
-/* ----------------------- GL_NV_texture_env_combine4 ---------------------- */\r
-\r
-#ifndef GL_NV_texture_env_combine4\r
-#define GL_NV_texture_env_combine4 1\r
-\r
-#define GL_COMBINE4_NV 0x8503\r
-#define GL_SOURCE3_RGB_NV 0x8583\r
-#define GL_SOURCE3_ALPHA_NV 0x858B\r
-#define GL_OPERAND3_RGB_NV 0x8593\r
-#define GL_OPERAND3_ALPHA_NV 0x859B\r
-\r
-#define GLEW_NV_texture_env_combine4 GLEW_GET_VAR(__GLEW_NV_texture_env_combine4)\r
-\r
-#endif /* GL_NV_texture_env_combine4 */\r
-\r
-/* ---------------------- GL_NV_texture_expand_normal ---------------------- */\r
-\r
-#ifndef GL_NV_texture_expand_normal\r
-#define GL_NV_texture_expand_normal 1\r
-\r
-#define GL_TEXTURE_UNSIGNED_REMAP_MODE_NV 0x888F\r
-\r
-#define GLEW_NV_texture_expand_normal GLEW_GET_VAR(__GLEW_NV_texture_expand_normal)\r
-\r
-#endif /* GL_NV_texture_expand_normal */\r
-\r
-/* ----------------------- GL_NV_texture_multisample ----------------------- */\r
-\r
-#ifndef GL_NV_texture_multisample\r
-#define GL_NV_texture_multisample 1\r
-\r
-#define GL_TEXTURE_COVERAGE_SAMPLES_NV 0x9045\r
-#define GL_TEXTURE_COLOR_SAMPLES_NV 0x9046\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE2DMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);\r
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE3DMULTISAMPLECOVERAGENVPROC) (GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DMULTISAMPLECOVERAGENVPROC) (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC) (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC) (GLuint texture, GLenum target, GLsizei coverageSamples, GLsizei colorSamples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC) (GLuint texture, GLenum target, GLsizei samples, GLint internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations);\r
-\r
-#define glTexImage2DMultisampleCoverageNV GLEW_GET_FUN(__glewTexImage2DMultisampleCoverageNV)\r
-#define glTexImage3DMultisampleCoverageNV GLEW_GET_FUN(__glewTexImage3DMultisampleCoverageNV)\r
-#define glTextureImage2DMultisampleCoverageNV GLEW_GET_FUN(__glewTextureImage2DMultisampleCoverageNV)\r
-#define glTextureImage2DMultisampleNV GLEW_GET_FUN(__glewTextureImage2DMultisampleNV)\r
-#define glTextureImage3DMultisampleCoverageNV GLEW_GET_FUN(__glewTextureImage3DMultisampleCoverageNV)\r
-#define glTextureImage3DMultisampleNV GLEW_GET_FUN(__glewTextureImage3DMultisampleNV)\r
-\r
-#define GLEW_NV_texture_multisample GLEW_GET_VAR(__GLEW_NV_texture_multisample)\r
-\r
-#endif /* GL_NV_texture_multisample */\r
-\r
-/* ------------------------ GL_NV_texture_rectangle ------------------------ */\r
-\r
-#ifndef GL_NV_texture_rectangle\r
-#define GL_NV_texture_rectangle 1\r
-\r
-#define GL_TEXTURE_RECTANGLE_NV 0x84F5\r
-#define GL_TEXTURE_BINDING_RECTANGLE_NV 0x84F6\r
-#define GL_PROXY_TEXTURE_RECTANGLE_NV 0x84F7\r
-#define GL_MAX_RECTANGLE_TEXTURE_SIZE_NV 0x84F8\r
-\r
-#define GLEW_NV_texture_rectangle GLEW_GET_VAR(__GLEW_NV_texture_rectangle)\r
-\r
-#endif /* GL_NV_texture_rectangle */\r
-\r
-/* -------------------------- GL_NV_texture_shader ------------------------- */\r
-\r
-#ifndef GL_NV_texture_shader\r
-#define GL_NV_texture_shader 1\r
-\r
-#define GL_OFFSET_TEXTURE_RECTANGLE_NV 0x864C\r
-#define GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV 0x864D\r
-#define GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV 0x864E\r
-#define GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV 0x86D9\r
-#define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA\r
-#define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB\r
-#define GL_DSDT_MAG_INTENSITY_NV 0x86DC\r
-#define GL_SHADER_CONSISTENT_NV 0x86DD\r
-#define GL_TEXTURE_SHADER_NV 0x86DE\r
-#define GL_SHADER_OPERATION_NV 0x86DF\r
-#define GL_CULL_MODES_NV 0x86E0\r
-#define GL_OFFSET_TEXTURE_2D_MATRIX_NV 0x86E1\r
-#define GL_OFFSET_TEXTURE_MATRIX_NV 0x86E1\r
-#define GL_OFFSET_TEXTURE_2D_SCALE_NV 0x86E2\r
-#define GL_OFFSET_TEXTURE_SCALE_NV 0x86E2\r
-#define GL_OFFSET_TEXTURE_BIAS_NV 0x86E3\r
-#define GL_OFFSET_TEXTURE_2D_BIAS_NV 0x86E3\r
-#define GL_PREVIOUS_TEXTURE_INPUT_NV 0x86E4\r
-#define GL_CONST_EYE_NV 0x86E5\r
-#define GL_PASS_THROUGH_NV 0x86E6\r
-#define GL_CULL_FRAGMENT_NV 0x86E7\r
-#define GL_OFFSET_TEXTURE_2D_NV 0x86E8\r
-#define GL_DEPENDENT_AR_TEXTURE_2D_NV 0x86E9\r
-#define GL_DEPENDENT_GB_TEXTURE_2D_NV 0x86EA\r
-#define GL_DOT_PRODUCT_NV 0x86EC\r
-#define GL_DOT_PRODUCT_DEPTH_REPLACE_NV 0x86ED\r
-#define GL_DOT_PRODUCT_TEXTURE_2D_NV 0x86EE\r
-#define GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV 0x86F0\r
-#define GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV 0x86F1\r
-#define GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV 0x86F2\r
-#define GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV 0x86F3\r
-#define GL_HILO_NV 0x86F4\r
-#define GL_DSDT_NV 0x86F5\r
-#define GL_DSDT_MAG_NV 0x86F6\r
-#define GL_DSDT_MAG_VIB_NV 0x86F7\r
-#define GL_HILO16_NV 0x86F8\r
-#define GL_SIGNED_HILO_NV 0x86F9\r
-#define GL_SIGNED_HILO16_NV 0x86FA\r
-#define GL_SIGNED_RGBA_NV 0x86FB\r
-#define GL_SIGNED_RGBA8_NV 0x86FC\r
-#define GL_SIGNED_RGB_NV 0x86FE\r
-#define GL_SIGNED_RGB8_NV 0x86FF\r
-#define GL_SIGNED_LUMINANCE_NV 0x8701\r
-#define GL_SIGNED_LUMINANCE8_NV 0x8702\r
-#define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703\r
-#define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704\r
-#define GL_SIGNED_ALPHA_NV 0x8705\r
-#define GL_SIGNED_ALPHA8_NV 0x8706\r
-#define GL_SIGNED_INTENSITY_NV 0x8707\r
-#define GL_SIGNED_INTENSITY8_NV 0x8708\r
-#define GL_DSDT8_NV 0x8709\r
-#define GL_DSDT8_MAG8_NV 0x870A\r
-#define GL_DSDT8_MAG8_INTENSITY8_NV 0x870B\r
-#define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C\r
-#define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D\r
-#define GL_HI_SCALE_NV 0x870E\r
-#define GL_LO_SCALE_NV 0x870F\r
-#define GL_DS_SCALE_NV 0x8710\r
-#define GL_DT_SCALE_NV 0x8711\r
-#define GL_MAGNITUDE_SCALE_NV 0x8712\r
-#define GL_VIBRANCE_SCALE_NV 0x8713\r
-#define GL_HI_BIAS_NV 0x8714\r
-#define GL_LO_BIAS_NV 0x8715\r
-#define GL_DS_BIAS_NV 0x8716\r
-#define GL_DT_BIAS_NV 0x8717\r
-#define GL_MAGNITUDE_BIAS_NV 0x8718\r
-#define GL_VIBRANCE_BIAS_NV 0x8719\r
-#define GL_TEXTURE_BORDER_VALUES_NV 0x871A\r
-#define GL_TEXTURE_HI_SIZE_NV 0x871B\r
-#define GL_TEXTURE_LO_SIZE_NV 0x871C\r
-#define GL_TEXTURE_DS_SIZE_NV 0x871D\r
-#define GL_TEXTURE_DT_SIZE_NV 0x871E\r
-#define GL_TEXTURE_MAG_SIZE_NV 0x871F\r
-\r
-#define GLEW_NV_texture_shader GLEW_GET_VAR(__GLEW_NV_texture_shader)\r
-\r
-#endif /* GL_NV_texture_shader */\r
-\r
-/* ------------------------- GL_NV_texture_shader2 ------------------------- */\r
-\r
-#ifndef GL_NV_texture_shader2\r
-#define GL_NV_texture_shader2 1\r
-\r
-#define GL_UNSIGNED_INT_S8_S8_8_8_NV 0x86DA\r
-#define GL_UNSIGNED_INT_8_8_S8_S8_REV_NV 0x86DB\r
-#define GL_DSDT_MAG_INTENSITY_NV 0x86DC\r
-#define GL_DOT_PRODUCT_TEXTURE_3D_NV 0x86EF\r
-#define GL_HILO_NV 0x86F4\r
-#define GL_DSDT_NV 0x86F5\r
-#define GL_DSDT_MAG_NV 0x86F6\r
-#define GL_DSDT_MAG_VIB_NV 0x86F7\r
-#define GL_HILO16_NV 0x86F8\r
-#define GL_SIGNED_HILO_NV 0x86F9\r
-#define GL_SIGNED_HILO16_NV 0x86FA\r
-#define GL_SIGNED_RGBA_NV 0x86FB\r
-#define GL_SIGNED_RGBA8_NV 0x86FC\r
-#define GL_SIGNED_RGB_NV 0x86FE\r
-#define GL_SIGNED_RGB8_NV 0x86FF\r
-#define GL_SIGNED_LUMINANCE_NV 0x8701\r
-#define GL_SIGNED_LUMINANCE8_NV 0x8702\r
-#define GL_SIGNED_LUMINANCE_ALPHA_NV 0x8703\r
-#define GL_SIGNED_LUMINANCE8_ALPHA8_NV 0x8704\r
-#define GL_SIGNED_ALPHA_NV 0x8705\r
-#define GL_SIGNED_ALPHA8_NV 0x8706\r
-#define GL_SIGNED_INTENSITY_NV 0x8707\r
-#define GL_SIGNED_INTENSITY8_NV 0x8708\r
-#define GL_DSDT8_NV 0x8709\r
-#define GL_DSDT8_MAG8_NV 0x870A\r
-#define GL_DSDT8_MAG8_INTENSITY8_NV 0x870B\r
-#define GL_SIGNED_RGB_UNSIGNED_ALPHA_NV 0x870C\r
-#define GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV 0x870D\r
-\r
-#define GLEW_NV_texture_shader2 GLEW_GET_VAR(__GLEW_NV_texture_shader2)\r
-\r
-#endif /* GL_NV_texture_shader2 */\r
-\r
-/* ------------------------- GL_NV_texture_shader3 ------------------------- */\r
-\r
-#ifndef GL_NV_texture_shader3\r
-#define GL_NV_texture_shader3 1\r
-\r
-#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV 0x8850\r
-#define GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV 0x8851\r
-#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8852\r
-#define GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV 0x8853\r
-#define GL_OFFSET_HILO_TEXTURE_2D_NV 0x8854\r
-#define GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV 0x8855\r
-#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV 0x8856\r
-#define GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV 0x8857\r
-#define GL_DEPENDENT_HILO_TEXTURE_2D_NV 0x8858\r
-#define GL_DEPENDENT_RGB_TEXTURE_3D_NV 0x8859\r
-#define GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV 0x885A\r
-#define GL_DOT_PRODUCT_PASS_THROUGH_NV 0x885B\r
-#define GL_DOT_PRODUCT_TEXTURE_1D_NV 0x885C\r
-#define GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV 0x885D\r
-#define GL_HILO8_NV 0x885E\r
-#define GL_SIGNED_HILO8_NV 0x885F\r
-#define GL_FORCE_BLUE_TO_ONE_NV 0x8860\r
-\r
-#define GLEW_NV_texture_shader3 GLEW_GET_VAR(__GLEW_NV_texture_shader3)\r
-\r
-#endif /* GL_NV_texture_shader3 */\r
-\r
-/* ------------------------ GL_NV_transform_feedback ----------------------- */\r
-\r
-#ifndef GL_NV_transform_feedback\r
-#define GL_NV_transform_feedback 1\r
-\r
-#define GL_BACK_PRIMARY_COLOR_NV 0x8C77\r
-#define GL_BACK_SECONDARY_COLOR_NV 0x8C78\r
-#define GL_TEXTURE_COORD_NV 0x8C79\r
-#define GL_CLIP_DISTANCE_NV 0x8C7A\r
-#define GL_VERTEX_ID_NV 0x8C7B\r
-#define GL_PRIMITIVE_ID_NV 0x8C7C\r
-#define GL_GENERIC_ATTRIB_NV 0x8C7D\r
-#define GL_TRANSFORM_FEEDBACK_ATTRIBS_NV 0x8C7E\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV 0x8C7F\r
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV 0x8C80\r
-#define GL_ACTIVE_VARYINGS_NV 0x8C81\r
-#define GL_ACTIVE_VARYING_MAX_LENGTH_NV 0x8C82\r
-#define GL_TRANSFORM_FEEDBACK_VARYINGS_NV 0x8C83\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_START_NV 0x8C84\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV 0x8C85\r
-#define GL_TRANSFORM_FEEDBACK_RECORD_NV 0x8C86\r
-#define GL_PRIMITIVES_GENERATED_NV 0x8C87\r
-#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV 0x8C88\r
-#define GL_RASTERIZER_DISCARD_NV 0x8C89\r
-#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV 0x8C8A\r
-#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV 0x8C8B\r
-#define GL_INTERLEAVED_ATTRIBS_NV 0x8C8C\r
-#define GL_SEPARATE_ATTRIBS_NV 0x8C8D\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_NV 0x8C8E\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV 0x8C8F\r
-\r
-typedef void (GLAPIENTRY * PFNGLACTIVEVARYINGNVPROC) (GLuint program, const GLchar *name);\r
-typedef void (GLAPIENTRY * PFNGLBEGINTRANSFORMFEEDBACKNVPROC) (GLenum primitiveMode);\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERBASENVPROC) (GLenum target, GLuint index, GLuint buffer);\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFEROFFSETNVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset);\r
-typedef void (GLAPIENTRY * PFNGLBINDBUFFERRANGENVPROC) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);\r
-typedef void (GLAPIENTRY * PFNGLENDTRANSFORMFEEDBACKNVPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLGETACTIVEVARYINGNVPROC) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);\r
-typedef void (GLAPIENTRY * PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC) (GLuint program, GLuint index, GLint *location);\r
-typedef GLint (GLAPIENTRY * PFNGLGETVARYINGLOCATIONNVPROC) (GLuint program, const GLchar *name);\r
-typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC) (GLuint count, const GLint *attribs, GLenum bufferMode);\r
-typedef void (GLAPIENTRY * PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC) (GLuint program, GLsizei count, const GLint *locations, GLenum bufferMode);\r
-\r
-#define glActiveVaryingNV GLEW_GET_FUN(__glewActiveVaryingNV)\r
-#define glBeginTransformFeedbackNV GLEW_GET_FUN(__glewBeginTransformFeedbackNV)\r
-#define glBindBufferBaseNV GLEW_GET_FUN(__glewBindBufferBaseNV)\r
-#define glBindBufferOffsetNV GLEW_GET_FUN(__glewBindBufferOffsetNV)\r
-#define glBindBufferRangeNV GLEW_GET_FUN(__glewBindBufferRangeNV)\r
-#define glEndTransformFeedbackNV GLEW_GET_FUN(__glewEndTransformFeedbackNV)\r
-#define glGetActiveVaryingNV GLEW_GET_FUN(__glewGetActiveVaryingNV)\r
-#define glGetTransformFeedbackVaryingNV GLEW_GET_FUN(__glewGetTransformFeedbackVaryingNV)\r
-#define glGetVaryingLocationNV GLEW_GET_FUN(__glewGetVaryingLocationNV)\r
-#define glTransformFeedbackAttribsNV GLEW_GET_FUN(__glewTransformFeedbackAttribsNV)\r
-#define glTransformFeedbackVaryingsNV GLEW_GET_FUN(__glewTransformFeedbackVaryingsNV)\r
-\r
-#define GLEW_NV_transform_feedback GLEW_GET_VAR(__GLEW_NV_transform_feedback)\r
-\r
-#endif /* GL_NV_transform_feedback */\r
-\r
-/* ----------------------- GL_NV_transform_feedback2 ----------------------- */\r
-\r
-#ifndef GL_NV_transform_feedback2\r
-#define GL_NV_transform_feedback2 1\r
-\r
-#define GL_TRANSFORM_FEEDBACK_NV 0x8E22\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV 0x8E23\r
-#define GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV 0x8E24\r
-#define GL_TRANSFORM_FEEDBACK_BINDING_NV 0x8E25\r
-\r
-typedef void (GLAPIENTRY * PFNGLBINDTRANSFORMFEEDBACKNVPROC) (GLenum target, GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLDELETETRANSFORMFEEDBACKSNVPROC) (GLsizei n, const GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLDRAWTRANSFORMFEEDBACKNVPROC) (GLenum mode, GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLGENTRANSFORMFEEDBACKSNVPROC) (GLsizei n, GLuint* ids);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISTRANSFORMFEEDBACKNVPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLPAUSETRANSFORMFEEDBACKNVPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLRESUMETRANSFORMFEEDBACKNVPROC) (void);\r
-\r
-#define glBindTransformFeedbackNV GLEW_GET_FUN(__glewBindTransformFeedbackNV)\r
-#define glDeleteTransformFeedbacksNV GLEW_GET_FUN(__glewDeleteTransformFeedbacksNV)\r
-#define glDrawTransformFeedbackNV GLEW_GET_FUN(__glewDrawTransformFeedbackNV)\r
-#define glGenTransformFeedbacksNV GLEW_GET_FUN(__glewGenTransformFeedbacksNV)\r
-#define glIsTransformFeedbackNV GLEW_GET_FUN(__glewIsTransformFeedbackNV)\r
-#define glPauseTransformFeedbackNV GLEW_GET_FUN(__glewPauseTransformFeedbackNV)\r
-#define glResumeTransformFeedbackNV GLEW_GET_FUN(__glewResumeTransformFeedbackNV)\r
-\r
-#define GLEW_NV_transform_feedback2 GLEW_GET_VAR(__GLEW_NV_transform_feedback2)\r
-\r
-#endif /* GL_NV_transform_feedback2 */\r
-\r
-/* -------------------------- GL_NV_vdpau_interop -------------------------- */\r
-\r
-#ifndef GL_NV_vdpau_interop\r
-#define GL_NV_vdpau_interop 1\r
-\r
-#define GL_SURFACE_STATE_NV 0x86EB\r
-#define GL_SURFACE_REGISTERED_NV 0x86FD\r
-#define GL_SURFACE_MAPPED_NV 0x8700\r
-#define GL_WRITE_DISCARD_NV 0x88BE\r
-\r
-typedef GLintptr GLvdpauSurfaceNV;\r
-\r
-typedef void (GLAPIENTRY * PFNGLVDPAUFININVPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLVDPAUGETSURFACEIVNVPROC) (GLvdpauSurfaceNV surface, GLenum pname, GLsizei bufSize, GLsizei* length, GLint *values);\r
-typedef void (GLAPIENTRY * PFNGLVDPAUINITNVPROC) (const void* vdpDevice, const GLvoid*getProcAddress);\r
-typedef void (GLAPIENTRY * PFNGLVDPAUISSURFACENVPROC) (GLvdpauSurfaceNV surface);\r
-typedef void (GLAPIENTRY * PFNGLVDPAUMAPSURFACESNVPROC) (GLsizei numSurfaces, const GLvdpauSurfaceNV* surfaces);\r
-typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC) (const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);\r
-typedef GLvdpauSurfaceNV (GLAPIENTRY * PFNGLVDPAUREGISTERVIDEOSURFACENVPROC) (const void* vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames);\r
-typedef void (GLAPIENTRY * PFNGLVDPAUSURFACEACCESSNVPROC) (GLvdpauSurfaceNV surface, GLenum access);\r
-typedef void (GLAPIENTRY * PFNGLVDPAUUNMAPSURFACESNVPROC) (GLsizei numSurface, const GLvdpauSurfaceNV* surfaces);\r
-typedef void (GLAPIENTRY * PFNGLVDPAUUNREGISTERSURFACENVPROC) (GLvdpauSurfaceNV surface);\r
-\r
-#define glVDPAUFiniNV GLEW_GET_FUN(__glewVDPAUFiniNV)\r
-#define glVDPAUGetSurfaceivNV GLEW_GET_FUN(__glewVDPAUGetSurfaceivNV)\r
-#define glVDPAUInitNV GLEW_GET_FUN(__glewVDPAUInitNV)\r
-#define glVDPAUIsSurfaceNV GLEW_GET_FUN(__glewVDPAUIsSurfaceNV)\r
-#define glVDPAUMapSurfacesNV GLEW_GET_FUN(__glewVDPAUMapSurfacesNV)\r
-#define glVDPAURegisterOutputSurfaceNV GLEW_GET_FUN(__glewVDPAURegisterOutputSurfaceNV)\r
-#define glVDPAURegisterVideoSurfaceNV GLEW_GET_FUN(__glewVDPAURegisterVideoSurfaceNV)\r
-#define glVDPAUSurfaceAccessNV GLEW_GET_FUN(__glewVDPAUSurfaceAccessNV)\r
-#define glVDPAUUnmapSurfacesNV GLEW_GET_FUN(__glewVDPAUUnmapSurfacesNV)\r
-#define glVDPAUUnregisterSurfaceNV GLEW_GET_FUN(__glewVDPAUUnregisterSurfaceNV)\r
-\r
-#define GLEW_NV_vdpau_interop GLEW_GET_VAR(__GLEW_NV_vdpau_interop)\r
-\r
-#endif /* GL_NV_vdpau_interop */\r
-\r
-/* ------------------------ GL_NV_vertex_array_range ----------------------- */\r
-\r
-#ifndef GL_NV_vertex_array_range\r
-#define GL_NV_vertex_array_range 1\r
-\r
-#define GL_VERTEX_ARRAY_RANGE_NV 0x851D\r
-#define GL_VERTEX_ARRAY_RANGE_LENGTH_NV 0x851E\r
-#define GL_VERTEX_ARRAY_RANGE_VALID_NV 0x851F\r
-#define GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV 0x8520\r
-#define GL_VERTEX_ARRAY_RANGE_POINTER_NV 0x8521\r
-\r
-typedef void (GLAPIENTRY * PFNGLFLUSHVERTEXARRAYRANGENVPROC) (void);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXARRAYRANGENVPROC) (GLsizei length, void* pointer);\r
-\r
-#define glFlushVertexArrayRangeNV GLEW_GET_FUN(__glewFlushVertexArrayRangeNV)\r
-#define glVertexArrayRangeNV GLEW_GET_FUN(__glewVertexArrayRangeNV)\r
-\r
-#define GLEW_NV_vertex_array_range GLEW_GET_VAR(__GLEW_NV_vertex_array_range)\r
-\r
-#endif /* GL_NV_vertex_array_range */\r
-\r
-/* ----------------------- GL_NV_vertex_array_range2 ----------------------- */\r
-\r
-#ifndef GL_NV_vertex_array_range2\r
-#define GL_NV_vertex_array_range2 1\r
-\r
-#define GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533\r
-\r
-#define GLEW_NV_vertex_array_range2 GLEW_GET_VAR(__GLEW_NV_vertex_array_range2)\r
-\r
-#endif /* GL_NV_vertex_array_range2 */\r
-\r
-/* ------------------- GL_NV_vertex_attrib_integer_64bit ------------------- */\r
-\r
-#ifndef GL_NV_vertex_attrib_integer_64bit\r
-#define GL_NV_vertex_attrib_integer_64bit 1\r
-\r
-#define GL_INT64_NV 0x140E\r
-#define GL_UNSIGNED_INT64_NV 0x140F\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLI64VNVPROC) (GLuint index, GLenum pname, GLint64EXT* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBLUI64VNVPROC) (GLuint index, GLenum pname, GLuint64EXT* params);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1I64NVPROC) (GLuint index, GLint64EXT x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1I64VNVPROC) (GLuint index, const GLint64EXT* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64NVPROC) (GLuint index, GLuint64EXT x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL1UI64VNVPROC) (GLuint index, const GLuint64EXT* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2I64VNVPROC) (GLuint index, const GLint64EXT* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL2UI64VNVPROC) (GLuint index, const GLuint64EXT* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3I64VNVPROC) (GLuint index, const GLint64EXT* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL3UI64VNVPROC) (GLuint index, const GLuint64EXT* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4I64NVPROC) (GLuint index, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4I64VNVPROC) (GLuint index, const GLint64EXT* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4UI64NVPROC) (GLuint index, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBL4UI64VNVPROC) (GLuint index, const GLuint64EXT* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBLFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride);\r
-\r
-#define glGetVertexAttribLi64vNV GLEW_GET_FUN(__glewGetVertexAttribLi64vNV)\r
-#define glGetVertexAttribLui64vNV GLEW_GET_FUN(__glewGetVertexAttribLui64vNV)\r
-#define glVertexAttribL1i64NV GLEW_GET_FUN(__glewVertexAttribL1i64NV)\r
-#define glVertexAttribL1i64vNV GLEW_GET_FUN(__glewVertexAttribL1i64vNV)\r
-#define glVertexAttribL1ui64NV GLEW_GET_FUN(__glewVertexAttribL1ui64NV)\r
-#define glVertexAttribL1ui64vNV GLEW_GET_FUN(__glewVertexAttribL1ui64vNV)\r
-#define glVertexAttribL2i64NV GLEW_GET_FUN(__glewVertexAttribL2i64NV)\r
-#define glVertexAttribL2i64vNV GLEW_GET_FUN(__glewVertexAttribL2i64vNV)\r
-#define glVertexAttribL2ui64NV GLEW_GET_FUN(__glewVertexAttribL2ui64NV)\r
-#define glVertexAttribL2ui64vNV GLEW_GET_FUN(__glewVertexAttribL2ui64vNV)\r
-#define glVertexAttribL3i64NV GLEW_GET_FUN(__glewVertexAttribL3i64NV)\r
-#define glVertexAttribL3i64vNV GLEW_GET_FUN(__glewVertexAttribL3i64vNV)\r
-#define glVertexAttribL3ui64NV GLEW_GET_FUN(__glewVertexAttribL3ui64NV)\r
-#define glVertexAttribL3ui64vNV GLEW_GET_FUN(__glewVertexAttribL3ui64vNV)\r
-#define glVertexAttribL4i64NV GLEW_GET_FUN(__glewVertexAttribL4i64NV)\r
-#define glVertexAttribL4i64vNV GLEW_GET_FUN(__glewVertexAttribL4i64vNV)\r
-#define glVertexAttribL4ui64NV GLEW_GET_FUN(__glewVertexAttribL4ui64NV)\r
-#define glVertexAttribL4ui64vNV GLEW_GET_FUN(__glewVertexAttribL4ui64vNV)\r
-#define glVertexAttribLFormatNV GLEW_GET_FUN(__glewVertexAttribLFormatNV)\r
-\r
-#define GLEW_NV_vertex_attrib_integer_64bit GLEW_GET_VAR(__GLEW_NV_vertex_attrib_integer_64bit)\r
-\r
-#endif /* GL_NV_vertex_attrib_integer_64bit */\r
-\r
-/* ------------------- GL_NV_vertex_buffer_unified_memory ------------------ */\r
-\r
-#ifndef GL_NV_vertex_buffer_unified_memory\r
-#define GL_NV_vertex_buffer_unified_memory 1\r
-\r
-#define GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV 0x8F1E\r
-#define GL_ELEMENT_ARRAY_UNIFIED_NV 0x8F1F\r
-#define GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV 0x8F20\r
-#define GL_VERTEX_ARRAY_ADDRESS_NV 0x8F21\r
-#define GL_NORMAL_ARRAY_ADDRESS_NV 0x8F22\r
-#define GL_COLOR_ARRAY_ADDRESS_NV 0x8F23\r
-#define GL_INDEX_ARRAY_ADDRESS_NV 0x8F24\r
-#define GL_TEXTURE_COORD_ARRAY_ADDRESS_NV 0x8F25\r
-#define GL_EDGE_FLAG_ARRAY_ADDRESS_NV 0x8F26\r
-#define GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV 0x8F27\r
-#define GL_FOG_COORD_ARRAY_ADDRESS_NV 0x8F28\r
-#define GL_ELEMENT_ARRAY_ADDRESS_NV 0x8F29\r
-#define GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV 0x8F2A\r
-#define GL_VERTEX_ARRAY_LENGTH_NV 0x8F2B\r
-#define GL_NORMAL_ARRAY_LENGTH_NV 0x8F2C\r
-#define GL_COLOR_ARRAY_LENGTH_NV 0x8F2D\r
-#define GL_INDEX_ARRAY_LENGTH_NV 0x8F2E\r
-#define GL_TEXTURE_COORD_ARRAY_LENGTH_NV 0x8F2F\r
-#define GL_EDGE_FLAG_ARRAY_LENGTH_NV 0x8F30\r
-#define GL_SECONDARY_COLOR_ARRAY_LENGTH_NV 0x8F31\r
-#define GL_FOG_COORD_ARRAY_LENGTH_NV 0x8F32\r
-#define GL_ELEMENT_ARRAY_LENGTH_NV 0x8F33\r
-#define GL_DRAW_INDIRECT_UNIFIED_NV 0x8F40\r
-#define GL_DRAW_INDIRECT_ADDRESS_NV 0x8F41\r
-#define GL_DRAW_INDIRECT_LENGTH_NV 0x8F42\r
-\r
-typedef void (GLAPIENTRY * PFNGLBUFFERADDRESSRANGENVPROC) (GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length);\r
-typedef void (GLAPIENTRY * PFNGLCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLEDGEFLAGFORMATNVPROC) (GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLFOGCOORDFORMATNVPROC) (GLenum type, GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLGETINTEGERUI64I_VNVPROC) (GLenum value, GLuint index, GLuint64EXT result[]);\r
-typedef void (GLAPIENTRY * PFNGLINDEXFORMATNVPROC) (GLenum type, GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLNORMALFORMATNVPROC) (GLenum type, GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLSECONDARYCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORDFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBIFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);\r
-\r
-#define glBufferAddressRangeNV GLEW_GET_FUN(__glewBufferAddressRangeNV)\r
-#define glColorFormatNV GLEW_GET_FUN(__glewColorFormatNV)\r
-#define glEdgeFlagFormatNV GLEW_GET_FUN(__glewEdgeFlagFormatNV)\r
-#define glFogCoordFormatNV GLEW_GET_FUN(__glewFogCoordFormatNV)\r
-#define glGetIntegerui64i_vNV GLEW_GET_FUN(__glewGetIntegerui64i_vNV)\r
-#define glIndexFormatNV GLEW_GET_FUN(__glewIndexFormatNV)\r
-#define glNormalFormatNV GLEW_GET_FUN(__glewNormalFormatNV)\r
-#define glSecondaryColorFormatNV GLEW_GET_FUN(__glewSecondaryColorFormatNV)\r
-#define glTexCoordFormatNV GLEW_GET_FUN(__glewTexCoordFormatNV)\r
-#define glVertexAttribFormatNV GLEW_GET_FUN(__glewVertexAttribFormatNV)\r
-#define glVertexAttribIFormatNV GLEW_GET_FUN(__glewVertexAttribIFormatNV)\r
-#define glVertexFormatNV GLEW_GET_FUN(__glewVertexFormatNV)\r
-\r
-#define GLEW_NV_vertex_buffer_unified_memory GLEW_GET_VAR(__GLEW_NV_vertex_buffer_unified_memory)\r
-\r
-#endif /* GL_NV_vertex_buffer_unified_memory */\r
-\r
-/* -------------------------- GL_NV_vertex_program ------------------------- */\r
-\r
-#ifndef GL_NV_vertex_program\r
-#define GL_NV_vertex_program 1\r
-\r
-#define GL_VERTEX_PROGRAM_NV 0x8620\r
-#define GL_VERTEX_STATE_PROGRAM_NV 0x8621\r
-#define GL_ATTRIB_ARRAY_SIZE_NV 0x8623\r
-#define GL_ATTRIB_ARRAY_STRIDE_NV 0x8624\r
-#define GL_ATTRIB_ARRAY_TYPE_NV 0x8625\r
-#define GL_CURRENT_ATTRIB_NV 0x8626\r
-#define GL_PROGRAM_LENGTH_NV 0x8627\r
-#define GL_PROGRAM_STRING_NV 0x8628\r
-#define GL_MODELVIEW_PROJECTION_NV 0x8629\r
-#define GL_IDENTITY_NV 0x862A\r
-#define GL_INVERSE_NV 0x862B\r
-#define GL_TRANSPOSE_NV 0x862C\r
-#define GL_INVERSE_TRANSPOSE_NV 0x862D\r
-#define GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV 0x862E\r
-#define GL_MAX_TRACK_MATRICES_NV 0x862F\r
-#define GL_MATRIX0_NV 0x8630\r
-#define GL_MATRIX1_NV 0x8631\r
-#define GL_MATRIX2_NV 0x8632\r
-#define GL_MATRIX3_NV 0x8633\r
-#define GL_MATRIX4_NV 0x8634\r
-#define GL_MATRIX5_NV 0x8635\r
-#define GL_MATRIX6_NV 0x8636\r
-#define GL_MATRIX7_NV 0x8637\r
-#define GL_CURRENT_MATRIX_STACK_DEPTH_NV 0x8640\r
-#define GL_CURRENT_MATRIX_NV 0x8641\r
-#define GL_VERTEX_PROGRAM_POINT_SIZE_NV 0x8642\r
-#define GL_VERTEX_PROGRAM_TWO_SIDE_NV 0x8643\r
-#define GL_PROGRAM_PARAMETER_NV 0x8644\r
-#define GL_ATTRIB_ARRAY_POINTER_NV 0x8645\r
-#define GL_PROGRAM_TARGET_NV 0x8646\r
-#define GL_PROGRAM_RESIDENT_NV 0x8647\r
-#define GL_TRACK_MATRIX_NV 0x8648\r
-#define GL_TRACK_MATRIX_TRANSFORM_NV 0x8649\r
-#define GL_VERTEX_PROGRAM_BINDING_NV 0x864A\r
-#define GL_PROGRAM_ERROR_POSITION_NV 0x864B\r
-#define GL_VERTEX_ATTRIB_ARRAY0_NV 0x8650\r
-#define GL_VERTEX_ATTRIB_ARRAY1_NV 0x8651\r
-#define GL_VERTEX_ATTRIB_ARRAY2_NV 0x8652\r
-#define GL_VERTEX_ATTRIB_ARRAY3_NV 0x8653\r
-#define GL_VERTEX_ATTRIB_ARRAY4_NV 0x8654\r
-#define GL_VERTEX_ATTRIB_ARRAY5_NV 0x8655\r
-#define GL_VERTEX_ATTRIB_ARRAY6_NV 0x8656\r
-#define GL_VERTEX_ATTRIB_ARRAY7_NV 0x8657\r
-#define GL_VERTEX_ATTRIB_ARRAY8_NV 0x8658\r
-#define GL_VERTEX_ATTRIB_ARRAY9_NV 0x8659\r
-#define GL_VERTEX_ATTRIB_ARRAY10_NV 0x865A\r
-#define GL_VERTEX_ATTRIB_ARRAY11_NV 0x865B\r
-#define GL_VERTEX_ATTRIB_ARRAY12_NV 0x865C\r
-#define GL_VERTEX_ATTRIB_ARRAY13_NV 0x865D\r
-#define GL_VERTEX_ATTRIB_ARRAY14_NV 0x865E\r
-#define GL_VERTEX_ATTRIB_ARRAY15_NV 0x865F\r
-#define GL_MAP1_VERTEX_ATTRIB0_4_NV 0x8660\r
-#define GL_MAP1_VERTEX_ATTRIB1_4_NV 0x8661\r
-#define GL_MAP1_VERTEX_ATTRIB2_4_NV 0x8662\r
-#define GL_MAP1_VERTEX_ATTRIB3_4_NV 0x8663\r
-#define GL_MAP1_VERTEX_ATTRIB4_4_NV 0x8664\r
-#define GL_MAP1_VERTEX_ATTRIB5_4_NV 0x8665\r
-#define GL_MAP1_VERTEX_ATTRIB6_4_NV 0x8666\r
-#define GL_MAP1_VERTEX_ATTRIB7_4_NV 0x8667\r
-#define GL_MAP1_VERTEX_ATTRIB8_4_NV 0x8668\r
-#define GL_MAP1_VERTEX_ATTRIB9_4_NV 0x8669\r
-#define GL_MAP1_VERTEX_ATTRIB10_4_NV 0x866A\r
-#define GL_MAP1_VERTEX_ATTRIB11_4_NV 0x866B\r
-#define GL_MAP1_VERTEX_ATTRIB12_4_NV 0x866C\r
-#define GL_MAP1_VERTEX_ATTRIB13_4_NV 0x866D\r
-#define GL_MAP1_VERTEX_ATTRIB14_4_NV 0x866E\r
-#define GL_MAP1_VERTEX_ATTRIB15_4_NV 0x866F\r
-#define GL_MAP2_VERTEX_ATTRIB0_4_NV 0x8670\r
-#define GL_MAP2_VERTEX_ATTRIB1_4_NV 0x8671\r
-#define GL_MAP2_VERTEX_ATTRIB2_4_NV 0x8672\r
-#define GL_MAP2_VERTEX_ATTRIB3_4_NV 0x8673\r
-#define GL_MAP2_VERTEX_ATTRIB4_4_NV 0x8674\r
-#define GL_MAP2_VERTEX_ATTRIB5_4_NV 0x8675\r
-#define GL_MAP2_VERTEX_ATTRIB6_4_NV 0x8676\r
-#define GL_MAP2_VERTEX_ATTRIB7_4_NV 0x8677\r
-#define GL_MAP2_VERTEX_ATTRIB8_4_NV 0x8678\r
-#define GL_MAP2_VERTEX_ATTRIB9_4_NV 0x8679\r
-#define GL_MAP2_VERTEX_ATTRIB10_4_NV 0x867A\r
-#define GL_MAP2_VERTEX_ATTRIB11_4_NV 0x867B\r
-#define GL_MAP2_VERTEX_ATTRIB12_4_NV 0x867C\r
-#define GL_MAP2_VERTEX_ATTRIB13_4_NV 0x867D\r
-#define GL_MAP2_VERTEX_ATTRIB14_4_NV 0x867E\r
-#define GL_MAP2_VERTEX_ATTRIB15_4_NV 0x867F\r
-\r
-typedef GLboolean (GLAPIENTRY * PFNGLAREPROGRAMSRESIDENTNVPROC) (GLsizei n, const GLuint* ids, GLboolean *residences);\r
-typedef void (GLAPIENTRY * PFNGLBINDPROGRAMNVPROC) (GLenum target, GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLDELETEPROGRAMSNVPROC) (GLsizei n, const GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLEXECUTEPROGRAMNVPROC) (GLenum target, GLuint id, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGENPROGRAMSNVPROC) (GLsizei n, GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMPARAMETERDVNVPROC) (GLenum target, GLuint index, GLenum pname, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMPARAMETERFVNVPROC) (GLenum target, GLuint index, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMSTRINGNVPROC) (GLuint id, GLenum pname, GLubyte* program);\r
-typedef void (GLAPIENTRY * PFNGLGETPROGRAMIVNVPROC) (GLuint id, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETTRACKMATRIXIVNVPROC) (GLenum target, GLuint address, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBPOINTERVNVPROC) (GLuint index, GLenum pname, GLvoid** pointer);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBDVNVPROC) (GLuint index, GLenum pname, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBFVNVPROC) (GLuint index, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVERTEXATTRIBIVNVPROC) (GLuint index, GLenum pname, GLint* params);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISPROGRAMNVPROC) (GLuint id);\r
-typedef void (GLAPIENTRY * PFNGLLOADPROGRAMNVPROC) (GLenum target, GLuint id, GLsizei len, const GLubyte* program);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4DNVPROC) (GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4DVNVPROC) (GLenum target, GLuint index, const GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4FNVPROC) (GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETER4FVNVPROC) (GLenum target, GLuint index, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERS4DVNVPROC) (GLenum target, GLuint index, GLsizei num, const GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLPROGRAMPARAMETERS4FVNVPROC) (GLenum target, GLuint index, GLsizei num, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLREQUESTRESIDENTPROGRAMSNVPROC) (GLsizei n, GLuint* ids);\r
-typedef void (GLAPIENTRY * PFNGLTRACKMATRIXNVPROC) (GLenum target, GLuint address, GLenum matrix, GLenum transform);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DNVPROC) (GLuint index, GLdouble x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1DVNVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FNVPROC) (GLuint index, GLfloat x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1FVNVPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SNVPROC) (GLuint index, GLshort x);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB1SVNVPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DNVPROC) (GLuint index, GLdouble x, GLdouble y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2DVNVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FNVPROC) (GLuint index, GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2FVNVPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SNVPROC) (GLuint index, GLshort x, GLshort y);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB2SVNVPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3DVNVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3FVNVPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB3SVNVPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DNVPROC) (GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4DVNVPROC) (GLuint index, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FNVPROC) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4FVNVPROC) (GLuint index, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SNVPROC) (GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4SVNVPROC) (GLuint index, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBNVPROC) (GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIB4UBVNVPROC) (GLuint index, const GLubyte* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBPOINTERNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride, const void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS1SVNVPROC) (GLuint index, GLsizei n, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS2SVNVPROC) (GLuint index, GLsizei n, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS3SVNVPROC) (GLuint index, GLsizei n, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4DVNVPROC) (GLuint index, GLsizei n, const GLdouble* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4FVNVPROC) (GLuint index, GLsizei n, const GLfloat* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4SVNVPROC) (GLuint index, GLsizei n, const GLshort* v);\r
-typedef void (GLAPIENTRY * PFNGLVERTEXATTRIBS4UBVNVPROC) (GLuint index, GLsizei n, const GLubyte* v);\r
-\r
-#define glAreProgramsResidentNV GLEW_GET_FUN(__glewAreProgramsResidentNV)\r
-#define glBindProgramNV GLEW_GET_FUN(__glewBindProgramNV)\r
-#define glDeleteProgramsNV GLEW_GET_FUN(__glewDeleteProgramsNV)\r
-#define glExecuteProgramNV GLEW_GET_FUN(__glewExecuteProgramNV)\r
-#define glGenProgramsNV GLEW_GET_FUN(__glewGenProgramsNV)\r
-#define glGetProgramParameterdvNV GLEW_GET_FUN(__glewGetProgramParameterdvNV)\r
-#define glGetProgramParameterfvNV GLEW_GET_FUN(__glewGetProgramParameterfvNV)\r
-#define glGetProgramStringNV GLEW_GET_FUN(__glewGetProgramStringNV)\r
-#define glGetProgramivNV GLEW_GET_FUN(__glewGetProgramivNV)\r
-#define glGetTrackMatrixivNV GLEW_GET_FUN(__glewGetTrackMatrixivNV)\r
-#define glGetVertexAttribPointervNV GLEW_GET_FUN(__glewGetVertexAttribPointervNV)\r
-#define glGetVertexAttribdvNV GLEW_GET_FUN(__glewGetVertexAttribdvNV)\r
-#define glGetVertexAttribfvNV GLEW_GET_FUN(__glewGetVertexAttribfvNV)\r
-#define glGetVertexAttribivNV GLEW_GET_FUN(__glewGetVertexAttribivNV)\r
-#define glIsProgramNV GLEW_GET_FUN(__glewIsProgramNV)\r
-#define glLoadProgramNV GLEW_GET_FUN(__glewLoadProgramNV)\r
-#define glProgramParameter4dNV GLEW_GET_FUN(__glewProgramParameter4dNV)\r
-#define glProgramParameter4dvNV GLEW_GET_FUN(__glewProgramParameter4dvNV)\r
-#define glProgramParameter4fNV GLEW_GET_FUN(__glewProgramParameter4fNV)\r
-#define glProgramParameter4fvNV GLEW_GET_FUN(__glewProgramParameter4fvNV)\r
-#define glProgramParameters4dvNV GLEW_GET_FUN(__glewProgramParameters4dvNV)\r
-#define glProgramParameters4fvNV GLEW_GET_FUN(__glewProgramParameters4fvNV)\r
-#define glRequestResidentProgramsNV GLEW_GET_FUN(__glewRequestResidentProgramsNV)\r
-#define glTrackMatrixNV GLEW_GET_FUN(__glewTrackMatrixNV)\r
-#define glVertexAttrib1dNV GLEW_GET_FUN(__glewVertexAttrib1dNV)\r
-#define glVertexAttrib1dvNV GLEW_GET_FUN(__glewVertexAttrib1dvNV)\r
-#define glVertexAttrib1fNV GLEW_GET_FUN(__glewVertexAttrib1fNV)\r
-#define glVertexAttrib1fvNV GLEW_GET_FUN(__glewVertexAttrib1fvNV)\r
-#define glVertexAttrib1sNV GLEW_GET_FUN(__glewVertexAttrib1sNV)\r
-#define glVertexAttrib1svNV GLEW_GET_FUN(__glewVertexAttrib1svNV)\r
-#define glVertexAttrib2dNV GLEW_GET_FUN(__glewVertexAttrib2dNV)\r
-#define glVertexAttrib2dvNV GLEW_GET_FUN(__glewVertexAttrib2dvNV)\r
-#define glVertexAttrib2fNV GLEW_GET_FUN(__glewVertexAttrib2fNV)\r
-#define glVertexAttrib2fvNV GLEW_GET_FUN(__glewVertexAttrib2fvNV)\r
-#define glVertexAttrib2sNV GLEW_GET_FUN(__glewVertexAttrib2sNV)\r
-#define glVertexAttrib2svNV GLEW_GET_FUN(__glewVertexAttrib2svNV)\r
-#define glVertexAttrib3dNV GLEW_GET_FUN(__glewVertexAttrib3dNV)\r
-#define glVertexAttrib3dvNV GLEW_GET_FUN(__glewVertexAttrib3dvNV)\r
-#define glVertexAttrib3fNV GLEW_GET_FUN(__glewVertexAttrib3fNV)\r
-#define glVertexAttrib3fvNV GLEW_GET_FUN(__glewVertexAttrib3fvNV)\r
-#define glVertexAttrib3sNV GLEW_GET_FUN(__glewVertexAttrib3sNV)\r
-#define glVertexAttrib3svNV GLEW_GET_FUN(__glewVertexAttrib3svNV)\r
-#define glVertexAttrib4dNV GLEW_GET_FUN(__glewVertexAttrib4dNV)\r
-#define glVertexAttrib4dvNV GLEW_GET_FUN(__glewVertexAttrib4dvNV)\r
-#define glVertexAttrib4fNV GLEW_GET_FUN(__glewVertexAttrib4fNV)\r
-#define glVertexAttrib4fvNV GLEW_GET_FUN(__glewVertexAttrib4fvNV)\r
-#define glVertexAttrib4sNV GLEW_GET_FUN(__glewVertexAttrib4sNV)\r
-#define glVertexAttrib4svNV GLEW_GET_FUN(__glewVertexAttrib4svNV)\r
-#define glVertexAttrib4ubNV GLEW_GET_FUN(__glewVertexAttrib4ubNV)\r
-#define glVertexAttrib4ubvNV GLEW_GET_FUN(__glewVertexAttrib4ubvNV)\r
-#define glVertexAttribPointerNV GLEW_GET_FUN(__glewVertexAttribPointerNV)\r
-#define glVertexAttribs1dvNV GLEW_GET_FUN(__glewVertexAttribs1dvNV)\r
-#define glVertexAttribs1fvNV GLEW_GET_FUN(__glewVertexAttribs1fvNV)\r
-#define glVertexAttribs1svNV GLEW_GET_FUN(__glewVertexAttribs1svNV)\r
-#define glVertexAttribs2dvNV GLEW_GET_FUN(__glewVertexAttribs2dvNV)\r
-#define glVertexAttribs2fvNV GLEW_GET_FUN(__glewVertexAttribs2fvNV)\r
-#define glVertexAttribs2svNV GLEW_GET_FUN(__glewVertexAttribs2svNV)\r
-#define glVertexAttribs3dvNV GLEW_GET_FUN(__glewVertexAttribs3dvNV)\r
-#define glVertexAttribs3fvNV GLEW_GET_FUN(__glewVertexAttribs3fvNV)\r
-#define glVertexAttribs3svNV GLEW_GET_FUN(__glewVertexAttribs3svNV)\r
-#define glVertexAttribs4dvNV GLEW_GET_FUN(__glewVertexAttribs4dvNV)\r
-#define glVertexAttribs4fvNV GLEW_GET_FUN(__glewVertexAttribs4fvNV)\r
-#define glVertexAttribs4svNV GLEW_GET_FUN(__glewVertexAttribs4svNV)\r
-#define glVertexAttribs4ubvNV GLEW_GET_FUN(__glewVertexAttribs4ubvNV)\r
-\r
-#define GLEW_NV_vertex_program GLEW_GET_VAR(__GLEW_NV_vertex_program)\r
-\r
-#endif /* GL_NV_vertex_program */\r
-\r
-/* ------------------------ GL_NV_vertex_program1_1 ------------------------ */\r
-\r
-#ifndef GL_NV_vertex_program1_1\r
-#define GL_NV_vertex_program1_1 1\r
-\r
-#define GLEW_NV_vertex_program1_1 GLEW_GET_VAR(__GLEW_NV_vertex_program1_1)\r
-\r
-#endif /* GL_NV_vertex_program1_1 */\r
-\r
-/* ------------------------- GL_NV_vertex_program2 ------------------------- */\r
-\r
-#ifndef GL_NV_vertex_program2\r
-#define GL_NV_vertex_program2 1\r
-\r
-#define GLEW_NV_vertex_program2 GLEW_GET_VAR(__GLEW_NV_vertex_program2)\r
-\r
-#endif /* GL_NV_vertex_program2 */\r
-\r
-/* ---------------------- GL_NV_vertex_program2_option --------------------- */\r
-\r
-#ifndef GL_NV_vertex_program2_option\r
-#define GL_NV_vertex_program2_option 1\r
-\r
-#define GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV 0x88F4\r
-#define GL_MAX_PROGRAM_CALL_DEPTH_NV 0x88F5\r
-\r
-#define GLEW_NV_vertex_program2_option GLEW_GET_VAR(__GLEW_NV_vertex_program2_option)\r
-\r
-#endif /* GL_NV_vertex_program2_option */\r
-\r
-/* ------------------------- GL_NV_vertex_program3 ------------------------- */\r
-\r
-#ifndef GL_NV_vertex_program3\r
-#define GL_NV_vertex_program3 1\r
-\r
-#define MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB 0x8B4C\r
-\r
-#define GLEW_NV_vertex_program3 GLEW_GET_VAR(__GLEW_NV_vertex_program3)\r
-\r
-#endif /* GL_NV_vertex_program3 */\r
-\r
-/* ------------------------- GL_NV_vertex_program4 ------------------------- */\r
-\r
-#ifndef GL_NV_vertex_program4\r
-#define GL_NV_vertex_program4 1\r
-\r
-#define GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV 0x88FD\r
-\r
-#define GLEW_NV_vertex_program4 GLEW_GET_VAR(__GLEW_NV_vertex_program4)\r
-\r
-#endif /* GL_NV_vertex_program4 */\r
-\r
-/* -------------------------- GL_NV_video_capture -------------------------- */\r
-\r
-#ifndef GL_NV_video_capture\r
-#define GL_NV_video_capture 1\r
-\r
-#define GL_VIDEO_BUFFER_NV 0x9020\r
-#define GL_VIDEO_BUFFER_BINDING_NV 0x9021\r
-#define GL_FIELD_UPPER_NV 0x9022\r
-#define GL_FIELD_LOWER_NV 0x9023\r
-#define GL_NUM_VIDEO_CAPTURE_STREAMS_NV 0x9024\r
-#define GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV 0x9025\r
-#define GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV 0x9026\r
-#define GL_LAST_VIDEO_CAPTURE_STATUS_NV 0x9027\r
-#define GL_VIDEO_BUFFER_PITCH_NV 0x9028\r
-#define GL_VIDEO_COLOR_CONVERSION_MATRIX_NV 0x9029\r
-#define GL_VIDEO_COLOR_CONVERSION_MAX_NV 0x902A\r
-#define GL_VIDEO_COLOR_CONVERSION_MIN_NV 0x902B\r
-#define GL_VIDEO_COLOR_CONVERSION_OFFSET_NV 0x902C\r
-#define GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV 0x902D\r
-#define GL_PARTIAL_SUCCESS_NV 0x902E\r
-#define GL_SUCCESS_NV 0x902F\r
-#define GL_FAILURE_NV 0x9030\r
-#define GL_YCBYCR8_422_NV 0x9031\r
-#define GL_YCBAYCR8A_4224_NV 0x9032\r
-#define GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV 0x9033\r
-#define GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV 0x9034\r
-#define GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV 0x9035\r
-#define GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV 0x9036\r
-#define GL_Z4Y12Z4CB12Z4CR12_444_NV 0x9037\r
-#define GL_VIDEO_CAPTURE_FRAME_WIDTH_NV 0x9038\r
-#define GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV 0x9039\r
-#define GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV 0x903A\r
-#define GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV 0x903B\r
-#define GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV 0x903C\r
-\r
-typedef void (GLAPIENTRY * PFNGLBEGINVIDEOCAPTURENVPROC) (GLuint video_capture_slot);\r
-typedef void (GLAPIENTRY * PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLintptrARB offset);\r
-typedef void (GLAPIENTRY * PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture);\r
-typedef void (GLAPIENTRY * PFNGLENDVIDEOCAPTURENVPROC) (GLuint video_capture_slot);\r
-typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTURESTREAMDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTURESTREAMFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTURESTREAMIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETVIDEOCAPTUREIVNVPROC) (GLuint video_capture_slot, GLenum pname, GLint* params);\r
-typedef GLenum (GLAPIENTRY * PFNGLVIDEOCAPTURENVPROC) (GLuint video_capture_slot, GLuint* sequence_num, GLuint64EXT *capture_time);\r
-typedef void (GLAPIENTRY * PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLdouble* params);\r
-typedef void (GLAPIENTRY * PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint* params);\r
-\r
-#define glBeginVideoCaptureNV GLEW_GET_FUN(__glewBeginVideoCaptureNV)\r
-#define glBindVideoCaptureStreamBufferNV GLEW_GET_FUN(__glewBindVideoCaptureStreamBufferNV)\r
-#define glBindVideoCaptureStreamTextureNV GLEW_GET_FUN(__glewBindVideoCaptureStreamTextureNV)\r
-#define glEndVideoCaptureNV GLEW_GET_FUN(__glewEndVideoCaptureNV)\r
-#define glGetVideoCaptureStreamdvNV GLEW_GET_FUN(__glewGetVideoCaptureStreamdvNV)\r
-#define glGetVideoCaptureStreamfvNV GLEW_GET_FUN(__glewGetVideoCaptureStreamfvNV)\r
-#define glGetVideoCaptureStreamivNV GLEW_GET_FUN(__glewGetVideoCaptureStreamivNV)\r
-#define glGetVideoCaptureivNV GLEW_GET_FUN(__glewGetVideoCaptureivNV)\r
-#define glVideoCaptureNV GLEW_GET_FUN(__glewVideoCaptureNV)\r
-#define glVideoCaptureStreamParameterdvNV GLEW_GET_FUN(__glewVideoCaptureStreamParameterdvNV)\r
-#define glVideoCaptureStreamParameterfvNV GLEW_GET_FUN(__glewVideoCaptureStreamParameterfvNV)\r
-#define glVideoCaptureStreamParameterivNV GLEW_GET_FUN(__glewVideoCaptureStreamParameterivNV)\r
-\r
-#define GLEW_NV_video_capture GLEW_GET_VAR(__GLEW_NV_video_capture)\r
-\r
-#endif /* GL_NV_video_capture */\r
-\r
-/* ------------------------ GL_OES_byte_coordinates ------------------------ */\r
-\r
-#ifndef GL_OES_byte_coordinates\r
-#define GL_OES_byte_coordinates 1\r
-\r
-#define GL_BYTE 0x1400\r
-\r
-#define GLEW_OES_byte_coordinates GLEW_GET_VAR(__GLEW_OES_byte_coordinates)\r
-\r
-#endif /* GL_OES_byte_coordinates */\r
-\r
-/* ------------------- GL_OES_compressed_paletted_texture ------------------ */\r
-\r
-#ifndef GL_OES_compressed_paletted_texture\r
-#define GL_OES_compressed_paletted_texture 1\r
-\r
-#define GL_PALETTE4_RGB8_OES 0x8B90\r
-#define GL_PALETTE4_RGBA8_OES 0x8B91\r
-#define GL_PALETTE4_R5_G6_B5_OES 0x8B92\r
-#define GL_PALETTE4_RGBA4_OES 0x8B93\r
-#define GL_PALETTE4_RGB5_A1_OES 0x8B94\r
-#define GL_PALETTE8_RGB8_OES 0x8B95\r
-#define GL_PALETTE8_RGBA8_OES 0x8B96\r
-#define GL_PALETTE8_R5_G6_B5_OES 0x8B97\r
-#define GL_PALETTE8_RGBA4_OES 0x8B98\r
-#define GL_PALETTE8_RGB5_A1_OES 0x8B99\r
-\r
-#define GLEW_OES_compressed_paletted_texture GLEW_GET_VAR(__GLEW_OES_compressed_paletted_texture)\r
-\r
-#endif /* GL_OES_compressed_paletted_texture */\r
-\r
-/* --------------------------- GL_OES_read_format -------------------------- */\r
-\r
-#ifndef GL_OES_read_format\r
-#define GL_OES_read_format 1\r
-\r
-#define GL_IMPLEMENTATION_COLOR_READ_TYPE_OES 0x8B9A\r
-#define GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES 0x8B9B\r
-\r
-#define GLEW_OES_read_format GLEW_GET_VAR(__GLEW_OES_read_format)\r
-\r
-#endif /* GL_OES_read_format */\r
-\r
-/* ------------------------ GL_OES_single_precision ------------------------ */\r
-\r
-#ifndef GL_OES_single_precision\r
-#define GL_OES_single_precision 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLCLEARDEPTHFOESPROC) (GLclampd depth);\r
-typedef void (GLAPIENTRY * PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat* equation);\r
-typedef void (GLAPIENTRY * PFNGLDEPTHRANGEFOESPROC) (GLclampf n, GLclampf f);\r
-typedef void (GLAPIENTRY * PFNGLFRUSTUMFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);\r
-typedef void (GLAPIENTRY * PFNGLGETCLIPPLANEFOESPROC) (GLenum plane, GLfloat* equation);\r
-typedef void (GLAPIENTRY * PFNGLORTHOFOESPROC) (GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);\r
-\r
-#define glClearDepthfOES GLEW_GET_FUN(__glewClearDepthfOES)\r
-#define glClipPlanefOES GLEW_GET_FUN(__glewClipPlanefOES)\r
-#define glDepthRangefOES GLEW_GET_FUN(__glewDepthRangefOES)\r
-#define glFrustumfOES GLEW_GET_FUN(__glewFrustumfOES)\r
-#define glGetClipPlanefOES GLEW_GET_FUN(__glewGetClipPlanefOES)\r
-#define glOrthofOES GLEW_GET_FUN(__glewOrthofOES)\r
-\r
-#define GLEW_OES_single_precision GLEW_GET_VAR(__GLEW_OES_single_precision)\r
-\r
-#endif /* GL_OES_single_precision */\r
-\r
-/* ---------------------------- GL_OML_interlace --------------------------- */\r
-\r
-#ifndef GL_OML_interlace\r
-#define GL_OML_interlace 1\r
-\r
-#define GL_INTERLACE_OML 0x8980\r
-#define GL_INTERLACE_READ_OML 0x8981\r
-\r
-#define GLEW_OML_interlace GLEW_GET_VAR(__GLEW_OML_interlace)\r
-\r
-#endif /* GL_OML_interlace */\r
-\r
-/* ---------------------------- GL_OML_resample ---------------------------- */\r
-\r
-#ifndef GL_OML_resample\r
-#define GL_OML_resample 1\r
-\r
-#define GL_PACK_RESAMPLE_OML 0x8984\r
-#define GL_UNPACK_RESAMPLE_OML 0x8985\r
-#define GL_RESAMPLE_REPLICATE_OML 0x8986\r
-#define GL_RESAMPLE_ZERO_FILL_OML 0x8987\r
-#define GL_RESAMPLE_AVERAGE_OML 0x8988\r
-#define GL_RESAMPLE_DECIMATE_OML 0x8989\r
-\r
-#define GLEW_OML_resample GLEW_GET_VAR(__GLEW_OML_resample)\r
-\r
-#endif /* GL_OML_resample */\r
-\r
-/* ---------------------------- GL_OML_subsample --------------------------- */\r
-\r
-#ifndef GL_OML_subsample\r
-#define GL_OML_subsample 1\r
-\r
-#define GL_FORMAT_SUBSAMPLE_24_24_OML 0x8982\r
-#define GL_FORMAT_SUBSAMPLE_244_244_OML 0x8983\r
-\r
-#define GLEW_OML_subsample GLEW_GET_VAR(__GLEW_OML_subsample)\r
-\r
-#endif /* GL_OML_subsample */\r
-\r
-/* --------------------------- GL_PGI_misc_hints --------------------------- */\r
-\r
-#ifndef GL_PGI_misc_hints\r
-#define GL_PGI_misc_hints 1\r
-\r
-#define GL_PREFER_DOUBLEBUFFER_HINT_PGI 107000\r
-#define GL_CONSERVE_MEMORY_HINT_PGI 107005\r
-#define GL_RECLAIM_MEMORY_HINT_PGI 107006\r
-#define GL_NATIVE_GRAPHICS_HANDLE_PGI 107010\r
-#define GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI 107011\r
-#define GL_NATIVE_GRAPHICS_END_HINT_PGI 107012\r
-#define GL_ALWAYS_FAST_HINT_PGI 107020\r
-#define GL_ALWAYS_SOFT_HINT_PGI 107021\r
-#define GL_ALLOW_DRAW_OBJ_HINT_PGI 107022\r
-#define GL_ALLOW_DRAW_WIN_HINT_PGI 107023\r
-#define GL_ALLOW_DRAW_FRG_HINT_PGI 107024\r
-#define GL_ALLOW_DRAW_MEM_HINT_PGI 107025\r
-#define GL_STRICT_DEPTHFUNC_HINT_PGI 107030\r
-#define GL_STRICT_LIGHTING_HINT_PGI 107031\r
-#define GL_STRICT_SCISSOR_HINT_PGI 107032\r
-#define GL_FULL_STIPPLE_HINT_PGI 107033\r
-#define GL_CLIP_NEAR_HINT_PGI 107040\r
-#define GL_CLIP_FAR_HINT_PGI 107041\r
-#define GL_WIDE_LINE_HINT_PGI 107042\r
-#define GL_BACK_NORMALS_HINT_PGI 107043\r
-\r
-#define GLEW_PGI_misc_hints GLEW_GET_VAR(__GLEW_PGI_misc_hints)\r
-\r
-#endif /* GL_PGI_misc_hints */\r
-\r
-/* -------------------------- GL_PGI_vertex_hints -------------------------- */\r
-\r
-#ifndef GL_PGI_vertex_hints\r
-#define GL_PGI_vertex_hints 1\r
-\r
-#define GL_VERTEX23_BIT_PGI 0x00000004\r
-#define GL_VERTEX4_BIT_PGI 0x00000008\r
-#define GL_COLOR3_BIT_PGI 0x00010000\r
-#define GL_COLOR4_BIT_PGI 0x00020000\r
-#define GL_EDGEFLAG_BIT_PGI 0x00040000\r
-#define GL_INDEX_BIT_PGI 0x00080000\r
-#define GL_MAT_AMBIENT_BIT_PGI 0x00100000\r
-#define GL_VERTEX_DATA_HINT_PGI 107050\r
-#define GL_VERTEX_CONSISTENT_HINT_PGI 107051\r
-#define GL_MATERIAL_SIDE_HINT_PGI 107052\r
-#define GL_MAX_VERTEX_HINT_PGI 107053\r
-#define GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI 0x00200000\r
-#define GL_MAT_DIFFUSE_BIT_PGI 0x00400000\r
-#define GL_MAT_EMISSION_BIT_PGI 0x00800000\r
-#define GL_MAT_COLOR_INDEXES_BIT_PGI 0x01000000\r
-#define GL_MAT_SHININESS_BIT_PGI 0x02000000\r
-#define GL_MAT_SPECULAR_BIT_PGI 0x04000000\r
-#define GL_NORMAL_BIT_PGI 0x08000000\r
-#define GL_TEXCOORD1_BIT_PGI 0x10000000\r
-#define GL_TEXCOORD2_BIT_PGI 0x20000000\r
-#define GL_TEXCOORD3_BIT_PGI 0x40000000\r
-#define GL_TEXCOORD4_BIT_PGI 0x80000000\r
-\r
-#define GLEW_PGI_vertex_hints GLEW_GET_VAR(__GLEW_PGI_vertex_hints)\r
-\r
-#endif /* GL_PGI_vertex_hints */\r
-\r
-/* ----------------------- GL_REND_screen_coordinates ---------------------- */\r
-\r
-#ifndef GL_REND_screen_coordinates\r
-#define GL_REND_screen_coordinates 1\r
-\r
-#define GL_SCREEN_COORDINATES_REND 0x8490\r
-#define GL_INVERTED_SCREEN_W_REND 0x8491\r
-\r
-#define GLEW_REND_screen_coordinates GLEW_GET_VAR(__GLEW_REND_screen_coordinates)\r
-\r
-#endif /* GL_REND_screen_coordinates */\r
-\r
-/* ------------------------------- GL_S3_s3tc ------------------------------ */\r
-\r
-#ifndef GL_S3_s3tc\r
-#define GL_S3_s3tc 1\r
-\r
-#define GL_RGB_S3TC 0x83A0\r
-#define GL_RGB4_S3TC 0x83A1\r
-#define GL_RGBA_S3TC 0x83A2\r
-#define GL_RGBA4_S3TC 0x83A3\r
-#define GL_RGBA_DXT5_S3TC 0x83A4\r
-#define GL_RGBA4_DXT5_S3TC 0x83A5\r
-\r
-#define GLEW_S3_s3tc GLEW_GET_VAR(__GLEW_S3_s3tc)\r
-\r
-#endif /* GL_S3_s3tc */\r
-\r
-/* -------------------------- GL_SGIS_color_range -------------------------- */\r
-\r
-#ifndef GL_SGIS_color_range\r
-#define GL_SGIS_color_range 1\r
-\r
-#define GL_EXTENDED_RANGE_SGIS 0x85A5\r
-#define GL_MIN_RED_SGIS 0x85A6\r
-#define GL_MAX_RED_SGIS 0x85A7\r
-#define GL_MIN_GREEN_SGIS 0x85A8\r
-#define GL_MAX_GREEN_SGIS 0x85A9\r
-#define GL_MIN_BLUE_SGIS 0x85AA\r
-#define GL_MAX_BLUE_SGIS 0x85AB\r
-#define GL_MIN_ALPHA_SGIS 0x85AC\r
-#define GL_MAX_ALPHA_SGIS 0x85AD\r
-\r
-#define GLEW_SGIS_color_range GLEW_GET_VAR(__GLEW_SGIS_color_range)\r
-\r
-#endif /* GL_SGIS_color_range */\r
-\r
-/* ------------------------- GL_SGIS_detail_texture ------------------------ */\r
-\r
-#ifndef GL_SGIS_detail_texture\r
-#define GL_SGIS_detail_texture 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLDETAILTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat* points);\r
-typedef void (GLAPIENTRY * PFNGLGETDETAILTEXFUNCSGISPROC) (GLenum target, GLfloat* points);\r
-\r
-#define glDetailTexFuncSGIS GLEW_GET_FUN(__glewDetailTexFuncSGIS)\r
-#define glGetDetailTexFuncSGIS GLEW_GET_FUN(__glewGetDetailTexFuncSGIS)\r
-\r
-#define GLEW_SGIS_detail_texture GLEW_GET_VAR(__GLEW_SGIS_detail_texture)\r
-\r
-#endif /* GL_SGIS_detail_texture */\r
-\r
-/* -------------------------- GL_SGIS_fog_function ------------------------- */\r
-\r
-#ifndef GL_SGIS_fog_function\r
-#define GL_SGIS_fog_function 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLFOGFUNCSGISPROC) (GLsizei n, const GLfloat* points);\r
-typedef void (GLAPIENTRY * PFNGLGETFOGFUNCSGISPROC) (GLfloat* points);\r
-\r
-#define glFogFuncSGIS GLEW_GET_FUN(__glewFogFuncSGIS)\r
-#define glGetFogFuncSGIS GLEW_GET_FUN(__glewGetFogFuncSGIS)\r
-\r
-#define GLEW_SGIS_fog_function GLEW_GET_VAR(__GLEW_SGIS_fog_function)\r
-\r
-#endif /* GL_SGIS_fog_function */\r
-\r
-/* ------------------------ GL_SGIS_generate_mipmap ------------------------ */\r
-\r
-#ifndef GL_SGIS_generate_mipmap\r
-#define GL_SGIS_generate_mipmap 1\r
-\r
-#define GL_GENERATE_MIPMAP_SGIS 0x8191\r
-#define GL_GENERATE_MIPMAP_HINT_SGIS 0x8192\r
-\r
-#define GLEW_SGIS_generate_mipmap GLEW_GET_VAR(__GLEW_SGIS_generate_mipmap)\r
-\r
-#endif /* GL_SGIS_generate_mipmap */\r
-\r
-/* -------------------------- GL_SGIS_multisample -------------------------- */\r
-\r
-#ifndef GL_SGIS_multisample\r
-#define GL_SGIS_multisample 1\r
-\r
-#define GL_MULTISAMPLE_SGIS 0x809D\r
-#define GL_SAMPLE_ALPHA_TO_MASK_SGIS 0x809E\r
-#define GL_SAMPLE_ALPHA_TO_ONE_SGIS 0x809F\r
-#define GL_SAMPLE_MASK_SGIS 0x80A0\r
-#define GL_1PASS_SGIS 0x80A1\r
-#define GL_2PASS_0_SGIS 0x80A2\r
-#define GL_2PASS_1_SGIS 0x80A3\r
-#define GL_4PASS_0_SGIS 0x80A4\r
-#define GL_4PASS_1_SGIS 0x80A5\r
-#define GL_4PASS_2_SGIS 0x80A6\r
-#define GL_4PASS_3_SGIS 0x80A7\r
-#define GL_SAMPLE_BUFFERS_SGIS 0x80A8\r
-#define GL_SAMPLES_SGIS 0x80A9\r
-#define GL_SAMPLE_MASK_VALUE_SGIS 0x80AA\r
-#define GL_SAMPLE_MASK_INVERT_SGIS 0x80AB\r
-#define GL_SAMPLE_PATTERN_SGIS 0x80AC\r
-#define GL_MULTISAMPLE_BIT_EXT 0x20000000\r
-\r
-typedef void (GLAPIENTRY * PFNGLSAMPLEMASKSGISPROC) (GLclampf value, GLboolean invert);\r
-typedef void (GLAPIENTRY * PFNGLSAMPLEPATTERNSGISPROC) (GLenum pattern);\r
-\r
-#define glSampleMaskSGIS GLEW_GET_FUN(__glewSampleMaskSGIS)\r
-#define glSamplePatternSGIS GLEW_GET_FUN(__glewSamplePatternSGIS)\r
-\r
-#define GLEW_SGIS_multisample GLEW_GET_VAR(__GLEW_SGIS_multisample)\r
-\r
-#endif /* GL_SGIS_multisample */\r
-\r
-/* ------------------------- GL_SGIS_pixel_texture ------------------------- */\r
-\r
-#ifndef GL_SGIS_pixel_texture\r
-#define GL_SGIS_pixel_texture 1\r
-\r
-#define GLEW_SGIS_pixel_texture GLEW_GET_VAR(__GLEW_SGIS_pixel_texture)\r
-\r
-#endif /* GL_SGIS_pixel_texture */\r
-\r
-/* ----------------------- GL_SGIS_point_line_texgen ----------------------- */\r
-\r
-#ifndef GL_SGIS_point_line_texgen\r
-#define GL_SGIS_point_line_texgen 1\r
-\r
-#define GL_EYE_DISTANCE_TO_POINT_SGIS 0x81F0\r
-#define GL_OBJECT_DISTANCE_TO_POINT_SGIS 0x81F1\r
-#define GL_EYE_DISTANCE_TO_LINE_SGIS 0x81F2\r
-#define GL_OBJECT_DISTANCE_TO_LINE_SGIS 0x81F3\r
-#define GL_EYE_POINT_SGIS 0x81F4\r
-#define GL_OBJECT_POINT_SGIS 0x81F5\r
-#define GL_EYE_LINE_SGIS 0x81F6\r
-#define GL_OBJECT_LINE_SGIS 0x81F7\r
-\r
-#define GLEW_SGIS_point_line_texgen GLEW_GET_VAR(__GLEW_SGIS_point_line_texgen)\r
-\r
-#endif /* GL_SGIS_point_line_texgen */\r
-\r
-/* ------------------------ GL_SGIS_sharpen_texture ------------------------ */\r
-\r
-#ifndef GL_SGIS_sharpen_texture\r
-#define GL_SGIS_sharpen_texture 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETSHARPENTEXFUNCSGISPROC) (GLenum target, GLfloat* points);\r
-typedef void (GLAPIENTRY * PFNGLSHARPENTEXFUNCSGISPROC) (GLenum target, GLsizei n, const GLfloat* points);\r
-\r
-#define glGetSharpenTexFuncSGIS GLEW_GET_FUN(__glewGetSharpenTexFuncSGIS)\r
-#define glSharpenTexFuncSGIS GLEW_GET_FUN(__glewSharpenTexFuncSGIS)\r
-\r
-#define GLEW_SGIS_sharpen_texture GLEW_GET_VAR(__GLEW_SGIS_sharpen_texture)\r
-\r
-#endif /* GL_SGIS_sharpen_texture */\r
-\r
-/* --------------------------- GL_SGIS_texture4D --------------------------- */\r
-\r
-#ifndef GL_SGIS_texture4D\r
-#define GL_SGIS_texture4D 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXIMAGE4DSGISPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLint border, GLenum format, GLenum type, const void* pixels);\r
-typedef void (GLAPIENTRY * PFNGLTEXSUBIMAGE4DSGISPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint woffset, GLsizei width, GLsizei height, GLsizei depth, GLsizei extent, GLenum format, GLenum type, const void* pixels);\r
-\r
-#define glTexImage4DSGIS GLEW_GET_FUN(__glewTexImage4DSGIS)\r
-#define glTexSubImage4DSGIS GLEW_GET_FUN(__glewTexSubImage4DSGIS)\r
-\r
-#define GLEW_SGIS_texture4D GLEW_GET_VAR(__GLEW_SGIS_texture4D)\r
-\r
-#endif /* GL_SGIS_texture4D */\r
-\r
-/* ---------------------- GL_SGIS_texture_border_clamp --------------------- */\r
-\r
-#ifndef GL_SGIS_texture_border_clamp\r
-#define GL_SGIS_texture_border_clamp 1\r
-\r
-#define GL_CLAMP_TO_BORDER_SGIS 0x812D\r
-\r
-#define GLEW_SGIS_texture_border_clamp GLEW_GET_VAR(__GLEW_SGIS_texture_border_clamp)\r
-\r
-#endif /* GL_SGIS_texture_border_clamp */\r
-\r
-/* ----------------------- GL_SGIS_texture_edge_clamp ---------------------- */\r
-\r
-#ifndef GL_SGIS_texture_edge_clamp\r
-#define GL_SGIS_texture_edge_clamp 1\r
-\r
-#define GL_CLAMP_TO_EDGE_SGIS 0x812F\r
-\r
-#define GLEW_SGIS_texture_edge_clamp GLEW_GET_VAR(__GLEW_SGIS_texture_edge_clamp)\r
-\r
-#endif /* GL_SGIS_texture_edge_clamp */\r
-\r
-/* ------------------------ GL_SGIS_texture_filter4 ------------------------ */\r
-\r
-#ifndef GL_SGIS_texture_filter4\r
-#define GL_SGIS_texture_filter4 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLGETTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLfloat* weights);\r
-typedef void (GLAPIENTRY * PFNGLTEXFILTERFUNCSGISPROC) (GLenum target, GLenum filter, GLsizei n, const GLfloat* weights);\r
-\r
-#define glGetTexFilterFuncSGIS GLEW_GET_FUN(__glewGetTexFilterFuncSGIS)\r
-#define glTexFilterFuncSGIS GLEW_GET_FUN(__glewTexFilterFuncSGIS)\r
-\r
-#define GLEW_SGIS_texture_filter4 GLEW_GET_VAR(__GLEW_SGIS_texture_filter4)\r
-\r
-#endif /* GL_SGIS_texture_filter4 */\r
-\r
-/* -------------------------- GL_SGIS_texture_lod -------------------------- */\r
-\r
-#ifndef GL_SGIS_texture_lod\r
-#define GL_SGIS_texture_lod 1\r
-\r
-#define GL_TEXTURE_MIN_LOD_SGIS 0x813A\r
-#define GL_TEXTURE_MAX_LOD_SGIS 0x813B\r
-#define GL_TEXTURE_BASE_LEVEL_SGIS 0x813C\r
-#define GL_TEXTURE_MAX_LEVEL_SGIS 0x813D\r
-\r
-#define GLEW_SGIS_texture_lod GLEW_GET_VAR(__GLEW_SGIS_texture_lod)\r
-\r
-#endif /* GL_SGIS_texture_lod */\r
-\r
-/* ------------------------- GL_SGIS_texture_select ------------------------ */\r
-\r
-#ifndef GL_SGIS_texture_select\r
-#define GL_SGIS_texture_select 1\r
-\r
-#define GLEW_SGIS_texture_select GLEW_GET_VAR(__GLEW_SGIS_texture_select)\r
-\r
-#endif /* GL_SGIS_texture_select */\r
-\r
-/* ----------------------------- GL_SGIX_async ----------------------------- */\r
-\r
-#ifndef GL_SGIX_async\r
-#define GL_SGIX_async 1\r
-\r
-#define GL_ASYNC_MARKER_SGIX 0x8329\r
-\r
-typedef void (GLAPIENTRY * PFNGLASYNCMARKERSGIXPROC) (GLuint marker);\r
-typedef void (GLAPIENTRY * PFNGLDELETEASYNCMARKERSSGIXPROC) (GLuint marker, GLsizei range);\r
-typedef GLint (GLAPIENTRY * PFNGLFINISHASYNCSGIXPROC) (GLuint* markerp);\r
-typedef GLuint (GLAPIENTRY * PFNGLGENASYNCMARKERSSGIXPROC) (GLsizei range);\r
-typedef GLboolean (GLAPIENTRY * PFNGLISASYNCMARKERSGIXPROC) (GLuint marker);\r
-typedef GLint (GLAPIENTRY * PFNGLPOLLASYNCSGIXPROC) (GLuint* markerp);\r
-\r
-#define glAsyncMarkerSGIX GLEW_GET_FUN(__glewAsyncMarkerSGIX)\r
-#define glDeleteAsyncMarkersSGIX GLEW_GET_FUN(__glewDeleteAsyncMarkersSGIX)\r
-#define glFinishAsyncSGIX GLEW_GET_FUN(__glewFinishAsyncSGIX)\r
-#define glGenAsyncMarkersSGIX GLEW_GET_FUN(__glewGenAsyncMarkersSGIX)\r
-#define glIsAsyncMarkerSGIX GLEW_GET_FUN(__glewIsAsyncMarkerSGIX)\r
-#define glPollAsyncSGIX GLEW_GET_FUN(__glewPollAsyncSGIX)\r
-\r
-#define GLEW_SGIX_async GLEW_GET_VAR(__GLEW_SGIX_async)\r
-\r
-#endif /* GL_SGIX_async */\r
-\r
-/* ------------------------ GL_SGIX_async_histogram ------------------------ */\r
-\r
-#ifndef GL_SGIX_async_histogram\r
-#define GL_SGIX_async_histogram 1\r
-\r
-#define GL_ASYNC_HISTOGRAM_SGIX 0x832C\r
-#define GL_MAX_ASYNC_HISTOGRAM_SGIX 0x832D\r
-\r
-#define GLEW_SGIX_async_histogram GLEW_GET_VAR(__GLEW_SGIX_async_histogram)\r
-\r
-#endif /* GL_SGIX_async_histogram */\r
-\r
-/* -------------------------- GL_SGIX_async_pixel -------------------------- */\r
-\r
-#ifndef GL_SGIX_async_pixel\r
-#define GL_SGIX_async_pixel 1\r
-\r
-#define GL_ASYNC_TEX_IMAGE_SGIX 0x835C\r
-#define GL_ASYNC_DRAW_PIXELS_SGIX 0x835D\r
-#define GL_ASYNC_READ_PIXELS_SGIX 0x835E\r
-#define GL_MAX_ASYNC_TEX_IMAGE_SGIX 0x835F\r
-#define GL_MAX_ASYNC_DRAW_PIXELS_SGIX 0x8360\r
-#define GL_MAX_ASYNC_READ_PIXELS_SGIX 0x8361\r
-\r
-#define GLEW_SGIX_async_pixel GLEW_GET_VAR(__GLEW_SGIX_async_pixel)\r
-\r
-#endif /* GL_SGIX_async_pixel */\r
-\r
-/* ----------------------- GL_SGIX_blend_alpha_minmax ---------------------- */\r
-\r
-#ifndef GL_SGIX_blend_alpha_minmax\r
-#define GL_SGIX_blend_alpha_minmax 1\r
-\r
-#define GL_ALPHA_MIN_SGIX 0x8320\r
-#define GL_ALPHA_MAX_SGIX 0x8321\r
-\r
-#define GLEW_SGIX_blend_alpha_minmax GLEW_GET_VAR(__GLEW_SGIX_blend_alpha_minmax)\r
-\r
-#endif /* GL_SGIX_blend_alpha_minmax */\r
-\r
-/* ---------------------------- GL_SGIX_clipmap ---------------------------- */\r
-\r
-#ifndef GL_SGIX_clipmap\r
-#define GL_SGIX_clipmap 1\r
-\r
-#define GLEW_SGIX_clipmap GLEW_GET_VAR(__GLEW_SGIX_clipmap)\r
-\r
-#endif /* GL_SGIX_clipmap */\r
-\r
-/* ---------------------- GL_SGIX_convolution_accuracy --------------------- */\r
-\r
-#ifndef GL_SGIX_convolution_accuracy\r
-#define GL_SGIX_convolution_accuracy 1\r
-\r
-#define GL_CONVOLUTION_HINT_SGIX 0x8316\r
-\r
-#define GLEW_SGIX_convolution_accuracy GLEW_GET_VAR(__GLEW_SGIX_convolution_accuracy)\r
-\r
-#endif /* GL_SGIX_convolution_accuracy */\r
-\r
-/* ------------------------- GL_SGIX_depth_texture ------------------------- */\r
-\r
-#ifndef GL_SGIX_depth_texture\r
-#define GL_SGIX_depth_texture 1\r
-\r
-#define GL_DEPTH_COMPONENT16_SGIX 0x81A5\r
-#define GL_DEPTH_COMPONENT24_SGIX 0x81A6\r
-#define GL_DEPTH_COMPONENT32_SGIX 0x81A7\r
-\r
-#define GLEW_SGIX_depth_texture GLEW_GET_VAR(__GLEW_SGIX_depth_texture)\r
-\r
-#endif /* GL_SGIX_depth_texture */\r
-\r
-/* -------------------------- GL_SGIX_flush_raster ------------------------- */\r
-\r
-#ifndef GL_SGIX_flush_raster\r
-#define GL_SGIX_flush_raster 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLFLUSHRASTERSGIXPROC) (void);\r
-\r
-#define glFlushRasterSGIX GLEW_GET_FUN(__glewFlushRasterSGIX)\r
-\r
-#define GLEW_SGIX_flush_raster GLEW_GET_VAR(__GLEW_SGIX_flush_raster)\r
-\r
-#endif /* GL_SGIX_flush_raster */\r
-\r
-/* --------------------------- GL_SGIX_fog_offset -------------------------- */\r
-\r
-#ifndef GL_SGIX_fog_offset\r
-#define GL_SGIX_fog_offset 1\r
-\r
-#define GL_FOG_OFFSET_SGIX 0x8198\r
-#define GL_FOG_OFFSET_VALUE_SGIX 0x8199\r
-\r
-#define GLEW_SGIX_fog_offset GLEW_GET_VAR(__GLEW_SGIX_fog_offset)\r
-\r
-#endif /* GL_SGIX_fog_offset */\r
-\r
-/* -------------------------- GL_SGIX_fog_texture -------------------------- */\r
-\r
-#ifndef GL_SGIX_fog_texture\r
-#define GL_SGIX_fog_texture 1\r
-\r
-#define GL_TEXTURE_FOG_SGIX 0\r
-#define GL_FOG_PATCHY_FACTOR_SGIX 0\r
-#define GL_FRAGMENT_FOG_SGIX 0\r
-\r
-typedef void (GLAPIENTRY * PFNGLTEXTUREFOGSGIXPROC) (GLenum pname);\r
-\r
-#define glTextureFogSGIX GLEW_GET_FUN(__glewTextureFogSGIX)\r
-\r
-#define GLEW_SGIX_fog_texture GLEW_GET_VAR(__GLEW_SGIX_fog_texture)\r
-\r
-#endif /* GL_SGIX_fog_texture */\r
-\r
-/* ------------------- GL_SGIX_fragment_specular_lighting ------------------ */\r
-\r
-#ifndef GL_SGIX_fragment_specular_lighting\r
-#define GL_SGIX_fragment_specular_lighting 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTCOLORMATERIALSGIXPROC) (GLenum face, GLenum mode);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFSGIXPROC) (GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELFVSGIXPROC) (GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELISGIXPROC) (GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTMODELIVSGIXPROC) (GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFSGIXPROC) (GLenum light, GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTISGIXPROC) (GLenum light, GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFSGIXPROC) (GLenum face, GLenum pname, const GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALISGIXPROC) (GLenum face, GLenum pname, const GLint param);\r
-typedef void (GLAPIENTRY * PFNGLFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTFVSGIXPROC) (GLenum light, GLenum value, GLfloat* data);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTLIGHTIVSGIXPROC) (GLenum light, GLenum value, GLint* data);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALFVSGIXPROC) (GLenum face, GLenum pname, const GLfloat* data);\r
-typedef void (GLAPIENTRY * PFNGLGETFRAGMENTMATERIALIVSGIXPROC) (GLenum face, GLenum pname, const GLint* data);\r
-\r
-#define glFragmentColorMaterialSGIX GLEW_GET_FUN(__glewFragmentColorMaterialSGIX)\r
-#define glFragmentLightModelfSGIX GLEW_GET_FUN(__glewFragmentLightModelfSGIX)\r
-#define glFragmentLightModelfvSGIX GLEW_GET_FUN(__glewFragmentLightModelfvSGIX)\r
-#define glFragmentLightModeliSGIX GLEW_GET_FUN(__glewFragmentLightModeliSGIX)\r
-#define glFragmentLightModelivSGIX GLEW_GET_FUN(__glewFragmentLightModelivSGIX)\r
-#define glFragmentLightfSGIX GLEW_GET_FUN(__glewFragmentLightfSGIX)\r
-#define glFragmentLightfvSGIX GLEW_GET_FUN(__glewFragmentLightfvSGIX)\r
-#define glFragmentLightiSGIX GLEW_GET_FUN(__glewFragmentLightiSGIX)\r
-#define glFragmentLightivSGIX GLEW_GET_FUN(__glewFragmentLightivSGIX)\r
-#define glFragmentMaterialfSGIX GLEW_GET_FUN(__glewFragmentMaterialfSGIX)\r
-#define glFragmentMaterialfvSGIX GLEW_GET_FUN(__glewFragmentMaterialfvSGIX)\r
-#define glFragmentMaterialiSGIX GLEW_GET_FUN(__glewFragmentMaterialiSGIX)\r
-#define glFragmentMaterialivSGIX GLEW_GET_FUN(__glewFragmentMaterialivSGIX)\r
-#define glGetFragmentLightfvSGIX GLEW_GET_FUN(__glewGetFragmentLightfvSGIX)\r
-#define glGetFragmentLightivSGIX GLEW_GET_FUN(__glewGetFragmentLightivSGIX)\r
-#define glGetFragmentMaterialfvSGIX GLEW_GET_FUN(__glewGetFragmentMaterialfvSGIX)\r
-#define glGetFragmentMaterialivSGIX GLEW_GET_FUN(__glewGetFragmentMaterialivSGIX)\r
-\r
-#define GLEW_SGIX_fragment_specular_lighting GLEW_GET_VAR(__GLEW_SGIX_fragment_specular_lighting)\r
-\r
-#endif /* GL_SGIX_fragment_specular_lighting */\r
-\r
-/* --------------------------- GL_SGIX_framezoom --------------------------- */\r
-\r
-#ifndef GL_SGIX_framezoom\r
-#define GL_SGIX_framezoom 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLFRAMEZOOMSGIXPROC) (GLint factor);\r
-\r
-#define glFrameZoomSGIX GLEW_GET_FUN(__glewFrameZoomSGIX)\r
-\r
-#define GLEW_SGIX_framezoom GLEW_GET_VAR(__GLEW_SGIX_framezoom)\r
-\r
-#endif /* GL_SGIX_framezoom */\r
-\r
-/* --------------------------- GL_SGIX_interlace --------------------------- */\r
-\r
-#ifndef GL_SGIX_interlace\r
-#define GL_SGIX_interlace 1\r
-\r
-#define GL_INTERLACE_SGIX 0x8094\r
-\r
-#define GLEW_SGIX_interlace GLEW_GET_VAR(__GLEW_SGIX_interlace)\r
-\r
-#endif /* GL_SGIX_interlace */\r
-\r
-/* ------------------------- GL_SGIX_ir_instrument1 ------------------------ */\r
-\r
-#ifndef GL_SGIX_ir_instrument1\r
-#define GL_SGIX_ir_instrument1 1\r
-\r
-#define GLEW_SGIX_ir_instrument1 GLEW_GET_VAR(__GLEW_SGIX_ir_instrument1)\r
-\r
-#endif /* GL_SGIX_ir_instrument1 */\r
-\r
-/* ------------------------- GL_SGIX_list_priority ------------------------- */\r
-\r
-#ifndef GL_SGIX_list_priority\r
-#define GL_SGIX_list_priority 1\r
-\r
-#define GLEW_SGIX_list_priority GLEW_GET_VAR(__GLEW_SGIX_list_priority)\r
-\r
-#endif /* GL_SGIX_list_priority */\r
-\r
-/* ------------------------- GL_SGIX_pixel_texture ------------------------- */\r
-\r
-#ifndef GL_SGIX_pixel_texture\r
-#define GL_SGIX_pixel_texture 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLPIXELTEXGENSGIXPROC) (GLenum mode);\r
-\r
-#define glPixelTexGenSGIX GLEW_GET_FUN(__glewPixelTexGenSGIX)\r
-\r
-#define GLEW_SGIX_pixel_texture GLEW_GET_VAR(__GLEW_SGIX_pixel_texture)\r
-\r
-#endif /* GL_SGIX_pixel_texture */\r
-\r
-/* ----------------------- GL_SGIX_pixel_texture_bits ---------------------- */\r
-\r
-#ifndef GL_SGIX_pixel_texture_bits\r
-#define GL_SGIX_pixel_texture_bits 1\r
-\r
-#define GLEW_SGIX_pixel_texture_bits GLEW_GET_VAR(__GLEW_SGIX_pixel_texture_bits)\r
-\r
-#endif /* GL_SGIX_pixel_texture_bits */\r
-\r
-/* ------------------------ GL_SGIX_reference_plane ------------------------ */\r
-\r
-#ifndef GL_SGIX_reference_plane\r
-#define GL_SGIX_reference_plane 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLREFERENCEPLANESGIXPROC) (const GLdouble* equation);\r
-\r
-#define glReferencePlaneSGIX GLEW_GET_FUN(__glewReferencePlaneSGIX)\r
-\r
-#define GLEW_SGIX_reference_plane GLEW_GET_VAR(__GLEW_SGIX_reference_plane)\r
-\r
-#endif /* GL_SGIX_reference_plane */\r
-\r
-/* ---------------------------- GL_SGIX_resample --------------------------- */\r
-\r
-#ifndef GL_SGIX_resample\r
-#define GL_SGIX_resample 1\r
-\r
-#define GL_PACK_RESAMPLE_SGIX 0x842E\r
-#define GL_UNPACK_RESAMPLE_SGIX 0x842F\r
-#define GL_RESAMPLE_DECIMATE_SGIX 0x8430\r
-#define GL_RESAMPLE_REPLICATE_SGIX 0x8433\r
-#define GL_RESAMPLE_ZERO_FILL_SGIX 0x8434\r
-\r
-#define GLEW_SGIX_resample GLEW_GET_VAR(__GLEW_SGIX_resample)\r
-\r
-#endif /* GL_SGIX_resample */\r
-\r
-/* ----------------------------- GL_SGIX_shadow ---------------------------- */\r
-\r
-#ifndef GL_SGIX_shadow\r
-#define GL_SGIX_shadow 1\r
-\r
-#define GL_TEXTURE_COMPARE_SGIX 0x819A\r
-#define GL_TEXTURE_COMPARE_OPERATOR_SGIX 0x819B\r
-#define GL_TEXTURE_LEQUAL_R_SGIX 0x819C\r
-#define GL_TEXTURE_GEQUAL_R_SGIX 0x819D\r
-\r
-#define GLEW_SGIX_shadow GLEW_GET_VAR(__GLEW_SGIX_shadow)\r
-\r
-#endif /* GL_SGIX_shadow */\r
-\r
-/* ------------------------- GL_SGIX_shadow_ambient ------------------------ */\r
-\r
-#ifndef GL_SGIX_shadow_ambient\r
-#define GL_SGIX_shadow_ambient 1\r
-\r
-#define GL_SHADOW_AMBIENT_SGIX 0x80BF\r
-\r
-#define GLEW_SGIX_shadow_ambient GLEW_GET_VAR(__GLEW_SGIX_shadow_ambient)\r
-\r
-#endif /* GL_SGIX_shadow_ambient */\r
-\r
-/* ----------------------------- GL_SGIX_sprite ---------------------------- */\r
-\r
-#ifndef GL_SGIX_sprite\r
-#define GL_SGIX_sprite 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERFSGIXPROC) (GLenum pname, GLfloat param);\r
-typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERFVSGIXPROC) (GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERISGIXPROC) (GLenum pname, GLint param);\r
-typedef void (GLAPIENTRY * PFNGLSPRITEPARAMETERIVSGIXPROC) (GLenum pname, GLint* params);\r
-\r
-#define glSpriteParameterfSGIX GLEW_GET_FUN(__glewSpriteParameterfSGIX)\r
-#define glSpriteParameterfvSGIX GLEW_GET_FUN(__glewSpriteParameterfvSGIX)\r
-#define glSpriteParameteriSGIX GLEW_GET_FUN(__glewSpriteParameteriSGIX)\r
-#define glSpriteParameterivSGIX GLEW_GET_FUN(__glewSpriteParameterivSGIX)\r
-\r
-#define GLEW_SGIX_sprite GLEW_GET_VAR(__GLEW_SGIX_sprite)\r
-\r
-#endif /* GL_SGIX_sprite */\r
-\r
-/* ----------------------- GL_SGIX_tag_sample_buffer ----------------------- */\r
-\r
-#ifndef GL_SGIX_tag_sample_buffer\r
-#define GL_SGIX_tag_sample_buffer 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLTAGSAMPLEBUFFERSGIXPROC) (void);\r
-\r
-#define glTagSampleBufferSGIX GLEW_GET_FUN(__glewTagSampleBufferSGIX)\r
-\r
-#define GLEW_SGIX_tag_sample_buffer GLEW_GET_VAR(__GLEW_SGIX_tag_sample_buffer)\r
-\r
-#endif /* GL_SGIX_tag_sample_buffer */\r
-\r
-/* ------------------------ GL_SGIX_texture_add_env ------------------------ */\r
-\r
-#ifndef GL_SGIX_texture_add_env\r
-#define GL_SGIX_texture_add_env 1\r
-\r
-#define GLEW_SGIX_texture_add_env GLEW_GET_VAR(__GLEW_SGIX_texture_add_env)\r
-\r
-#endif /* GL_SGIX_texture_add_env */\r
-\r
-/* -------------------- GL_SGIX_texture_coordinate_clamp ------------------- */\r
-\r
-#ifndef GL_SGIX_texture_coordinate_clamp\r
-#define GL_SGIX_texture_coordinate_clamp 1\r
-\r
-#define GL_TEXTURE_MAX_CLAMP_S_SGIX 0x8369\r
-#define GL_TEXTURE_MAX_CLAMP_T_SGIX 0x836A\r
-#define GL_TEXTURE_MAX_CLAMP_R_SGIX 0x836B\r
-\r
-#define GLEW_SGIX_texture_coordinate_clamp GLEW_GET_VAR(__GLEW_SGIX_texture_coordinate_clamp)\r
-\r
-#endif /* GL_SGIX_texture_coordinate_clamp */\r
-\r
-/* ------------------------ GL_SGIX_texture_lod_bias ----------------------- */\r
-\r
-#ifndef GL_SGIX_texture_lod_bias\r
-#define GL_SGIX_texture_lod_bias 1\r
-\r
-#define GLEW_SGIX_texture_lod_bias GLEW_GET_VAR(__GLEW_SGIX_texture_lod_bias)\r
-\r
-#endif /* GL_SGIX_texture_lod_bias */\r
-\r
-/* ---------------------- GL_SGIX_texture_multi_buffer --------------------- */\r
-\r
-#ifndef GL_SGIX_texture_multi_buffer\r
-#define GL_SGIX_texture_multi_buffer 1\r
-\r
-#define GL_TEXTURE_MULTI_BUFFER_HINT_SGIX 0x812E\r
-\r
-#define GLEW_SGIX_texture_multi_buffer GLEW_GET_VAR(__GLEW_SGIX_texture_multi_buffer)\r
-\r
-#endif /* GL_SGIX_texture_multi_buffer */\r
-\r
-/* ------------------------- GL_SGIX_texture_range ------------------------- */\r
-\r
-#ifndef GL_SGIX_texture_range\r
-#define GL_SGIX_texture_range 1\r
-\r
-#define GL_RGB_SIGNED_SGIX 0x85E0\r
-#define GL_RGBA_SIGNED_SGIX 0x85E1\r
-#define GL_ALPHA_SIGNED_SGIX 0x85E2\r
-#define GL_LUMINANCE_SIGNED_SGIX 0x85E3\r
-#define GL_INTENSITY_SIGNED_SGIX 0x85E4\r
-#define GL_LUMINANCE_ALPHA_SIGNED_SGIX 0x85E5\r
-#define GL_RGB16_SIGNED_SGIX 0x85E6\r
-#define GL_RGBA16_SIGNED_SGIX 0x85E7\r
-#define GL_ALPHA16_SIGNED_SGIX 0x85E8\r
-#define GL_LUMINANCE16_SIGNED_SGIX 0x85E9\r
-#define GL_INTENSITY16_SIGNED_SGIX 0x85EA\r
-#define GL_LUMINANCE16_ALPHA16_SIGNED_SGIX 0x85EB\r
-#define GL_RGB_EXTENDED_RANGE_SGIX 0x85EC\r
-#define GL_RGBA_EXTENDED_RANGE_SGIX 0x85ED\r
-#define GL_ALPHA_EXTENDED_RANGE_SGIX 0x85EE\r
-#define GL_LUMINANCE_EXTENDED_RANGE_SGIX 0x85EF\r
-#define GL_INTENSITY_EXTENDED_RANGE_SGIX 0x85F0\r
-#define GL_LUMINANCE_ALPHA_EXTENDED_RANGE_SGIX 0x85F1\r
-#define GL_RGB16_EXTENDED_RANGE_SGIX 0x85F2\r
-#define GL_RGBA16_EXTENDED_RANGE_SGIX 0x85F3\r
-#define GL_ALPHA16_EXTENDED_RANGE_SGIX 0x85F4\r
-#define GL_LUMINANCE16_EXTENDED_RANGE_SGIX 0x85F5\r
-#define GL_INTENSITY16_EXTENDED_RANGE_SGIX 0x85F6\r
-#define GL_LUMINANCE16_ALPHA16_EXTENDED_RANGE_SGIX 0x85F7\r
-#define GL_MIN_LUMINANCE_SGIS 0x85F8\r
-#define GL_MAX_LUMINANCE_SGIS 0x85F9\r
-#define GL_MIN_INTENSITY_SGIS 0x85FA\r
-#define GL_MAX_INTENSITY_SGIS 0x85FB\r
-\r
-#define GLEW_SGIX_texture_range GLEW_GET_VAR(__GLEW_SGIX_texture_range)\r
-\r
-#endif /* GL_SGIX_texture_range */\r
-\r
-/* ----------------------- GL_SGIX_texture_scale_bias ---------------------- */\r
-\r
-#ifndef GL_SGIX_texture_scale_bias\r
-#define GL_SGIX_texture_scale_bias 1\r
-\r
-#define GL_POST_TEXTURE_FILTER_BIAS_SGIX 0x8179\r
-#define GL_POST_TEXTURE_FILTER_SCALE_SGIX 0x817A\r
-#define GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX 0x817B\r
-#define GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX 0x817C\r
-\r
-#define GLEW_SGIX_texture_scale_bias GLEW_GET_VAR(__GLEW_SGIX_texture_scale_bias)\r
-\r
-#endif /* GL_SGIX_texture_scale_bias */\r
-\r
-/* ------------------------- GL_SGIX_vertex_preclip ------------------------ */\r
-\r
-#ifndef GL_SGIX_vertex_preclip\r
-#define GL_SGIX_vertex_preclip 1\r
-\r
-#define GL_VERTEX_PRECLIP_SGIX 0x83EE\r
-#define GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF\r
-\r
-#define GLEW_SGIX_vertex_preclip GLEW_GET_VAR(__GLEW_SGIX_vertex_preclip)\r
-\r
-#endif /* GL_SGIX_vertex_preclip */\r
-\r
-/* ---------------------- GL_SGIX_vertex_preclip_hint ---------------------- */\r
-\r
-#ifndef GL_SGIX_vertex_preclip_hint\r
-#define GL_SGIX_vertex_preclip_hint 1\r
-\r
-#define GL_VERTEX_PRECLIP_SGIX 0x83EE\r
-#define GL_VERTEX_PRECLIP_HINT_SGIX 0x83EF\r
-\r
-#define GLEW_SGIX_vertex_preclip_hint GLEW_GET_VAR(__GLEW_SGIX_vertex_preclip_hint)\r
-\r
-#endif /* GL_SGIX_vertex_preclip_hint */\r
-\r
-/* ----------------------------- GL_SGIX_ycrcb ----------------------------- */\r
-\r
-#ifndef GL_SGIX_ycrcb\r
-#define GL_SGIX_ycrcb 1\r
-\r
-#define GLEW_SGIX_ycrcb GLEW_GET_VAR(__GLEW_SGIX_ycrcb)\r
-\r
-#endif /* GL_SGIX_ycrcb */\r
-\r
-/* -------------------------- GL_SGI_color_matrix -------------------------- */\r
-\r
-#ifndef GL_SGI_color_matrix\r
-#define GL_SGI_color_matrix 1\r
-\r
-#define GL_COLOR_MATRIX_SGI 0x80B1\r
-#define GL_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B2\r
-#define GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI 0x80B3\r
-#define GL_POST_COLOR_MATRIX_RED_SCALE_SGI 0x80B4\r
-#define GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI 0x80B5\r
-#define GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI 0x80B6\r
-#define GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI 0x80B7\r
-#define GL_POST_COLOR_MATRIX_RED_BIAS_SGI 0x80B8\r
-#define GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI 0x80B9\r
-#define GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI 0x80BA\r
-#define GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI 0x80BB\r
-\r
-#define GLEW_SGI_color_matrix GLEW_GET_VAR(__GLEW_SGI_color_matrix)\r
-\r
-#endif /* GL_SGI_color_matrix */\r
-\r
-/* --------------------------- GL_SGI_color_table -------------------------- */\r
-\r
-#ifndef GL_SGI_color_table\r
-#define GL_SGI_color_table 1\r
-\r
-#define GL_COLOR_TABLE_SGI 0x80D0\r
-#define GL_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D1\r
-#define GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D2\r
-#define GL_PROXY_COLOR_TABLE_SGI 0x80D3\r
-#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI 0x80D4\r
-#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI 0x80D5\r
-#define GL_COLOR_TABLE_SCALE_SGI 0x80D6\r
-#define GL_COLOR_TABLE_BIAS_SGI 0x80D7\r
-#define GL_COLOR_TABLE_FORMAT_SGI 0x80D8\r
-#define GL_COLOR_TABLE_WIDTH_SGI 0x80D9\r
-#define GL_COLOR_TABLE_RED_SIZE_SGI 0x80DA\r
-#define GL_COLOR_TABLE_GREEN_SIZE_SGI 0x80DB\r
-#define GL_COLOR_TABLE_BLUE_SIZE_SGI 0x80DC\r
-#define GL_COLOR_TABLE_ALPHA_SIZE_SGI 0x80DD\r
-#define GL_COLOR_TABLE_LUMINANCE_SIZE_SGI 0x80DE\r
-#define GL_COLOR_TABLE_INTENSITY_SIZE_SGI 0x80DF\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, const GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, const GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const void* table);\r
-typedef void (GLAPIENTRY * PFNGLCOPYCOLORTABLESGIPROC) (GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);\r
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERFVSGIPROC) (GLenum target, GLenum pname, GLfloat* params);\r
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLEPARAMETERIVSGIPROC) (GLenum target, GLenum pname, GLint* params);\r
-typedef void (GLAPIENTRY * PFNGLGETCOLORTABLESGIPROC) (GLenum target, GLenum format, GLenum type, void* table);\r
-\r
-#define glColorTableParameterfvSGI GLEW_GET_FUN(__glewColorTableParameterfvSGI)\r
-#define glColorTableParameterivSGI GLEW_GET_FUN(__glewColorTableParameterivSGI)\r
-#define glColorTableSGI GLEW_GET_FUN(__glewColorTableSGI)\r
-#define glCopyColorTableSGI GLEW_GET_FUN(__glewCopyColorTableSGI)\r
-#define glGetColorTableParameterfvSGI GLEW_GET_FUN(__glewGetColorTableParameterfvSGI)\r
-#define glGetColorTableParameterivSGI GLEW_GET_FUN(__glewGetColorTableParameterivSGI)\r
-#define glGetColorTableSGI GLEW_GET_FUN(__glewGetColorTableSGI)\r
-\r
-#define GLEW_SGI_color_table GLEW_GET_VAR(__GLEW_SGI_color_table)\r
-\r
-#endif /* GL_SGI_color_table */\r
-\r
-/* ----------------------- GL_SGI_texture_color_table ---------------------- */\r
-\r
-#ifndef GL_SGI_texture_color_table\r
-#define GL_SGI_texture_color_table 1\r
-\r
-#define GL_TEXTURE_COLOR_TABLE_SGI 0x80BC\r
-#define GL_PROXY_TEXTURE_COLOR_TABLE_SGI 0x80BD\r
-\r
-#define GLEW_SGI_texture_color_table GLEW_GET_VAR(__GLEW_SGI_texture_color_table)\r
-\r
-#endif /* GL_SGI_texture_color_table */\r
-\r
-/* ------------------------- GL_SUNX_constant_data ------------------------- */\r
-\r
-#ifndef GL_SUNX_constant_data\r
-#define GL_SUNX_constant_data 1\r
-\r
-#define GL_UNPACK_CONSTANT_DATA_SUNX 0x81D5\r
-#define GL_TEXTURE_CONSTANT_DATA_SUNX 0x81D6\r
-\r
-typedef void (GLAPIENTRY * PFNGLFINISHTEXTURESUNXPROC) (void);\r
-\r
-#define glFinishTextureSUNX GLEW_GET_FUN(__glewFinishTextureSUNX)\r
-\r
-#define GLEW_SUNX_constant_data GLEW_GET_VAR(__GLEW_SUNX_constant_data)\r
-\r
-#endif /* GL_SUNX_constant_data */\r
-\r
-/* -------------------- GL_SUN_convolution_border_modes -------------------- */\r
-\r
-#ifndef GL_SUN_convolution_border_modes\r
-#define GL_SUN_convolution_border_modes 1\r
-\r
-#define GL_WRAP_BORDER_SUN 0x81D4\r
-\r
-#define GLEW_SUN_convolution_border_modes GLEW_GET_VAR(__GLEW_SUN_convolution_border_modes)\r
-\r
-#endif /* GL_SUN_convolution_border_modes */\r
-\r
-/* -------------------------- GL_SUN_global_alpha -------------------------- */\r
-\r
-#ifndef GL_SUN_global_alpha\r
-#define GL_SUN_global_alpha 1\r
-\r
-#define GL_GLOBAL_ALPHA_SUN 0x81D9\r
-#define GL_GLOBAL_ALPHA_FACTOR_SUN 0x81DA\r
-\r
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORBSUNPROC) (GLbyte factor);\r
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORDSUNPROC) (GLdouble factor);\r
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORFSUNPROC) (GLfloat factor);\r
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORISUNPROC) (GLint factor);\r
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORSSUNPROC) (GLshort factor);\r
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUBSUNPROC) (GLubyte factor);\r
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUISUNPROC) (GLuint factor);\r
-typedef void (GLAPIENTRY * PFNGLGLOBALALPHAFACTORUSSUNPROC) (GLushort factor);\r
-\r
-#define glGlobalAlphaFactorbSUN GLEW_GET_FUN(__glewGlobalAlphaFactorbSUN)\r
-#define glGlobalAlphaFactordSUN GLEW_GET_FUN(__glewGlobalAlphaFactordSUN)\r
-#define glGlobalAlphaFactorfSUN GLEW_GET_FUN(__glewGlobalAlphaFactorfSUN)\r
-#define glGlobalAlphaFactoriSUN GLEW_GET_FUN(__glewGlobalAlphaFactoriSUN)\r
-#define glGlobalAlphaFactorsSUN GLEW_GET_FUN(__glewGlobalAlphaFactorsSUN)\r
-#define glGlobalAlphaFactorubSUN GLEW_GET_FUN(__glewGlobalAlphaFactorubSUN)\r
-#define glGlobalAlphaFactoruiSUN GLEW_GET_FUN(__glewGlobalAlphaFactoruiSUN)\r
-#define glGlobalAlphaFactorusSUN GLEW_GET_FUN(__glewGlobalAlphaFactorusSUN)\r
-\r
-#define GLEW_SUN_global_alpha GLEW_GET_VAR(__GLEW_SUN_global_alpha)\r
-\r
-#endif /* GL_SUN_global_alpha */\r
-\r
-/* --------------------------- GL_SUN_mesh_array --------------------------- */\r
-\r
-#ifndef GL_SUN_mesh_array\r
-#define GL_SUN_mesh_array 1\r
-\r
-#define GL_QUAD_MESH_SUN 0x8614\r
-#define GL_TRIANGLE_MESH_SUN 0x8615\r
-\r
-#define GLEW_SUN_mesh_array GLEW_GET_VAR(__GLEW_SUN_mesh_array)\r
-\r
-#endif /* GL_SUN_mesh_array */\r
-\r
-/* ------------------------ GL_SUN_read_video_pixels ----------------------- */\r
-\r
-#ifndef GL_SUN_read_video_pixels\r
-#define GL_SUN_read_video_pixels 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLREADVIDEOPIXELSSUNPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels);\r
-\r
-#define glReadVideoPixelsSUN GLEW_GET_FUN(__glewReadVideoPixelsSUN)\r
-\r
-#define GLEW_SUN_read_video_pixels GLEW_GET_VAR(__GLEW_SUN_read_video_pixels)\r
-\r
-#endif /* GL_SUN_read_video_pixels */\r
-\r
-/* --------------------------- GL_SUN_slice_accum -------------------------- */\r
-\r
-#ifndef GL_SUN_slice_accum\r
-#define GL_SUN_slice_accum 1\r
-\r
-#define GL_SLICE_ACCUM_SUN 0x85CC\r
-\r
-#define GLEW_SUN_slice_accum GLEW_GET_VAR(__GLEW_SUN_slice_accum)\r
-\r
-#endif /* GL_SUN_slice_accum */\r
-\r
-/* -------------------------- GL_SUN_triangle_list ------------------------- */\r
-\r
-#ifndef GL_SUN_triangle_list\r
-#define GL_SUN_triangle_list 1\r
-\r
-#define GL_RESTART_SUN 0x01\r
-#define GL_REPLACE_MIDDLE_SUN 0x02\r
-#define GL_REPLACE_OLDEST_SUN 0x03\r
-#define GL_TRIANGLE_LIST_SUN 0x81D7\r
-#define GL_REPLACEMENT_CODE_SUN 0x81D8\r
-#define GL_REPLACEMENT_CODE_ARRAY_SUN 0x85C0\r
-#define GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN 0x85C1\r
-#define GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN 0x85C2\r
-#define GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN 0x85C3\r
-#define GL_R1UI_V3F_SUN 0x85C4\r
-#define GL_R1UI_C4UB_V3F_SUN 0x85C5\r
-#define GL_R1UI_C3F_V3F_SUN 0x85C6\r
-#define GL_R1UI_N3F_V3F_SUN 0x85C7\r
-#define GL_R1UI_C4F_N3F_V3F_SUN 0x85C8\r
-#define GL_R1UI_T2F_V3F_SUN 0x85C9\r
-#define GL_R1UI_T2F_N3F_V3F_SUN 0x85CA\r
-#define GL_R1UI_T2F_C4F_N3F_V3F_SUN 0x85CB\r
-\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEPOINTERSUNPROC) (GLenum type, GLsizei stride, const void* pointer);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUBSUNPROC) (GLubyte code);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUBVSUNPROC) (const GLubyte* code);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUISUNPROC) (GLuint code);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVSUNPROC) (const GLuint* code);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUSSUNPROC) (GLushort code);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUSVSUNPROC) (const GLushort* code);\r
-\r
-#define glReplacementCodePointerSUN GLEW_GET_FUN(__glewReplacementCodePointerSUN)\r
-#define glReplacementCodeubSUN GLEW_GET_FUN(__glewReplacementCodeubSUN)\r
-#define glReplacementCodeubvSUN GLEW_GET_FUN(__glewReplacementCodeubvSUN)\r
-#define glReplacementCodeuiSUN GLEW_GET_FUN(__glewReplacementCodeuiSUN)\r
-#define glReplacementCodeuivSUN GLEW_GET_FUN(__glewReplacementCodeuivSUN)\r
-#define glReplacementCodeusSUN GLEW_GET_FUN(__glewReplacementCodeusSUN)\r
-#define glReplacementCodeusvSUN GLEW_GET_FUN(__glewReplacementCodeusvSUN)\r
-\r
-#define GLEW_SUN_triangle_list GLEW_GET_VAR(__GLEW_SUN_triangle_list)\r
-\r
-#endif /* GL_SUN_triangle_list */\r
-\r
-/* ----------------------------- GL_SUN_vertex ----------------------------- */\r
-\r
-#ifndef GL_SUN_vertex\r
-#define GL_SUN_vertex 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLCOLOR3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR3FVERTEX3FVSUNPROC) (const GLfloat* c, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* c, const GLfloat *n, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX2FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX2FVSUNPROC) (const GLubyte* c, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX3FSUNPROC) (GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLCOLOR4UBVERTEX3FVSUNPROC) (const GLubyte* c, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLNORMAL3FVERTEX3FSUNPROC) (GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* n, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *c, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *c, const GLfloat *n, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC) (GLuint rc, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC) (const GLuint* rc, const GLubyte *c, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *n, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *n, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC) (GLuint rc, GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *tc, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC) (GLuint rc, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC) (const GLuint* rc, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLubyte r, GLubyte g, GLubyte b, GLubyte a, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC) (const GLfloat* tc, const GLubyte *c, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *n, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FVERTEX3FSUNPROC) (GLfloat s, GLfloat t, GLfloat x, GLfloat y, GLfloat z);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD2FVERTEX3FVSUNPROC) (const GLfloat* tc, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat r, GLfloat g, GLfloat b, GLfloat a, GLfloat nx, GLfloat ny, GLfloat nz, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC) (const GLfloat* tc, const GLfloat *c, const GLfloat *n, const GLfloat *v);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4FVERTEX4FSUNPROC) (GLfloat s, GLfloat t, GLfloat p, GLfloat q, GLfloat x, GLfloat y, GLfloat z, GLfloat w);\r
-typedef void (GLAPIENTRY * PFNGLTEXCOORD4FVERTEX4FVSUNPROC) (const GLfloat* tc, const GLfloat *v);\r
-\r
-#define glColor3fVertex3fSUN GLEW_GET_FUN(__glewColor3fVertex3fSUN)\r
-#define glColor3fVertex3fvSUN GLEW_GET_FUN(__glewColor3fVertex3fvSUN)\r
-#define glColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewColor4fNormal3fVertex3fSUN)\r
-#define glColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewColor4fNormal3fVertex3fvSUN)\r
-#define glColor4ubVertex2fSUN GLEW_GET_FUN(__glewColor4ubVertex2fSUN)\r
-#define glColor4ubVertex2fvSUN GLEW_GET_FUN(__glewColor4ubVertex2fvSUN)\r
-#define glColor4ubVertex3fSUN GLEW_GET_FUN(__glewColor4ubVertex3fSUN)\r
-#define glColor4ubVertex3fvSUN GLEW_GET_FUN(__glewColor4ubVertex3fvSUN)\r
-#define glNormal3fVertex3fSUN GLEW_GET_FUN(__glewNormal3fVertex3fSUN)\r
-#define glNormal3fVertex3fvSUN GLEW_GET_FUN(__glewNormal3fVertex3fvSUN)\r
-#define glReplacementCodeuiColor3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor3fVertex3fSUN)\r
-#define glReplacementCodeuiColor3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor3fVertex3fvSUN)\r
-#define glReplacementCodeuiColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4fNormal3fVertex3fSUN)\r
-#define glReplacementCodeuiColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4fNormal3fVertex3fvSUN)\r
-#define glReplacementCodeuiColor4ubVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4ubVertex3fSUN)\r
-#define glReplacementCodeuiColor4ubVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiColor4ubVertex3fvSUN)\r
-#define glReplacementCodeuiNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiNormal3fVertex3fSUN)\r
-#define glReplacementCodeuiNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiNormal3fVertex3fvSUN)\r
-#define glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN)\r
-#define glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN)\r
-#define glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN)\r
-#define glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN)\r
-#define glReplacementCodeuiTexCoord2fVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fVertex3fSUN)\r
-#define glReplacementCodeuiTexCoord2fVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiTexCoord2fVertex3fvSUN)\r
-#define glReplacementCodeuiVertex3fSUN GLEW_GET_FUN(__glewReplacementCodeuiVertex3fSUN)\r
-#define glReplacementCodeuiVertex3fvSUN GLEW_GET_FUN(__glewReplacementCodeuiVertex3fvSUN)\r
-#define glTexCoord2fColor3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor3fVertex3fSUN)\r
-#define glTexCoord2fColor3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor3fVertex3fvSUN)\r
-#define glTexCoord2fColor4fNormal3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor4fNormal3fVertex3fSUN)\r
-#define glTexCoord2fColor4fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor4fNormal3fVertex3fvSUN)\r
-#define glTexCoord2fColor4ubVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fColor4ubVertex3fSUN)\r
-#define glTexCoord2fColor4ubVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fColor4ubVertex3fvSUN)\r
-#define glTexCoord2fNormal3fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fNormal3fVertex3fSUN)\r
-#define glTexCoord2fNormal3fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fNormal3fVertex3fvSUN)\r
-#define glTexCoord2fVertex3fSUN GLEW_GET_FUN(__glewTexCoord2fVertex3fSUN)\r
-#define glTexCoord2fVertex3fvSUN GLEW_GET_FUN(__glewTexCoord2fVertex3fvSUN)\r
-#define glTexCoord4fColor4fNormal3fVertex4fSUN GLEW_GET_FUN(__glewTexCoord4fColor4fNormal3fVertex4fSUN)\r
-#define glTexCoord4fColor4fNormal3fVertex4fvSUN GLEW_GET_FUN(__glewTexCoord4fColor4fNormal3fVertex4fvSUN)\r
-#define glTexCoord4fVertex4fSUN GLEW_GET_FUN(__glewTexCoord4fVertex4fSUN)\r
-#define glTexCoord4fVertex4fvSUN GLEW_GET_FUN(__glewTexCoord4fVertex4fvSUN)\r
-\r
-#define GLEW_SUN_vertex GLEW_GET_VAR(__GLEW_SUN_vertex)\r
-\r
-#endif /* GL_SUN_vertex */\r
-\r
-/* -------------------------- GL_WIN_phong_shading ------------------------- */\r
-\r
-#ifndef GL_WIN_phong_shading\r
-#define GL_WIN_phong_shading 1\r
-\r
-#define GL_PHONG_WIN 0x80EA\r
-#define GL_PHONG_HINT_WIN 0x80EB\r
-\r
-#define GLEW_WIN_phong_shading GLEW_GET_VAR(__GLEW_WIN_phong_shading)\r
-\r
-#endif /* GL_WIN_phong_shading */\r
-\r
-/* -------------------------- GL_WIN_specular_fog -------------------------- */\r
-\r
-#ifndef GL_WIN_specular_fog\r
-#define GL_WIN_specular_fog 1\r
-\r
-#define GL_FOG_SPECULAR_TEXTURE_WIN 0x80EC\r
-\r
-#define GLEW_WIN_specular_fog GLEW_GET_VAR(__GLEW_WIN_specular_fog)\r
-\r
-#endif /* GL_WIN_specular_fog */\r
-\r
-/* ---------------------------- GL_WIN_swap_hint --------------------------- */\r
-\r
-#ifndef GL_WIN_swap_hint\r
-#define GL_WIN_swap_hint 1\r
-\r
-typedef void (GLAPIENTRY * PFNGLADDSWAPHINTRECTWINPROC) (GLint x, GLint y, GLsizei width, GLsizei height);\r
-\r
-#define glAddSwapHintRectWIN GLEW_GET_FUN(__glewAddSwapHintRectWIN)\r
-\r
-#define GLEW_WIN_swap_hint GLEW_GET_VAR(__GLEW_WIN_swap_hint)\r
-\r
-#endif /* GL_WIN_swap_hint */\r
-\r
-/* ------------------------------------------------------------------------- */\r
-\r
-#if defined(GLEW_MX) && defined(_WIN32)\r
-#define GLEW_FUN_EXPORT\r
-#else\r
-#define GLEW_FUN_EXPORT GLEWAPI\r
-#endif /* GLEW_MX */\r
-\r
-#if defined(GLEW_MX)\r
-#define GLEW_VAR_EXPORT\r
-#else\r
-#define GLEW_VAR_EXPORT GLEWAPI\r
-#endif /* GLEW_MX */\r
-\r
-#if defined(GLEW_MX) && defined(_WIN32)\r
-struct GLEWContextStruct\r
-{\r
-#endif /* GLEW_MX */\r
-\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DPROC __glewCopyTexSubImage3D;\r
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSPROC __glewDrawRangeElements;\r
-GLEW_FUN_EXPORT PFNGLTEXIMAGE3DPROC __glewTexImage3D;\r
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DPROC __glewTexSubImage3D;\r
-\r
-GLEW_FUN_EXPORT PFNGLACTIVETEXTUREPROC __glewActiveTexture;\r
-GLEW_FUN_EXPORT PFNGLCLIENTACTIVETEXTUREPROC __glewClientActiveTexture;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE1DPROC __glewCompressedTexImage1D;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE2DPROC __glewCompressedTexImage2D;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DPROC __glewCompressedTexImage3D;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC __glewCompressedTexSubImage1D;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC __glewCompressedTexSubImage2D;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC __glewCompressedTexSubImage3D;\r
-GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXIMAGEPROC __glewGetCompressedTexImage;\r
-GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXDPROC __glewLoadTransposeMatrixd;\r
-GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXFPROC __glewLoadTransposeMatrixf;\r
-GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXDPROC __glewMultTransposeMatrixd;\r
-GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXFPROC __glewMultTransposeMatrixf;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DPROC __glewMultiTexCoord1d;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DVPROC __glewMultiTexCoord1dv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FPROC __glewMultiTexCoord1f;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FVPROC __glewMultiTexCoord1fv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IPROC __glewMultiTexCoord1i;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IVPROC __glewMultiTexCoord1iv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SPROC __glewMultiTexCoord1s;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SVPROC __glewMultiTexCoord1sv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DPROC __glewMultiTexCoord2d;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DVPROC __glewMultiTexCoord2dv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FPROC __glewMultiTexCoord2f;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FVPROC __glewMultiTexCoord2fv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IPROC __glewMultiTexCoord2i;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IVPROC __glewMultiTexCoord2iv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SPROC __glewMultiTexCoord2s;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SVPROC __glewMultiTexCoord2sv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DPROC __glewMultiTexCoord3d;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DVPROC __glewMultiTexCoord3dv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FPROC __glewMultiTexCoord3f;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FVPROC __glewMultiTexCoord3fv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IPROC __glewMultiTexCoord3i;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IVPROC __glewMultiTexCoord3iv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SPROC __glewMultiTexCoord3s;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SVPROC __glewMultiTexCoord3sv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DPROC __glewMultiTexCoord4d;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DVPROC __glewMultiTexCoord4dv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FPROC __glewMultiTexCoord4f;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FVPROC __glewMultiTexCoord4fv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IPROC __glewMultiTexCoord4i;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IVPROC __glewMultiTexCoord4iv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SPROC __glewMultiTexCoord4s;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SVPROC __glewMultiTexCoord4sv;\r
-GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEPROC __glewSampleCoverage;\r
-\r
-GLEW_FUN_EXPORT PFNGLBLENDCOLORPROC __glewBlendColor;\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONPROC __glewBlendEquation;\r
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEPROC __glewBlendFuncSeparate;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTERPROC __glewFogCoordPointer;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDDPROC __glewFogCoordd;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDDVPROC __glewFogCoorddv;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDFPROC __glewFogCoordf;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDFVPROC __glewFogCoordfv;\r
-GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSPROC __glewMultiDrawArrays;\r
-GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSPROC __glewMultiDrawElements;\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFPROC __glewPointParameterf;\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVPROC __glewPointParameterfv;\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIPROC __glewPointParameteri;\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIVPROC __glewPointParameteriv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BPROC __glewSecondaryColor3b;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BVPROC __glewSecondaryColor3bv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DPROC __glewSecondaryColor3d;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DVPROC __glewSecondaryColor3dv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FPROC __glewSecondaryColor3f;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FVPROC __glewSecondaryColor3fv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IPROC __glewSecondaryColor3i;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IVPROC __glewSecondaryColor3iv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SPROC __glewSecondaryColor3s;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SVPROC __glewSecondaryColor3sv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBPROC __glewSecondaryColor3ub;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBVPROC __glewSecondaryColor3ubv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIPROC __glewSecondaryColor3ui;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIVPROC __glewSecondaryColor3uiv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USPROC __glewSecondaryColor3us;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USVPROC __glewSecondaryColor3usv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTERPROC __glewSecondaryColorPointer;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DPROC __glewWindowPos2d;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVPROC __glewWindowPos2dv;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FPROC __glewWindowPos2f;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVPROC __glewWindowPos2fv;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IPROC __glewWindowPos2i;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVPROC __glewWindowPos2iv;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SPROC __glewWindowPos2s;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVPROC __glewWindowPos2sv;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DPROC __glewWindowPos3d;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVPROC __glewWindowPos3dv;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FPROC __glewWindowPos3f;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVPROC __glewWindowPos3fv;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IPROC __glewWindowPos3i;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVPROC __glewWindowPos3iv;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SPROC __glewWindowPos3s;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVPROC __glewWindowPos3sv;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINQUERYPROC __glewBeginQuery;\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFERPROC __glewBindBuffer;\r
-GLEW_FUN_EXPORT PFNGLBUFFERDATAPROC __glewBufferData;\r
-GLEW_FUN_EXPORT PFNGLBUFFERSUBDATAPROC __glewBufferSubData;\r
-GLEW_FUN_EXPORT PFNGLDELETEBUFFERSPROC __glewDeleteBuffers;\r
-GLEW_FUN_EXPORT PFNGLDELETEQUERIESPROC __glewDeleteQueries;\r
-GLEW_FUN_EXPORT PFNGLENDQUERYPROC __glewEndQuery;\r
-GLEW_FUN_EXPORT PFNGLGENBUFFERSPROC __glewGenBuffers;\r
-GLEW_FUN_EXPORT PFNGLGENQUERIESPROC __glewGenQueries;\r
-GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERIVPROC __glewGetBufferParameteriv;\r
-GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVPROC __glewGetBufferPointerv;\r
-GLEW_FUN_EXPORT PFNGLGETBUFFERSUBDATAPROC __glewGetBufferSubData;\r
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVPROC __glewGetQueryObjectiv;\r
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVPROC __glewGetQueryObjectuiv;\r
-GLEW_FUN_EXPORT PFNGLGETQUERYIVPROC __glewGetQueryiv;\r
-GLEW_FUN_EXPORT PFNGLISBUFFERPROC __glewIsBuffer;\r
-GLEW_FUN_EXPORT PFNGLISQUERYPROC __glewIsQuery;\r
-GLEW_FUN_EXPORT PFNGLMAPBUFFERPROC __glewMapBuffer;\r
-GLEW_FUN_EXPORT PFNGLUNMAPBUFFERPROC __glewUnmapBuffer;\r
-\r
-GLEW_FUN_EXPORT PFNGLATTACHSHADERPROC __glewAttachShader;\r
-GLEW_FUN_EXPORT PFNGLBINDATTRIBLOCATIONPROC __glewBindAttribLocation;\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEPROC __glewBlendEquationSeparate;\r
-GLEW_FUN_EXPORT PFNGLCOMPILESHADERPROC __glewCompileShader;\r
-GLEW_FUN_EXPORT PFNGLCREATEPROGRAMPROC __glewCreateProgram;\r
-GLEW_FUN_EXPORT PFNGLCREATESHADERPROC __glewCreateShader;\r
-GLEW_FUN_EXPORT PFNGLDELETEPROGRAMPROC __glewDeleteProgram;\r
-GLEW_FUN_EXPORT PFNGLDELETESHADERPROC __glewDeleteShader;\r
-GLEW_FUN_EXPORT PFNGLDETACHSHADERPROC __glewDetachShader;\r
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBARRAYPROC __glewDisableVertexAttribArray;\r
-GLEW_FUN_EXPORT PFNGLDRAWBUFFERSPROC __glewDrawBuffers;\r
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBARRAYPROC __glewEnableVertexAttribArray;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEATTRIBPROC __glewGetActiveAttrib;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMPROC __glewGetActiveUniform;\r
-GLEW_FUN_EXPORT PFNGLGETATTACHEDSHADERSPROC __glewGetAttachedShaders;\r
-GLEW_FUN_EXPORT PFNGLGETATTRIBLOCATIONPROC __glewGetAttribLocation;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMINFOLOGPROC __glewGetProgramInfoLog;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMIVPROC __glewGetProgramiv;\r
-GLEW_FUN_EXPORT PFNGLGETSHADERINFOLOGPROC __glewGetShaderInfoLog;\r
-GLEW_FUN_EXPORT PFNGLGETSHADERSOURCEPROC __glewGetShaderSource;\r
-GLEW_FUN_EXPORT PFNGLGETSHADERIVPROC __glewGetShaderiv;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMLOCATIONPROC __glewGetUniformLocation;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMFVPROC __glewGetUniformfv;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMIVPROC __glewGetUniformiv;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVPROC __glewGetVertexAttribPointerv;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVPROC __glewGetVertexAttribdv;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVPROC __glewGetVertexAttribfv;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVPROC __glewGetVertexAttribiv;\r
-GLEW_FUN_EXPORT PFNGLISPROGRAMPROC __glewIsProgram;\r
-GLEW_FUN_EXPORT PFNGLISSHADERPROC __glewIsShader;\r
-GLEW_FUN_EXPORT PFNGLLINKPROGRAMPROC __glewLinkProgram;\r
-GLEW_FUN_EXPORT PFNGLSHADERSOURCEPROC __glewShaderSource;\r
-GLEW_FUN_EXPORT PFNGLSTENCILFUNCSEPARATEPROC __glewStencilFuncSeparate;\r
-GLEW_FUN_EXPORT PFNGLSTENCILMASKSEPARATEPROC __glewStencilMaskSeparate;\r
-GLEW_FUN_EXPORT PFNGLSTENCILOPSEPARATEPROC __glewStencilOpSeparate;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1FPROC __glewUniform1f;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1FVPROC __glewUniform1fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1IPROC __glewUniform1i;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1IVPROC __glewUniform1iv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2FPROC __glewUniform2f;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2FVPROC __glewUniform2fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2IPROC __glewUniform2i;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2IVPROC __glewUniform2iv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3FPROC __glewUniform3f;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3FVPROC __glewUniform3fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3IPROC __glewUniform3i;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3IVPROC __glewUniform3iv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4FPROC __glewUniform4f;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4FVPROC __glewUniform4fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4IPROC __glewUniform4i;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4IVPROC __glewUniform4iv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2FVPROC __glewUniformMatrix2fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3FVPROC __glewUniformMatrix3fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4FVPROC __glewUniformMatrix4fv;\r
-GLEW_FUN_EXPORT PFNGLUSEPROGRAMPROC __glewUseProgram;\r
-GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMPROC __glewValidateProgram;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DPROC __glewVertexAttrib1d;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVPROC __glewVertexAttrib1dv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FPROC __glewVertexAttrib1f;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVPROC __glewVertexAttrib1fv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SPROC __glewVertexAttrib1s;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVPROC __glewVertexAttrib1sv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DPROC __glewVertexAttrib2d;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVPROC __glewVertexAttrib2dv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FPROC __glewVertexAttrib2f;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVPROC __glewVertexAttrib2fv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SPROC __glewVertexAttrib2s;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVPROC __glewVertexAttrib2sv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DPROC __glewVertexAttrib3d;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVPROC __glewVertexAttrib3dv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FPROC __glewVertexAttrib3f;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVPROC __glewVertexAttrib3fv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SPROC __glewVertexAttrib3s;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVPROC __glewVertexAttrib3sv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NBVPROC __glewVertexAttrib4Nbv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NIVPROC __glewVertexAttrib4Niv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NSVPROC __glewVertexAttrib4Nsv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBPROC __glewVertexAttrib4Nub;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBVPROC __glewVertexAttrib4Nubv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUIVPROC __glewVertexAttrib4Nuiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUSVPROC __glewVertexAttrib4Nusv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4BVPROC __glewVertexAttrib4bv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DPROC __glewVertexAttrib4d;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVPROC __glewVertexAttrib4dv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FPROC __glewVertexAttrib4f;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVPROC __glewVertexAttrib4fv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4IVPROC __glewVertexAttrib4iv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SPROC __glewVertexAttrib4s;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVPROC __glewVertexAttrib4sv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVPROC __glewVertexAttrib4ubv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UIVPROC __glewVertexAttrib4uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4USVPROC __glewVertexAttrib4usv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERPROC __glewVertexAttribPointer;\r
-\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X3FVPROC __glewUniformMatrix2x3fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X4FVPROC __glewUniformMatrix2x4fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X2FVPROC __glewUniformMatrix3x2fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X4FVPROC __glewUniformMatrix3x4fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X2FVPROC __glewUniformMatrix4x2fv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X3FVPROC __glewUniformMatrix4x3fv;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERPROC __glewBeginConditionalRender;\r
-GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKPROC __glewBeginTransformFeedback;\r
-GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONPROC __glewBindFragDataLocation;\r
-GLEW_FUN_EXPORT PFNGLCLAMPCOLORPROC __glewClampColor;\r
-GLEW_FUN_EXPORT PFNGLCLEARBUFFERFIPROC __glewClearBufferfi;\r
-GLEW_FUN_EXPORT PFNGLCLEARBUFFERFVPROC __glewClearBufferfv;\r
-GLEW_FUN_EXPORT PFNGLCLEARBUFFERIVPROC __glewClearBufferiv;\r
-GLEW_FUN_EXPORT PFNGLCLEARBUFFERUIVPROC __glewClearBufferuiv;\r
-GLEW_FUN_EXPORT PFNGLCOLORMASKIPROC __glewColorMaski;\r
-GLEW_FUN_EXPORT PFNGLDISABLEIPROC __glewDisablei;\r
-GLEW_FUN_EXPORT PFNGLENABLEIPROC __glewEnablei;\r
-GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERPROC __glewEndConditionalRender;\r
-GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKPROC __glewEndTransformFeedback;\r
-GLEW_FUN_EXPORT PFNGLGETBOOLEANI_VPROC __glewGetBooleani_v;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGDATALOCATIONPROC __glewGetFragDataLocation;\r
-GLEW_FUN_EXPORT PFNGLGETSTRINGIPROC __glewGetStringi;\r
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVPROC __glewGetTexParameterIiv;\r
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVPROC __glewGetTexParameterIuiv;\r
-GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGPROC __glewGetTransformFeedbackVarying;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMUIVPROC __glewGetUniformuiv;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIIVPROC __glewGetVertexAttribIiv;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIUIVPROC __glewGetVertexAttribIuiv;\r
-GLEW_FUN_EXPORT PFNGLISENABLEDIPROC __glewIsEnabledi;\r
-GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVPROC __glewTexParameterIiv;\r
-GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVPROC __glewTexParameterIuiv;\r
-GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSPROC __glewTransformFeedbackVaryings;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1UIPROC __glewUniform1ui;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1UIVPROC __glewUniform1uiv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2UIPROC __glewUniform2ui;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2UIVPROC __glewUniform2uiv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3UIPROC __glewUniform3ui;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3UIVPROC __glewUniform3uiv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4UIPROC __glewUniform4ui;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4UIVPROC __glewUniform4uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IPROC __glewVertexAttribI1i;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IVPROC __glewVertexAttribI1iv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIPROC __glewVertexAttribI1ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIVPROC __glewVertexAttribI1uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IPROC __glewVertexAttribI2i;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IVPROC __glewVertexAttribI2iv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIPROC __glewVertexAttribI2ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIVPROC __glewVertexAttribI2uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IPROC __glewVertexAttribI3i;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IVPROC __glewVertexAttribI3iv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIPROC __glewVertexAttribI3ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIVPROC __glewVertexAttribI3uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4BVPROC __glewVertexAttribI4bv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IPROC __glewVertexAttribI4i;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IVPROC __glewVertexAttribI4iv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4SVPROC __glewVertexAttribI4sv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UBVPROC __glewVertexAttribI4ubv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIPROC __glewVertexAttribI4ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIVPROC __glewVertexAttribI4uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4USVPROC __glewVertexAttribI4usv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIPOINTERPROC __glewVertexAttribIPointer;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDPROC __glewDrawArraysInstanced;\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDPROC __glewDrawElementsInstanced;\r
-GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTINDEXPROC __glewPrimitiveRestartIndex;\r
-GLEW_FUN_EXPORT PFNGLTEXBUFFERPROC __glewTexBuffer;\r
-\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREPROC __glewFramebufferTexture;\r
-GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERI64VPROC __glewGetBufferParameteri64v;\r
-GLEW_FUN_EXPORT PFNGLGETINTEGER64I_VPROC __glewGetInteger64i_v;\r
-\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORPROC __glewVertexAttribDivisor;\r
-\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIPROC __glewBlendEquationSeparatei;\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIPROC __glewBlendEquationi;\r
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIPROC __glewBlendFuncSeparatei;\r
-GLEW_FUN_EXPORT PFNGLBLENDFUNCIPROC __glewBlendFunci;\r
-GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGPROC __glewMinSampleShading;\r
-\r
-GLEW_FUN_EXPORT PFNGLTBUFFERMASK3DFXPROC __glewTbufferMask3DFX;\r
-\r
-GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECALLBACKAMDPROC __glewDebugMessageCallbackAMD;\r
-GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEENABLEAMDPROC __glewDebugMessageEnableAMD;\r
-GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEINSERTAMDPROC __glewDebugMessageInsertAMD;\r
-GLEW_FUN_EXPORT PFNGLGETDEBUGMESSAGELOGAMDPROC __glewGetDebugMessageLogAMD;\r
-\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONINDEXEDAMDPROC __glewBlendEquationIndexedAMD;\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC __glewBlendEquationSeparateIndexedAMD;\r
-GLEW_FUN_EXPORT PFNGLBLENDFUNCINDEXEDAMDPROC __glewBlendFuncIndexedAMD;\r
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC __glewBlendFuncSeparateIndexedAMD;\r
-\r
-GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC __glewMultiDrawArraysIndirectAMD;\r
-GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC __glewMultiDrawElementsIndirectAMD;\r
-\r
-GLEW_FUN_EXPORT PFNGLDELETENAMESAMDPROC __glewDeleteNamesAMD;\r
-GLEW_FUN_EXPORT PFNGLGENNAMESAMDPROC __glewGenNamesAMD;\r
-GLEW_FUN_EXPORT PFNGLISNAMEAMDPROC __glewIsNameAMD;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINPERFMONITORAMDPROC __glewBeginPerfMonitorAMD;\r
-GLEW_FUN_EXPORT PFNGLDELETEPERFMONITORSAMDPROC __glewDeletePerfMonitorsAMD;\r
-GLEW_FUN_EXPORT PFNGLENDPERFMONITORAMDPROC __glewEndPerfMonitorAMD;\r
-GLEW_FUN_EXPORT PFNGLGENPERFMONITORSAMDPROC __glewGenPerfMonitorsAMD;\r
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERDATAAMDPROC __glewGetPerfMonitorCounterDataAMD;\r
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERINFOAMDPROC __glewGetPerfMonitorCounterInfoAMD;\r
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC __glewGetPerfMonitorCounterStringAMD;\r
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORCOUNTERSAMDPROC __glewGetPerfMonitorCountersAMD;\r
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORGROUPSTRINGAMDPROC __glewGetPerfMonitorGroupStringAMD;\r
-GLEW_FUN_EXPORT PFNGLGETPERFMONITORGROUPSAMDPROC __glewGetPerfMonitorGroupsAMD;\r
-GLEW_FUN_EXPORT PFNGLSELECTPERFMONITORCOUNTERSAMDPROC __glewSelectPerfMonitorCountersAMD;\r
-\r
-GLEW_FUN_EXPORT PFNGLSETMULTISAMPLEFVAMDPROC __glewSetMultisamplefvAMD;\r
-\r
-GLEW_FUN_EXPORT PFNGLTESSELLATIONFACTORAMDPROC __glewTessellationFactorAMD;\r
-GLEW_FUN_EXPORT PFNGLTESSELLATIONMODEAMDPROC __glewTessellationModeAMD;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTARRAYAPPLEPROC __glewDrawElementArrayAPPLE;\r
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC __glewDrawRangeElementArrayAPPLE;\r
-GLEW_FUN_EXPORT PFNGLELEMENTPOINTERAPPLEPROC __glewElementPointerAPPLE;\r
-GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC __glewMultiDrawElementArrayAPPLE;\r
-GLEW_FUN_EXPORT PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC __glewMultiDrawRangeElementArrayAPPLE;\r
-\r
-GLEW_FUN_EXPORT PFNGLDELETEFENCESAPPLEPROC __glewDeleteFencesAPPLE;\r
-GLEW_FUN_EXPORT PFNGLFINISHFENCEAPPLEPROC __glewFinishFenceAPPLE;\r
-GLEW_FUN_EXPORT PFNGLFINISHOBJECTAPPLEPROC __glewFinishObjectAPPLE;\r
-GLEW_FUN_EXPORT PFNGLGENFENCESAPPLEPROC __glewGenFencesAPPLE;\r
-GLEW_FUN_EXPORT PFNGLISFENCEAPPLEPROC __glewIsFenceAPPLE;\r
-GLEW_FUN_EXPORT PFNGLSETFENCEAPPLEPROC __glewSetFenceAPPLE;\r
-GLEW_FUN_EXPORT PFNGLTESTFENCEAPPLEPROC __glewTestFenceAPPLE;\r
-GLEW_FUN_EXPORT PFNGLTESTOBJECTAPPLEPROC __glewTestObjectAPPLE;\r
-\r
-GLEW_FUN_EXPORT PFNGLBUFFERPARAMETERIAPPLEPROC __glewBufferParameteriAPPLE;\r
-GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC __glewFlushMappedBufferRangeAPPLE;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERIVAPPLEPROC __glewGetObjectParameterivAPPLE;\r
-GLEW_FUN_EXPORT PFNGLOBJECTPURGEABLEAPPLEPROC __glewObjectPurgeableAPPLE;\r
-GLEW_FUN_EXPORT PFNGLOBJECTUNPURGEABLEAPPLEPROC __glewObjectUnpurgeableAPPLE;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC __glewGetTexParameterPointervAPPLE;\r
-GLEW_FUN_EXPORT PFNGLTEXTURERANGEAPPLEPROC __glewTextureRangeAPPLE;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYAPPLEPROC __glewBindVertexArrayAPPLE;\r
-GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSAPPLEPROC __glewDeleteVertexArraysAPPLE;\r
-GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSAPPLEPROC __glewGenVertexArraysAPPLE;\r
-GLEW_FUN_EXPORT PFNGLISVERTEXARRAYAPPLEPROC __glewIsVertexArrayAPPLE;\r
-\r
-GLEW_FUN_EXPORT PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC __glewFlushVertexArrayRangeAPPLE;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYPARAMETERIAPPLEPROC __glewVertexArrayParameteriAPPLE;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYRANGEAPPLEPROC __glewVertexArrayRangeAPPLE;\r
-\r
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBAPPLEPROC __glewDisableVertexAttribAPPLE;\r
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBAPPLEPROC __glewEnableVertexAttribAPPLE;\r
-GLEW_FUN_EXPORT PFNGLISVERTEXATTRIBENABLEDAPPLEPROC __glewIsVertexAttribEnabledAPPLE;\r
-GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB1DAPPLEPROC __glewMapVertexAttrib1dAPPLE;\r
-GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB1FAPPLEPROC __glewMapVertexAttrib1fAPPLE;\r
-GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB2DAPPLEPROC __glewMapVertexAttrib2dAPPLE;\r
-GLEW_FUN_EXPORT PFNGLMAPVERTEXATTRIB2FAPPLEPROC __glewMapVertexAttrib2fAPPLE;\r
-\r
-GLEW_FUN_EXPORT PFNGLCLEARDEPTHFPROC __glewClearDepthf;\r
-GLEW_FUN_EXPORT PFNGLDEPTHRANGEFPROC __glewDepthRangef;\r
-GLEW_FUN_EXPORT PFNGLGETSHADERPRECISIONFORMATPROC __glewGetShaderPrecisionFormat;\r
-GLEW_FUN_EXPORT PFNGLRELEASESHADERCOMPILERPROC __glewReleaseShaderCompiler;\r
-GLEW_FUN_EXPORT PFNGLSHADERBINARYPROC __glewShaderBinary;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC __glewDrawArraysInstancedBaseInstance;\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC __glewDrawElementsInstancedBaseInstance;\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC __glewDrawElementsInstancedBaseVertexBaseInstance;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONINDEXEDPROC __glewBindFragDataLocationIndexed;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGDATAINDEXPROC __glewGetFragDataIndex;\r
-\r
-GLEW_FUN_EXPORT PFNGLCREATESYNCFROMCLEVENTARBPROC __glewCreateSyncFromCLeventARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLCLAMPCOLORARBPROC __glewClampColorARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOPYBUFFERSUBDATAPROC __glewCopyBufferSubData;\r
-\r
-GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECALLBACKARBPROC __glewDebugMessageCallbackARB;\r
-GLEW_FUN_EXPORT PFNGLDEBUGMESSAGECONTROLARBPROC __glewDebugMessageControlARB;\r
-GLEW_FUN_EXPORT PFNGLDEBUGMESSAGEINSERTARBPROC __glewDebugMessageInsertARB;\r
-GLEW_FUN_EXPORT PFNGLGETDEBUGMESSAGELOGARBPROC __glewGetDebugMessageLogARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWBUFFERSARBPROC __glewDrawBuffersARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEIARBPROC __glewBlendEquationSeparateiARB;\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONIARBPROC __glewBlendEquationiARB;\r
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEIARBPROC __glewBlendFuncSeparateiARB;\r
-GLEW_FUN_EXPORT PFNGLBLENDFUNCIARBPROC __glewBlendFunciARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSBASEVERTEXPROC __glewDrawElementsBaseVertex;\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC __glewDrawElementsInstancedBaseVertex;\r
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC __glewDrawRangeElementsBaseVertex;\r
-GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC __glewMultiDrawElementsBaseVertex;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSINDIRECTPROC __glewDrawArraysIndirect;\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINDIRECTPROC __glewDrawElementsIndirect;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFERPROC __glewBindFramebuffer;\r
-GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFERPROC __glewBindRenderbuffer;\r
-GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFERPROC __glewBlitFramebuffer;\r
-GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSPROC __glewCheckFramebufferStatus;\r
-GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSPROC __glewDeleteFramebuffers;\r
-GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSPROC __glewDeleteRenderbuffers;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFERPROC __glewFramebufferRenderbuffer;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE1DPROC __glewFramebufferTexture1D;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DPROC __glewFramebufferTexture2D;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DPROC __glewFramebufferTexture3D;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERPROC __glewFramebufferTextureLayer;\r
-GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSPROC __glewGenFramebuffers;\r
-GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSPROC __glewGenRenderbuffers;\r
-GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPPROC __glewGenerateMipmap;\r
-GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC __glewGetFramebufferAttachmentParameteriv;\r
-GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVPROC __glewGetRenderbufferParameteriv;\r
-GLEW_FUN_EXPORT PFNGLISFRAMEBUFFERPROC __glewIsFramebuffer;\r
-GLEW_FUN_EXPORT PFNGLISRENDERBUFFERPROC __glewIsRenderbuffer;\r
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEPROC __glewRenderbufferStorage;\r
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC __glewRenderbufferStorageMultisample;\r
-\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREARBPROC __glewFramebufferTextureARB;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREFACEARBPROC __glewFramebufferTextureFaceARB;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYERARBPROC __glewFramebufferTextureLayerARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIARBPROC __glewProgramParameteriARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMBINARYPROC __glewGetProgramBinary;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMBINARYPROC __glewProgramBinary;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIPROC __glewProgramParameteri;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMDVPROC __glewGetUniformdv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1DEXTPROC __glewProgramUniform1dEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1DVEXTPROC __glewProgramUniform1dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2DEXTPROC __glewProgramUniform2dEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2DVEXTPROC __glewProgramUniform2dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3DEXTPROC __glewProgramUniform3dEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3DVEXTPROC __glewProgramUniform3dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4DEXTPROC __glewProgramUniform4dEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4DVEXTPROC __glewProgramUniform4dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2DVEXTPROC __glewProgramUniformMatrix2dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3DVEXTPROC __glewProgramUniformMatrix2x3dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4DVEXTPROC __glewProgramUniformMatrix2x4dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3DVEXTPROC __glewProgramUniformMatrix3dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2DVEXTPROC __glewProgramUniformMatrix3x2dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4DVEXTPROC __glewProgramUniformMatrix3x4dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4DVEXTPROC __glewProgramUniformMatrix4dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2DVEXTPROC __glewProgramUniformMatrix4x2dvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3DVEXTPROC __glewProgramUniformMatrix4x3dvEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1DPROC __glewUniform1d;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1DVPROC __glewUniform1dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2DPROC __glewUniform2d;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2DVPROC __glewUniform2dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3DPROC __glewUniform3d;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3DVPROC __glewUniform3dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4DPROC __glewUniform4d;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4DVPROC __glewUniform4dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2DVPROC __glewUniformMatrix2dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X3DVPROC __glewUniformMatrix2x3dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2X4DVPROC __glewUniformMatrix2x4dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3DVPROC __glewUniformMatrix3dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X2DVPROC __glewUniformMatrix3x2dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3X4DVPROC __glewUniformMatrix3x4dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4DVPROC __glewUniformMatrix4dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X2DVPROC __glewUniformMatrix4x2dv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4X3DVPROC __glewUniformMatrix4x3dv;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLORSUBTABLEPROC __glewColorSubTable;\r
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPROC __glewColorTable;\r
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERFVPROC __glewColorTableParameterfv;\r
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERIVPROC __glewColorTableParameteriv;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER1DPROC __glewConvolutionFilter1D;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER2DPROC __glewConvolutionFilter2D;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFPROC __glewConvolutionParameterf;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFVPROC __glewConvolutionParameterfv;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIPROC __glewConvolutionParameteri;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIVPROC __glewConvolutionParameteriv;\r
-GLEW_FUN_EXPORT PFNGLCOPYCOLORSUBTABLEPROC __glewCopyColorSubTable;\r
-GLEW_FUN_EXPORT PFNGLCOPYCOLORTABLEPROC __glewCopyColorTable;\r
-GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER1DPROC __glewCopyConvolutionFilter1D;\r
-GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER2DPROC __glewCopyConvolutionFilter2D;\r
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPROC __glewGetColorTable;\r
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVPROC __glewGetColorTableParameterfv;\r
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVPROC __glewGetColorTableParameteriv;\r
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONFILTERPROC __glewGetConvolutionFilter;\r
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERFVPROC __glewGetConvolutionParameterfv;\r
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERIVPROC __glewGetConvolutionParameteriv;\r
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPROC __glewGetHistogram;\r
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERFVPROC __glewGetHistogramParameterfv;\r
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERIVPROC __glewGetHistogramParameteriv;\r
-GLEW_FUN_EXPORT PFNGLGETMINMAXPROC __glewGetMinmax;\r
-GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERFVPROC __glewGetMinmaxParameterfv;\r
-GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERIVPROC __glewGetMinmaxParameteriv;\r
-GLEW_FUN_EXPORT PFNGLGETSEPARABLEFILTERPROC __glewGetSeparableFilter;\r
-GLEW_FUN_EXPORT PFNGLHISTOGRAMPROC __glewHistogram;\r
-GLEW_FUN_EXPORT PFNGLMINMAXPROC __glewMinmax;\r
-GLEW_FUN_EXPORT PFNGLRESETHISTOGRAMPROC __glewResetHistogram;\r
-GLEW_FUN_EXPORT PFNGLRESETMINMAXPROC __glewResetMinmax;\r
-GLEW_FUN_EXPORT PFNGLSEPARABLEFILTER2DPROC __glewSeparableFilter2D;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDARBPROC __glewDrawArraysInstancedARB;\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDARBPROC __glewDrawElementsInstancedARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBDIVISORARBPROC __glewVertexAttribDivisorARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETINTERNALFORMATIVPROC __glewGetInternalformativ;\r
-\r
-GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDBUFFERRANGEPROC __glewFlushMappedBufferRange;\r
-GLEW_FUN_EXPORT PFNGLMAPBUFFERRANGEPROC __glewMapBufferRange;\r
-\r
-GLEW_FUN_EXPORT PFNGLCURRENTPALETTEMATRIXARBPROC __glewCurrentPaletteMatrixARB;\r
-GLEW_FUN_EXPORT PFNGLMATRIXINDEXPOINTERARBPROC __glewMatrixIndexPointerARB;\r
-GLEW_FUN_EXPORT PFNGLMATRIXINDEXUBVARBPROC __glewMatrixIndexubvARB;\r
-GLEW_FUN_EXPORT PFNGLMATRIXINDEXUIVARBPROC __glewMatrixIndexuivARB;\r
-GLEW_FUN_EXPORT PFNGLMATRIXINDEXUSVARBPROC __glewMatrixIndexusvARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLSAMPLECOVERAGEARBPROC __glewSampleCoverageARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLACTIVETEXTUREARBPROC __glewActiveTextureARB;\r
-GLEW_FUN_EXPORT PFNGLCLIENTACTIVETEXTUREARBPROC __glewClientActiveTextureARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DARBPROC __glewMultiTexCoord1dARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1DVARBPROC __glewMultiTexCoord1dvARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FARBPROC __glewMultiTexCoord1fARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1FVARBPROC __glewMultiTexCoord1fvARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IARBPROC __glewMultiTexCoord1iARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1IVARBPROC __glewMultiTexCoord1ivARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SARBPROC __glewMultiTexCoord1sARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1SVARBPROC __glewMultiTexCoord1svARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DARBPROC __glewMultiTexCoord2dARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2DVARBPROC __glewMultiTexCoord2dvARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FARBPROC __glewMultiTexCoord2fARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2FVARBPROC __glewMultiTexCoord2fvARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IARBPROC __glewMultiTexCoord2iARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2IVARBPROC __glewMultiTexCoord2ivARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SARBPROC __glewMultiTexCoord2sARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2SVARBPROC __glewMultiTexCoord2svARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DARBPROC __glewMultiTexCoord3dARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3DVARBPROC __glewMultiTexCoord3dvARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FARBPROC __glewMultiTexCoord3fARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3FVARBPROC __glewMultiTexCoord3fvARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IARBPROC __glewMultiTexCoord3iARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3IVARBPROC __glewMultiTexCoord3ivARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SARBPROC __glewMultiTexCoord3sARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3SVARBPROC __glewMultiTexCoord3svARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DARBPROC __glewMultiTexCoord4dARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4DVARBPROC __glewMultiTexCoord4dvARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FARBPROC __glewMultiTexCoord4fARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4FVARBPROC __glewMultiTexCoord4fvARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IARBPROC __glewMultiTexCoord4iARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4IVARBPROC __glewMultiTexCoord4ivARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SARBPROC __glewMultiTexCoord4sARB;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4SVARBPROC __glewMultiTexCoord4svARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINQUERYARBPROC __glewBeginQueryARB;\r
-GLEW_FUN_EXPORT PFNGLDELETEQUERIESARBPROC __glewDeleteQueriesARB;\r
-GLEW_FUN_EXPORT PFNGLENDQUERYARBPROC __glewEndQueryARB;\r
-GLEW_FUN_EXPORT PFNGLGENQUERIESARBPROC __glewGenQueriesARB;\r
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTIVARBPROC __glewGetQueryObjectivARB;\r
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUIVARBPROC __glewGetQueryObjectuivARB;\r
-GLEW_FUN_EXPORT PFNGLGETQUERYIVARBPROC __glewGetQueryivARB;\r
-GLEW_FUN_EXPORT PFNGLISQUERYARBPROC __glewIsQueryARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFARBPROC __glewPointParameterfARB;\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVARBPROC __glewPointParameterfvARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLPROVOKINGVERTEXPROC __glewProvokingVertex;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETGRAPHICSRESETSTATUSARBPROC __glewGetGraphicsResetStatusARB;\r
-GLEW_FUN_EXPORT PFNGLGETNCOLORTABLEARBPROC __glewGetnColorTableARB;\r
-GLEW_FUN_EXPORT PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC __glewGetnCompressedTexImageARB;\r
-GLEW_FUN_EXPORT PFNGLGETNCONVOLUTIONFILTERARBPROC __glewGetnConvolutionFilterARB;\r
-GLEW_FUN_EXPORT PFNGLGETNHISTOGRAMARBPROC __glewGetnHistogramARB;\r
-GLEW_FUN_EXPORT PFNGLGETNMAPDVARBPROC __glewGetnMapdvARB;\r
-GLEW_FUN_EXPORT PFNGLGETNMAPFVARBPROC __glewGetnMapfvARB;\r
-GLEW_FUN_EXPORT PFNGLGETNMAPIVARBPROC __glewGetnMapivARB;\r
-GLEW_FUN_EXPORT PFNGLGETNMINMAXARBPROC __glewGetnMinmaxARB;\r
-GLEW_FUN_EXPORT PFNGLGETNPIXELMAPFVARBPROC __glewGetnPixelMapfvARB;\r
-GLEW_FUN_EXPORT PFNGLGETNPIXELMAPUIVARBPROC __glewGetnPixelMapuivARB;\r
-GLEW_FUN_EXPORT PFNGLGETNPIXELMAPUSVARBPROC __glewGetnPixelMapusvARB;\r
-GLEW_FUN_EXPORT PFNGLGETNPOLYGONSTIPPLEARBPROC __glewGetnPolygonStippleARB;\r
-GLEW_FUN_EXPORT PFNGLGETNSEPARABLEFILTERARBPROC __glewGetnSeparableFilterARB;\r
-GLEW_FUN_EXPORT PFNGLGETNTEXIMAGEARBPROC __glewGetnTexImageARB;\r
-GLEW_FUN_EXPORT PFNGLGETNUNIFORMDVARBPROC __glewGetnUniformdvARB;\r
-GLEW_FUN_EXPORT PFNGLGETNUNIFORMFVARBPROC __glewGetnUniformfvARB;\r
-GLEW_FUN_EXPORT PFNGLGETNUNIFORMIVARBPROC __glewGetnUniformivARB;\r
-GLEW_FUN_EXPORT PFNGLGETNUNIFORMUIVARBPROC __glewGetnUniformuivARB;\r
-GLEW_FUN_EXPORT PFNGLREADNPIXELSARBPROC __glewReadnPixelsARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLMINSAMPLESHADINGARBPROC __glewMinSampleShadingARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDSAMPLERPROC __glewBindSampler;\r
-GLEW_FUN_EXPORT PFNGLDELETESAMPLERSPROC __glewDeleteSamplers;\r
-GLEW_FUN_EXPORT PFNGLGENSAMPLERSPROC __glewGenSamplers;\r
-GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIIVPROC __glewGetSamplerParameterIiv;\r
-GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIUIVPROC __glewGetSamplerParameterIuiv;\r
-GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERFVPROC __glewGetSamplerParameterfv;\r
-GLEW_FUN_EXPORT PFNGLGETSAMPLERPARAMETERIVPROC __glewGetSamplerParameteriv;\r
-GLEW_FUN_EXPORT PFNGLISSAMPLERPROC __glewIsSampler;\r
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIIVPROC __glewSamplerParameterIiv;\r
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIUIVPROC __glewSamplerParameterIuiv;\r
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERFPROC __glewSamplerParameterf;\r
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERFVPROC __glewSamplerParameterfv;\r
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIPROC __glewSamplerParameteri;\r
-GLEW_FUN_EXPORT PFNGLSAMPLERPARAMETERIVPROC __glewSamplerParameteriv;\r
-\r
-GLEW_FUN_EXPORT PFNGLACTIVESHADERPROGRAMPROC __glewActiveShaderProgram;\r
-GLEW_FUN_EXPORT PFNGLBINDPROGRAMPIPELINEPROC __glewBindProgramPipeline;\r
-GLEW_FUN_EXPORT PFNGLCREATESHADERPROGRAMVPROC __glewCreateShaderProgramv;\r
-GLEW_FUN_EXPORT PFNGLDELETEPROGRAMPIPELINESPROC __glewDeleteProgramPipelines;\r
-GLEW_FUN_EXPORT PFNGLGENPROGRAMPIPELINESPROC __glewGenProgramPipelines;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMPIPELINEINFOLOGPROC __glewGetProgramPipelineInfoLog;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMPIPELINEIVPROC __glewGetProgramPipelineiv;\r
-GLEW_FUN_EXPORT PFNGLISPROGRAMPIPELINEPROC __glewIsProgramPipeline;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1DPROC __glewProgramUniform1d;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1DVPROC __glewProgramUniform1dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FPROC __glewProgramUniform1f;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FVPROC __glewProgramUniform1fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IPROC __glewProgramUniform1i;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IVPROC __glewProgramUniform1iv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIPROC __glewProgramUniform1ui;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIVPROC __glewProgramUniform1uiv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2DPROC __glewProgramUniform2d;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2DVPROC __glewProgramUniform2dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FPROC __glewProgramUniform2f;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FVPROC __glewProgramUniform2fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IPROC __glewProgramUniform2i;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IVPROC __glewProgramUniform2iv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIPROC __glewProgramUniform2ui;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIVPROC __glewProgramUniform2uiv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3DPROC __glewProgramUniform3d;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3DVPROC __glewProgramUniform3dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FPROC __glewProgramUniform3f;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FVPROC __glewProgramUniform3fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IPROC __glewProgramUniform3i;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IVPROC __glewProgramUniform3iv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIPROC __glewProgramUniform3ui;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIVPROC __glewProgramUniform3uiv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4DPROC __glewProgramUniform4d;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4DVPROC __glewProgramUniform4dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FPROC __glewProgramUniform4f;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FVPROC __glewProgramUniform4fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IPROC __glewProgramUniform4i;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IVPROC __glewProgramUniform4iv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIPROC __glewProgramUniform4ui;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIVPROC __glewProgramUniform4uiv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2DVPROC __glewProgramUniformMatrix2dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2FVPROC __glewProgramUniformMatrix2fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC __glewProgramUniformMatrix2x3dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC __glewProgramUniformMatrix2x3fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC __glewProgramUniformMatrix2x4dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC __glewProgramUniformMatrix2x4fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3DVPROC __glewProgramUniformMatrix3dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3FVPROC __glewProgramUniformMatrix3fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC __glewProgramUniformMatrix3x2dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC __glewProgramUniformMatrix3x2fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC __glewProgramUniformMatrix3x4dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC __glewProgramUniformMatrix3x4fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4DVPROC __glewProgramUniformMatrix4dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4FVPROC __glewProgramUniformMatrix4fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC __glewProgramUniformMatrix4x2dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC __glewProgramUniformMatrix4x2fv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC __glewProgramUniformMatrix4x3dv;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC __glewProgramUniformMatrix4x3fv;\r
-GLEW_FUN_EXPORT PFNGLUSEPROGRAMSTAGESPROC __glewUseProgramStages;\r
-GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMPIPELINEPROC __glewValidateProgramPipeline;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC __glewGetActiveAtomicCounterBufferiv;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDIMAGETEXTUREPROC __glewBindImageTexture;\r
-GLEW_FUN_EXPORT PFNGLMEMORYBARRIERPROC __glewMemoryBarrier;\r
-\r
-GLEW_FUN_EXPORT PFNGLATTACHOBJECTARBPROC __glewAttachObjectARB;\r
-GLEW_FUN_EXPORT PFNGLCOMPILESHADERARBPROC __glewCompileShaderARB;\r
-GLEW_FUN_EXPORT PFNGLCREATEPROGRAMOBJECTARBPROC __glewCreateProgramObjectARB;\r
-GLEW_FUN_EXPORT PFNGLCREATESHADEROBJECTARBPROC __glewCreateShaderObjectARB;\r
-GLEW_FUN_EXPORT PFNGLDELETEOBJECTARBPROC __glewDeleteObjectARB;\r
-GLEW_FUN_EXPORT PFNGLDETACHOBJECTARBPROC __glewDetachObjectARB;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMARBPROC __glewGetActiveUniformARB;\r
-GLEW_FUN_EXPORT PFNGLGETATTACHEDOBJECTSARBPROC __glewGetAttachedObjectsARB;\r
-GLEW_FUN_EXPORT PFNGLGETHANDLEARBPROC __glewGetHandleARB;\r
-GLEW_FUN_EXPORT PFNGLGETINFOLOGARBPROC __glewGetInfoLogARB;\r
-GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERFVARBPROC __glewGetObjectParameterfvARB;\r
-GLEW_FUN_EXPORT PFNGLGETOBJECTPARAMETERIVARBPROC __glewGetObjectParameterivARB;\r
-GLEW_FUN_EXPORT PFNGLGETSHADERSOURCEARBPROC __glewGetShaderSourceARB;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMLOCATIONARBPROC __glewGetUniformLocationARB;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMFVARBPROC __glewGetUniformfvARB;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMIVARBPROC __glewGetUniformivARB;\r
-GLEW_FUN_EXPORT PFNGLLINKPROGRAMARBPROC __glewLinkProgramARB;\r
-GLEW_FUN_EXPORT PFNGLSHADERSOURCEARBPROC __glewShaderSourceARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1FARBPROC __glewUniform1fARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1FVARBPROC __glewUniform1fvARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1IARBPROC __glewUniform1iARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1IVARBPROC __glewUniform1ivARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2FARBPROC __glewUniform2fARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2FVARBPROC __glewUniform2fvARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2IARBPROC __glewUniform2iARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2IVARBPROC __glewUniform2ivARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3FARBPROC __glewUniform3fARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3FVARBPROC __glewUniform3fvARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3IARBPROC __glewUniform3iARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3IVARBPROC __glewUniform3ivARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4FARBPROC __glewUniform4fARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4FVARBPROC __glewUniform4fvARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4IARBPROC __glewUniform4iARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4IVARBPROC __glewUniform4ivARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX2FVARBPROC __glewUniformMatrix2fvARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX3FVARBPROC __glewUniformMatrix3fvARB;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMMATRIX4FVARBPROC __glewUniformMatrix4fvARB;\r
-GLEW_FUN_EXPORT PFNGLUSEPROGRAMOBJECTARBPROC __glewUseProgramObjectARB;\r
-GLEW_FUN_EXPORT PFNGLVALIDATEPROGRAMARBPROC __glewValidateProgramARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINENAMEPROC __glewGetActiveSubroutineName;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC __glewGetActiveSubroutineUniformName;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC __glewGetActiveSubroutineUniformiv;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMSTAGEIVPROC __glewGetProgramStageiv;\r
-GLEW_FUN_EXPORT PFNGLGETSUBROUTINEINDEXPROC __glewGetSubroutineIndex;\r
-GLEW_FUN_EXPORT PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC __glewGetSubroutineUniformLocation;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMSUBROUTINEUIVPROC __glewGetUniformSubroutineuiv;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMSUBROUTINESUIVPROC __glewUniformSubroutinesuiv;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOMPILESHADERINCLUDEARBPROC __glewCompileShaderIncludeARB;\r
-GLEW_FUN_EXPORT PFNGLDELETENAMEDSTRINGARBPROC __glewDeleteNamedStringARB;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDSTRINGARBPROC __glewGetNamedStringARB;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDSTRINGIVARBPROC __glewGetNamedStringivARB;\r
-GLEW_FUN_EXPORT PFNGLISNAMEDSTRINGARBPROC __glewIsNamedStringARB;\r
-GLEW_FUN_EXPORT PFNGLNAMEDSTRINGARBPROC __glewNamedStringARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLCLIENTWAITSYNCPROC __glewClientWaitSync;\r
-GLEW_FUN_EXPORT PFNGLDELETESYNCPROC __glewDeleteSync;\r
-GLEW_FUN_EXPORT PFNGLFENCESYNCPROC __glewFenceSync;\r
-GLEW_FUN_EXPORT PFNGLGETINTEGER64VPROC __glewGetInteger64v;\r
-GLEW_FUN_EXPORT PFNGLGETSYNCIVPROC __glewGetSynciv;\r
-GLEW_FUN_EXPORT PFNGLISSYNCPROC __glewIsSync;\r
-GLEW_FUN_EXPORT PFNGLWAITSYNCPROC __glewWaitSync;\r
-\r
-GLEW_FUN_EXPORT PFNGLPATCHPARAMETERFVPROC __glewPatchParameterfv;\r
-GLEW_FUN_EXPORT PFNGLPATCHPARAMETERIPROC __glewPatchParameteri;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXBUFFERARBPROC __glewTexBufferARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE1DARBPROC __glewCompressedTexImage1DARB;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE2DARBPROC __glewCompressedTexImage2DARB;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXIMAGE3DARBPROC __glewCompressedTexImage3DARB;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC __glewCompressedTexSubImage1DARB;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC __glewCompressedTexSubImage2DARB;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC __glewCompressedTexSubImage3DARB;\r
-GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXIMAGEARBPROC __glewGetCompressedTexImageARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETMULTISAMPLEFVPROC __glewGetMultisamplefv;\r
-GLEW_FUN_EXPORT PFNGLSAMPLEMASKIPROC __glewSampleMaski;\r
-GLEW_FUN_EXPORT PFNGLTEXIMAGE2DMULTISAMPLEPROC __glewTexImage2DMultisample;\r
-GLEW_FUN_EXPORT PFNGLTEXIMAGE3DMULTISAMPLEPROC __glewTexImage3DMultisample;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXSTORAGE1DPROC __glewTexStorage1D;\r
-GLEW_FUN_EXPORT PFNGLTEXSTORAGE2DPROC __glewTexStorage2D;\r
-GLEW_FUN_EXPORT PFNGLTEXSTORAGE3DPROC __glewTexStorage3D;\r
-GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE1DEXTPROC __glewTextureStorage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE2DEXTPROC __glewTextureStorage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTURESTORAGE3DEXTPROC __glewTextureStorage3DEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VPROC __glewGetQueryObjecti64v;\r
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VPROC __glewGetQueryObjectui64v;\r
-GLEW_FUN_EXPORT PFNGLQUERYCOUNTERPROC __glewQueryCounter;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDTRANSFORMFEEDBACKPROC __glewBindTransformFeedback;\r
-GLEW_FUN_EXPORT PFNGLDELETETRANSFORMFEEDBACKSPROC __glewDeleteTransformFeedbacks;\r
-GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKPROC __glewDrawTransformFeedback;\r
-GLEW_FUN_EXPORT PFNGLGENTRANSFORMFEEDBACKSPROC __glewGenTransformFeedbacks;\r
-GLEW_FUN_EXPORT PFNGLISTRANSFORMFEEDBACKPROC __glewIsTransformFeedback;\r
-GLEW_FUN_EXPORT PFNGLPAUSETRANSFORMFEEDBACKPROC __glewPauseTransformFeedback;\r
-GLEW_FUN_EXPORT PFNGLRESUMETRANSFORMFEEDBACKPROC __glewResumeTransformFeedback;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINQUERYINDEXEDPROC __glewBeginQueryIndexed;\r
-GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC __glewDrawTransformFeedbackStream;\r
-GLEW_FUN_EXPORT PFNGLENDQUERYINDEXEDPROC __glewEndQueryIndexed;\r
-GLEW_FUN_EXPORT PFNGLGETQUERYINDEXEDIVPROC __glewGetQueryIndexediv;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC __glewDrawTransformFeedbackInstanced;\r
-GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC __glewDrawTransformFeedbackStreamInstanced;\r
-\r
-GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXDARBPROC __glewLoadTransposeMatrixdARB;\r
-GLEW_FUN_EXPORT PFNGLLOADTRANSPOSEMATRIXFARBPROC __glewLoadTransposeMatrixfARB;\r
-GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXDARBPROC __glewMultTransposeMatrixdARB;\r
-GLEW_FUN_EXPORT PFNGLMULTTRANSPOSEMATRIXFARBPROC __glewMultTransposeMatrixfARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFERBASEPROC __glewBindBufferBase;\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGEPROC __glewBindBufferRange;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC __glewGetActiveUniformBlockName;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMBLOCKIVPROC __glewGetActiveUniformBlockiv;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMNAMEPROC __glewGetActiveUniformName;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEUNIFORMSIVPROC __glewGetActiveUniformsiv;\r
-GLEW_FUN_EXPORT PFNGLGETINTEGERI_VPROC __glewGetIntegeri_v;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMBLOCKINDEXPROC __glewGetUniformBlockIndex;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMINDICESPROC __glewGetUniformIndices;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMBLOCKBINDINGPROC __glewUniformBlockBinding;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDVERTEXARRAYPROC __glewBindVertexArray;\r
-GLEW_FUN_EXPORT PFNGLDELETEVERTEXARRAYSPROC __glewDeleteVertexArrays;\r
-GLEW_FUN_EXPORT PFNGLGENVERTEXARRAYSPROC __glewGenVertexArrays;\r
-GLEW_FUN_EXPORT PFNGLISVERTEXARRAYPROC __glewIsVertexArray;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLDVPROC __glewGetVertexAttribLdv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DPROC __glewVertexAttribL1d;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DVPROC __glewVertexAttribL1dv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DPROC __glewVertexAttribL2d;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DVPROC __glewVertexAttribL2dv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DPROC __glewVertexAttribL3d;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DVPROC __glewVertexAttribL3dv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DPROC __glewVertexAttribL4d;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DVPROC __glewVertexAttribL4dv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLPOINTERPROC __glewVertexAttribLPointer;\r
-\r
-GLEW_FUN_EXPORT PFNGLVERTEXBLENDARBPROC __glewVertexBlendARB;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTPOINTERARBPROC __glewWeightPointerARB;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTBVARBPROC __glewWeightbvARB;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTDVARBPROC __glewWeightdvARB;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTFVARBPROC __glewWeightfvARB;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTIVARBPROC __glewWeightivARB;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTSVARBPROC __glewWeightsvARB;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTUBVARBPROC __glewWeightubvARB;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTUIVARBPROC __glewWeightuivARB;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTUSVARBPROC __glewWeightusvARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFERARBPROC __glewBindBufferARB;\r
-GLEW_FUN_EXPORT PFNGLBUFFERDATAARBPROC __glewBufferDataARB;\r
-GLEW_FUN_EXPORT PFNGLBUFFERSUBDATAARBPROC __glewBufferSubDataARB;\r
-GLEW_FUN_EXPORT PFNGLDELETEBUFFERSARBPROC __glewDeleteBuffersARB;\r
-GLEW_FUN_EXPORT PFNGLGENBUFFERSARBPROC __glewGenBuffersARB;\r
-GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERIVARBPROC __glewGetBufferParameterivARB;\r
-GLEW_FUN_EXPORT PFNGLGETBUFFERPOINTERVARBPROC __glewGetBufferPointervARB;\r
-GLEW_FUN_EXPORT PFNGLGETBUFFERSUBDATAARBPROC __glewGetBufferSubDataARB;\r
-GLEW_FUN_EXPORT PFNGLISBUFFERARBPROC __glewIsBufferARB;\r
-GLEW_FUN_EXPORT PFNGLMAPBUFFERARBPROC __glewMapBufferARB;\r
-GLEW_FUN_EXPORT PFNGLUNMAPBUFFERARBPROC __glewUnmapBufferARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDPROGRAMARBPROC __glewBindProgramARB;\r
-GLEW_FUN_EXPORT PFNGLDELETEPROGRAMSARBPROC __glewDeleteProgramsARB;\r
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXATTRIBARRAYARBPROC __glewDisableVertexAttribArrayARB;\r
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXATTRIBARRAYARBPROC __glewEnableVertexAttribArrayARB;\r
-GLEW_FUN_EXPORT PFNGLGENPROGRAMSARBPROC __glewGenProgramsARB;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMENVPARAMETERDVARBPROC __glewGetProgramEnvParameterdvARB;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMENVPARAMETERFVARBPROC __glewGetProgramEnvParameterfvARB;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC __glewGetProgramLocalParameterdvARB;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC __glewGetProgramLocalParameterfvARB;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMSTRINGARBPROC __glewGetProgramStringARB;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMIVARBPROC __glewGetProgramivARB;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVARBPROC __glewGetVertexAttribPointervARB;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVARBPROC __glewGetVertexAttribdvARB;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVARBPROC __glewGetVertexAttribfvARB;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVARBPROC __glewGetVertexAttribivARB;\r
-GLEW_FUN_EXPORT PFNGLISPROGRAMARBPROC __glewIsProgramARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4DARBPROC __glewProgramEnvParameter4dARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4DVARBPROC __glewProgramEnvParameter4dvARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4FARBPROC __glewProgramEnvParameter4fARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETER4FVARBPROC __glewProgramEnvParameter4fvARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4DARBPROC __glewProgramLocalParameter4dARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4DVARBPROC __glewProgramLocalParameter4dvARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4FARBPROC __glewProgramLocalParameter4fARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETER4FVARBPROC __glewProgramLocalParameter4fvARB;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMSTRINGARBPROC __glewProgramStringARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DARBPROC __glewVertexAttrib1dARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVARBPROC __glewVertexAttrib1dvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FARBPROC __glewVertexAttrib1fARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVARBPROC __glewVertexAttrib1fvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SARBPROC __glewVertexAttrib1sARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVARBPROC __glewVertexAttrib1svARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DARBPROC __glewVertexAttrib2dARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVARBPROC __glewVertexAttrib2dvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FARBPROC __glewVertexAttrib2fARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVARBPROC __glewVertexAttrib2fvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SARBPROC __glewVertexAttrib2sARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVARBPROC __glewVertexAttrib2svARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DARBPROC __glewVertexAttrib3dARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVARBPROC __glewVertexAttrib3dvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FARBPROC __glewVertexAttrib3fARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVARBPROC __glewVertexAttrib3fvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SARBPROC __glewVertexAttrib3sARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVARBPROC __glewVertexAttrib3svARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NBVARBPROC __glewVertexAttrib4NbvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NIVARBPROC __glewVertexAttrib4NivARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NSVARBPROC __glewVertexAttrib4NsvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBARBPROC __glewVertexAttrib4NubARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUBVARBPROC __glewVertexAttrib4NubvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUIVARBPROC __glewVertexAttrib4NuivARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4NUSVARBPROC __glewVertexAttrib4NusvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4BVARBPROC __glewVertexAttrib4bvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DARBPROC __glewVertexAttrib4dARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVARBPROC __glewVertexAttrib4dvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FARBPROC __glewVertexAttrib4fARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVARBPROC __glewVertexAttrib4fvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4IVARBPROC __glewVertexAttrib4ivARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SARBPROC __glewVertexAttrib4sARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVARBPROC __glewVertexAttrib4svARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVARBPROC __glewVertexAttrib4ubvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UIVARBPROC __glewVertexAttrib4uivARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4USVARBPROC __glewVertexAttrib4usvARB;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERARBPROC __glewVertexAttribPointerARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDATTRIBLOCATIONARBPROC __glewBindAttribLocationARB;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEATTRIBARBPROC __glewGetActiveAttribARB;\r
-GLEW_FUN_EXPORT PFNGLGETATTRIBLOCATIONARBPROC __glewGetAttribLocationARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLORP3UIPROC __glewColorP3ui;\r
-GLEW_FUN_EXPORT PFNGLCOLORP3UIVPROC __glewColorP3uiv;\r
-GLEW_FUN_EXPORT PFNGLCOLORP4UIPROC __glewColorP4ui;\r
-GLEW_FUN_EXPORT PFNGLCOLORP4UIVPROC __glewColorP4uiv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP1UIPROC __glewMultiTexCoordP1ui;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP1UIVPROC __glewMultiTexCoordP1uiv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP2UIPROC __glewMultiTexCoordP2ui;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP2UIVPROC __glewMultiTexCoordP2uiv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP3UIPROC __glewMultiTexCoordP3ui;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP3UIVPROC __glewMultiTexCoordP3uiv;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP4UIPROC __glewMultiTexCoordP4ui;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDP4UIVPROC __glewMultiTexCoordP4uiv;\r
-GLEW_FUN_EXPORT PFNGLNORMALP3UIPROC __glewNormalP3ui;\r
-GLEW_FUN_EXPORT PFNGLNORMALP3UIVPROC __glewNormalP3uiv;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORP3UIPROC __glewSecondaryColorP3ui;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORP3UIVPROC __glewSecondaryColorP3uiv;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDP1UIPROC __glewTexCoordP1ui;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDP1UIVPROC __glewTexCoordP1uiv;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDP2UIPROC __glewTexCoordP2ui;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDP2UIVPROC __glewTexCoordP2uiv;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDP3UIPROC __glewTexCoordP3ui;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDP3UIVPROC __glewTexCoordP3uiv;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDP4UIPROC __glewTexCoordP4ui;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDP4UIVPROC __glewTexCoordP4uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP1UIPROC __glewVertexAttribP1ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP1UIVPROC __glewVertexAttribP1uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP2UIPROC __glewVertexAttribP2ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP2UIVPROC __glewVertexAttribP2uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP3UIPROC __glewVertexAttribP3ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP3UIVPROC __glewVertexAttribP3uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP4UIPROC __glewVertexAttribP4ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBP4UIVPROC __glewVertexAttribP4uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXP2UIPROC __glewVertexP2ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXP2UIVPROC __glewVertexP2uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXP3UIPROC __glewVertexP3ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXP3UIVPROC __glewVertexP3uiv;\r
-GLEW_FUN_EXPORT PFNGLVERTEXP4UIPROC __glewVertexP4ui;\r
-GLEW_FUN_EXPORT PFNGLVERTEXP4UIVPROC __glewVertexP4uiv;\r
-\r
-GLEW_FUN_EXPORT PFNGLDEPTHRANGEARRAYVPROC __glewDepthRangeArrayv;\r
-GLEW_FUN_EXPORT PFNGLDEPTHRANGEINDEXEDPROC __glewDepthRangeIndexed;\r
-GLEW_FUN_EXPORT PFNGLGETDOUBLEI_VPROC __glewGetDoublei_v;\r
-GLEW_FUN_EXPORT PFNGLGETFLOATI_VPROC __glewGetFloati_v;\r
-GLEW_FUN_EXPORT PFNGLSCISSORARRAYVPROC __glewScissorArrayv;\r
-GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDPROC __glewScissorIndexed;\r
-GLEW_FUN_EXPORT PFNGLSCISSORINDEXEDVPROC __glewScissorIndexedv;\r
-GLEW_FUN_EXPORT PFNGLVIEWPORTARRAYVPROC __glewViewportArrayv;\r
-GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFPROC __glewViewportIndexedf;\r
-GLEW_FUN_EXPORT PFNGLVIEWPORTINDEXEDFVPROC __glewViewportIndexedfv;\r
-\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DARBPROC __glewWindowPos2dARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVARBPROC __glewWindowPos2dvARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FARBPROC __glewWindowPos2fARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVARBPROC __glewWindowPos2fvARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IARBPROC __glewWindowPos2iARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVARBPROC __glewWindowPos2ivARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SARBPROC __glewWindowPos2sARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVARBPROC __glewWindowPos2svARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DARBPROC __glewWindowPos3dARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVARBPROC __glewWindowPos3dvARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FARBPROC __glewWindowPos3fARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVARBPROC __glewWindowPos3fvARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IARBPROC __glewWindowPos3iARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVARBPROC __glewWindowPos3ivARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SARBPROC __glewWindowPos3sARB;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVARBPROC __glewWindowPos3svARB;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWBUFFERSATIPROC __glewDrawBuffersATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTARRAYATIPROC __glewDrawElementArrayATI;\r
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTARRAYATIPROC __glewDrawRangeElementArrayATI;\r
-GLEW_FUN_EXPORT PFNGLELEMENTPOINTERATIPROC __glewElementPointerATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETTEXBUMPPARAMETERFVATIPROC __glewGetTexBumpParameterfvATI;\r
-GLEW_FUN_EXPORT PFNGLGETTEXBUMPPARAMETERIVATIPROC __glewGetTexBumpParameterivATI;\r
-GLEW_FUN_EXPORT PFNGLTEXBUMPPARAMETERFVATIPROC __glewTexBumpParameterfvATI;\r
-GLEW_FUN_EXPORT PFNGLTEXBUMPPARAMETERIVATIPROC __glewTexBumpParameterivATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP1ATIPROC __glewAlphaFragmentOp1ATI;\r
-GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP2ATIPROC __glewAlphaFragmentOp2ATI;\r
-GLEW_FUN_EXPORT PFNGLALPHAFRAGMENTOP3ATIPROC __glewAlphaFragmentOp3ATI;\r
-GLEW_FUN_EXPORT PFNGLBEGINFRAGMENTSHADERATIPROC __glewBeginFragmentShaderATI;\r
-GLEW_FUN_EXPORT PFNGLBINDFRAGMENTSHADERATIPROC __glewBindFragmentShaderATI;\r
-GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP1ATIPROC __glewColorFragmentOp1ATI;\r
-GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP2ATIPROC __glewColorFragmentOp2ATI;\r
-GLEW_FUN_EXPORT PFNGLCOLORFRAGMENTOP3ATIPROC __glewColorFragmentOp3ATI;\r
-GLEW_FUN_EXPORT PFNGLDELETEFRAGMENTSHADERATIPROC __glewDeleteFragmentShaderATI;\r
-GLEW_FUN_EXPORT PFNGLENDFRAGMENTSHADERATIPROC __glewEndFragmentShaderATI;\r
-GLEW_FUN_EXPORT PFNGLGENFRAGMENTSHADERSATIPROC __glewGenFragmentShadersATI;\r
-GLEW_FUN_EXPORT PFNGLPASSTEXCOORDATIPROC __glewPassTexCoordATI;\r
-GLEW_FUN_EXPORT PFNGLSAMPLEMAPATIPROC __glewSampleMapATI;\r
-GLEW_FUN_EXPORT PFNGLSETFRAGMENTSHADERCONSTANTATIPROC __glewSetFragmentShaderConstantATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLMAPOBJECTBUFFERATIPROC __glewMapObjectBufferATI;\r
-GLEW_FUN_EXPORT PFNGLUNMAPOBJECTBUFFERATIPROC __glewUnmapObjectBufferATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLPNTRIANGLESFATIPROC __glewPNTrianglesfATI;\r
-GLEW_FUN_EXPORT PFNGLPNTRIANGLESIATIPROC __glewPNTrianglesiATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLSTENCILFUNCSEPARATEATIPROC __glewStencilFuncSeparateATI;\r
-GLEW_FUN_EXPORT PFNGLSTENCILOPSEPARATEATIPROC __glewStencilOpSeparateATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLARRAYOBJECTATIPROC __glewArrayObjectATI;\r
-GLEW_FUN_EXPORT PFNGLFREEOBJECTBUFFERATIPROC __glewFreeObjectBufferATI;\r
-GLEW_FUN_EXPORT PFNGLGETARRAYOBJECTFVATIPROC __glewGetArrayObjectfvATI;\r
-GLEW_FUN_EXPORT PFNGLGETARRAYOBJECTIVATIPROC __glewGetArrayObjectivATI;\r
-GLEW_FUN_EXPORT PFNGLGETOBJECTBUFFERFVATIPROC __glewGetObjectBufferfvATI;\r
-GLEW_FUN_EXPORT PFNGLGETOBJECTBUFFERIVATIPROC __glewGetObjectBufferivATI;\r
-GLEW_FUN_EXPORT PFNGLGETVARIANTARRAYOBJECTFVATIPROC __glewGetVariantArrayObjectfvATI;\r
-GLEW_FUN_EXPORT PFNGLGETVARIANTARRAYOBJECTIVATIPROC __glewGetVariantArrayObjectivATI;\r
-GLEW_FUN_EXPORT PFNGLISOBJECTBUFFERATIPROC __glewIsObjectBufferATI;\r
-GLEW_FUN_EXPORT PFNGLNEWOBJECTBUFFERATIPROC __glewNewObjectBufferATI;\r
-GLEW_FUN_EXPORT PFNGLUPDATEOBJECTBUFFERATIPROC __glewUpdateObjectBufferATI;\r
-GLEW_FUN_EXPORT PFNGLVARIANTARRAYOBJECTATIPROC __glewVariantArrayObjectATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC __glewGetVertexAttribArrayObjectfvATI;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC __glewGetVertexAttribArrayObjectivATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBARRAYOBJECTATIPROC __glewVertexAttribArrayObjectATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC __glewClientActiveVertexStreamATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3BATIPROC __glewNormalStream3bATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3BVATIPROC __glewNormalStream3bvATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3DATIPROC __glewNormalStream3dATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3DVATIPROC __glewNormalStream3dvATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3FATIPROC __glewNormalStream3fATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3FVATIPROC __glewNormalStream3fvATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3IATIPROC __glewNormalStream3iATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3IVATIPROC __glewNormalStream3ivATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3SATIPROC __glewNormalStream3sATI;\r
-GLEW_FUN_EXPORT PFNGLNORMALSTREAM3SVATIPROC __glewNormalStream3svATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXBLENDENVFATIPROC __glewVertexBlendEnvfATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXBLENDENVIATIPROC __glewVertexBlendEnviATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2DATIPROC __glewVertexStream2dATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2DVATIPROC __glewVertexStream2dvATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2FATIPROC __glewVertexStream2fATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2FVATIPROC __glewVertexStream2fvATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2IATIPROC __glewVertexStream2iATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2IVATIPROC __glewVertexStream2ivATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2SATIPROC __glewVertexStream2sATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM2SVATIPROC __glewVertexStream2svATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3DATIPROC __glewVertexStream3dATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3DVATIPROC __glewVertexStream3dvATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3FATIPROC __glewVertexStream3fATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3FVATIPROC __glewVertexStream3fvATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3IATIPROC __glewVertexStream3iATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3IVATIPROC __glewVertexStream3ivATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3SATIPROC __glewVertexStream3sATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM3SVATIPROC __glewVertexStream3svATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4DATIPROC __glewVertexStream4dATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4DVATIPROC __glewVertexStream4dvATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4FATIPROC __glewVertexStream4fATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4FVATIPROC __glewVertexStream4fvATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4IATIPROC __glewVertexStream4iATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4IVATIPROC __glewVertexStream4ivATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4SATIPROC __glewVertexStream4sATI;\r
-GLEW_FUN_EXPORT PFNGLVERTEXSTREAM4SVATIPROC __glewVertexStream4svATI;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMBUFFERSIZEEXTPROC __glewGetUniformBufferSizeEXT;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMOFFSETEXTPROC __glewGetUniformOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMBUFFEREXTPROC __glewUniformBufferEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBLENDCOLOREXTPROC __glewBlendColorEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONSEPARATEEXTPROC __glewBlendEquationSeparateEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBLENDFUNCSEPARATEEXTPROC __glewBlendFuncSeparateEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBLENDEQUATIONEXTPROC __glewBlendEquationEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLORSUBTABLEEXTPROC __glewColorSubTableEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYCOLORSUBTABLEEXTPROC __glewCopyColorSubTableEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLLOCKARRAYSEXTPROC __glewLockArraysEXT;\r
-GLEW_FUN_EXPORT PFNGLUNLOCKARRAYSEXTPROC __glewUnlockArraysEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER1DEXTPROC __glewConvolutionFilter1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONFILTER2DEXTPROC __glewConvolutionFilter2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFEXTPROC __glewConvolutionParameterfEXT;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERFVEXTPROC __glewConvolutionParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIEXTPROC __glewConvolutionParameteriEXT;\r
-GLEW_FUN_EXPORT PFNGLCONVOLUTIONPARAMETERIVEXTPROC __glewConvolutionParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC __glewCopyConvolutionFilter1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC __glewCopyConvolutionFilter2DEXT;\r
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONFILTEREXTPROC __glewGetConvolutionFilterEXT;\r
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC __glewGetConvolutionParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC __glewGetConvolutionParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETSEPARABLEFILTEREXTPROC __glewGetSeparableFilterEXT;\r
-GLEW_FUN_EXPORT PFNGLSEPARABLEFILTER2DEXTPROC __glewSeparableFilter2DEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINORMALPOINTEREXTPROC __glewBinormalPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLTANGENTPOINTEREXTPROC __glewTangentPointerEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXIMAGE1DEXTPROC __glewCopyTexImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXIMAGE2DEXTPROC __glewCopyTexImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE1DEXTPROC __glewCopyTexSubImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE2DEXTPROC __glewCopyTexSubImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXSUBIMAGE3DEXTPROC __glewCopyTexSubImage3DEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLCULLPARAMETERDVEXTPROC __glewCullParameterdvEXT;\r
-GLEW_FUN_EXPORT PFNGLCULLPARAMETERFVEXTPROC __glewCullParameterfvEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLDEPTHBOUNDSEXTPROC __glewDepthBoundsEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDMULTITEXTUREEXTPROC __glewBindMultiTextureEXT;\r
-GLEW_FUN_EXPORT PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC __glewCheckNamedFramebufferStatusEXT;\r
-GLEW_FUN_EXPORT PFNGLCLIENTATTRIBDEFAULTEXTPROC __glewClientAttribDefaultEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC __glewCompressedMultiTexImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC __glewCompressedMultiTexImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC __glewCompressedMultiTexImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC __glewCompressedMultiTexSubImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC __glewCompressedMultiTexSubImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC __glewCompressedMultiTexSubImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC __glewCompressedTextureImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC __glewCompressedTextureImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC __glewCompressedTextureImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC __glewCompressedTextureSubImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC __glewCompressedTextureSubImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC __glewCompressedTextureSubImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXIMAGE1DEXTPROC __glewCopyMultiTexImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXIMAGE2DEXTPROC __glewCopyMultiTexImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC __glewCopyMultiTexSubImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC __glewCopyMultiTexSubImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC __glewCopyMultiTexSubImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXTUREIMAGE1DEXTPROC __glewCopyTextureImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXTUREIMAGE2DEXTPROC __glewCopyTextureImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC __glewCopyTextureSubImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC __glewCopyTextureSubImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC __glewCopyTextureSubImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC __glewDisableClientStateIndexedEXT;\r
-GLEW_FUN_EXPORT PFNGLDISABLECLIENTSTATEIEXTPROC __glewDisableClientStateiEXT;\r
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC __glewDisableVertexArrayAttribEXT;\r
-GLEW_FUN_EXPORT PFNGLDISABLEVERTEXARRAYEXTPROC __glewDisableVertexArrayEXT;\r
-GLEW_FUN_EXPORT PFNGLENABLECLIENTSTATEINDEXEDEXTPROC __glewEnableClientStateIndexedEXT;\r
-GLEW_FUN_EXPORT PFNGLENABLECLIENTSTATEIEXTPROC __glewEnableClientStateiEXT;\r
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYATTRIBEXTPROC __glewEnableVertexArrayAttribEXT;\r
-GLEW_FUN_EXPORT PFNGLENABLEVERTEXARRAYEXTPROC __glewEnableVertexArrayEXT;\r
-GLEW_FUN_EXPORT PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC __glewFlushMappedNamedBufferRangeEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC __glewFramebufferDrawBufferEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC __glewFramebufferDrawBuffersEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERREADBUFFEREXTPROC __glewFramebufferReadBufferEXT;\r
-GLEW_FUN_EXPORT PFNGLGENERATEMULTITEXMIPMAPEXTPROC __glewGenerateMultiTexMipmapEXT;\r
-GLEW_FUN_EXPORT PFNGLGENERATETEXTUREMIPMAPEXTPROC __glewGenerateTextureMipmapEXT;\r
-GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC __glewGetCompressedMultiTexImageEXT;\r
-GLEW_FUN_EXPORT PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC __glewGetCompressedTextureImageEXT;\r
-GLEW_FUN_EXPORT PFNGLGETDOUBLEINDEXEDVEXTPROC __glewGetDoubleIndexedvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETDOUBLEI_VEXTPROC __glewGetDoublei_vEXT;\r
-GLEW_FUN_EXPORT PFNGLGETFLOATINDEXEDVEXTPROC __glewGetFloatIndexedvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETFLOATI_VEXTPROC __glewGetFloati_vEXT;\r
-GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC __glewGetFramebufferParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXENVFVEXTPROC __glewGetMultiTexEnvfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXENVIVEXTPROC __glewGetMultiTexEnvivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXGENDVEXTPROC __glewGetMultiTexGendvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXGENFVEXTPROC __glewGetMultiTexGenfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXGENIVEXTPROC __glewGetMultiTexGenivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXIMAGEEXTPROC __glewGetMultiTexImageEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC __glewGetMultiTexLevelParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC __glewGetMultiTexLevelParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIIVEXTPROC __glewGetMultiTexParameterIivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIUIVEXTPROC __glewGetMultiTexParameterIuivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERFVEXTPROC __glewGetMultiTexParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMULTITEXPARAMETERIVEXTPROC __glewGetMultiTexParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC __glewGetNamedBufferParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPOINTERVEXTPROC __glewGetNamedBufferPointervEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERSUBDATAEXTPROC __glewGetNamedBufferSubDataEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetNamedFramebufferAttachmentParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC __glewGetNamedProgramLocalParameterIivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC __glewGetNamedProgramLocalParameterIuivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC __glewGetNamedProgramLocalParameterdvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC __glewGetNamedProgramLocalParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMSTRINGEXTPROC __glewGetNamedProgramStringEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDPROGRAMIVEXTPROC __glewGetNamedProgramivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC __glewGetNamedRenderbufferParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETPOINTERINDEXEDVEXTPROC __glewGetPointerIndexedvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETPOINTERI_VEXTPROC __glewGetPointeri_vEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTEXTUREIMAGEEXTPROC __glewGetTextureImageEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC __glewGetTextureLevelParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC __glewGetTextureLevelParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIIVEXTPROC __glewGetTextureParameterIivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIUIVEXTPROC __glewGetTextureParameterIuivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERFVEXTPROC __glewGetTextureParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTEXTUREPARAMETERIVEXTPROC __glewGetTextureParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC __glewGetVertexArrayIntegeri_vEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYINTEGERVEXTPROC __glewGetVertexArrayIntegervEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC __glewGetVertexArrayPointeri_vEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXARRAYPOINTERVEXTPROC __glewGetVertexArrayPointervEXT;\r
-GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFEREXTPROC __glewMapNamedBufferEXT;\r
-GLEW_FUN_EXPORT PFNGLMAPNAMEDBUFFERRANGEEXTPROC __glewMapNamedBufferRangeEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXFRUSTUMEXTPROC __glewMatrixFrustumEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXLOADIDENTITYEXTPROC __glewMatrixLoadIdentityEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSEDEXTPROC __glewMatrixLoadTransposedEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXLOADTRANSPOSEFEXTPROC __glewMatrixLoadTransposefEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXLOADDEXTPROC __glewMatrixLoaddEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXLOADFEXTPROC __glewMatrixLoadfEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSEDEXTPROC __glewMatrixMultTransposedEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXMULTTRANSPOSEFEXTPROC __glewMatrixMultTransposefEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXMULTDEXTPROC __glewMatrixMultdEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXMULTFEXTPROC __glewMatrixMultfEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXORTHOEXTPROC __glewMatrixOrthoEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXPOPEXTPROC __glewMatrixPopEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXPUSHEXTPROC __glewMatrixPushEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXROTATEDEXTPROC __glewMatrixRotatedEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXROTATEFEXTPROC __glewMatrixRotatefEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXSCALEDEXTPROC __glewMatrixScaledEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXSCALEFEXTPROC __glewMatrixScalefEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXTRANSLATEDEXTPROC __glewMatrixTranslatedEXT;\r
-GLEW_FUN_EXPORT PFNGLMATRIXTRANSLATEFEXTPROC __glewMatrixTranslatefEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXBUFFEREXTPROC __glewMultiTexBufferEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORDPOINTEREXTPROC __glewMultiTexCoordPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXENVFEXTPROC __glewMultiTexEnvfEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXENVFVEXTPROC __glewMultiTexEnvfvEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXENVIEXTPROC __glewMultiTexEnviEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXENVIVEXTPROC __glewMultiTexEnvivEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXGENDEXTPROC __glewMultiTexGendEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXGENDVEXTPROC __glewMultiTexGendvEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXGENFEXTPROC __glewMultiTexGenfEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXGENFVEXTPROC __glewMultiTexGenfvEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXGENIEXTPROC __glewMultiTexGeniEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXGENIVEXTPROC __glewMultiTexGenivEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE1DEXTPROC __glewMultiTexImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE2DEXTPROC __glewMultiTexImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXIMAGE3DEXTPROC __glewMultiTexImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIIVEXTPROC __glewMultiTexParameterIivEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIUIVEXTPROC __glewMultiTexParameterIuivEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERFEXTPROC __glewMultiTexParameterfEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERFVEXTPROC __glewMultiTexParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIEXTPROC __glewMultiTexParameteriEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXPARAMETERIVEXTPROC __glewMultiTexParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXRENDERBUFFEREXTPROC __glewMultiTexRenderbufferEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE1DEXTPROC __glewMultiTexSubImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE2DEXTPROC __glewMultiTexSubImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXSUBIMAGE3DEXTPROC __glewMultiTexSubImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDBUFFERDATAEXTPROC __glewNamedBufferDataEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDBUFFERSUBDATAEXTPROC __glewNamedBufferSubDataEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC __glewNamedCopyBufferSubDataEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC __glewNamedFramebufferRenderbufferEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC __glewNamedFramebufferTexture1DEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC __glewNamedFramebufferTexture2DEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC __glewNamedFramebufferTexture3DEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC __glewNamedFramebufferTextureEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC __glewNamedFramebufferTextureFaceEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC __glewNamedFramebufferTextureLayerEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC __glewNamedProgramLocalParameter4dEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC __glewNamedProgramLocalParameter4dvEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC __glewNamedProgramLocalParameter4fEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC __glewNamedProgramLocalParameter4fvEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC __glewNamedProgramLocalParameterI4iEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC __glewNamedProgramLocalParameterI4ivEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC __glewNamedProgramLocalParameterI4uiEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC __glewNamedProgramLocalParameterI4uivEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC __glewNamedProgramLocalParameters4fvEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC __glewNamedProgramLocalParametersI4ivEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC __glewNamedProgramLocalParametersI4uivEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDPROGRAMSTRINGEXTPROC __glewNamedProgramStringEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC __glewNamedRenderbufferStorageEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC __glewNamedRenderbufferStorageMultisampleCoverageEXT;\r
-GLEW_FUN_EXPORT PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewNamedRenderbufferStorageMultisampleEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FEXTPROC __glewProgramUniform1fEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1FVEXTPROC __glewProgramUniform1fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IEXTPROC __glewProgramUniform1iEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1IVEXTPROC __glewProgramUniform1ivEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIEXTPROC __glewProgramUniform1uiEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UIVEXTPROC __glewProgramUniform1uivEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FEXTPROC __glewProgramUniform2fEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2FVEXTPROC __glewProgramUniform2fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IEXTPROC __glewProgramUniform2iEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2IVEXTPROC __glewProgramUniform2ivEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIEXTPROC __glewProgramUniform2uiEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UIVEXTPROC __glewProgramUniform2uivEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FEXTPROC __glewProgramUniform3fEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3FVEXTPROC __glewProgramUniform3fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IEXTPROC __glewProgramUniform3iEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3IVEXTPROC __glewProgramUniform3ivEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIEXTPROC __glewProgramUniform3uiEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UIVEXTPROC __glewProgramUniform3uivEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FEXTPROC __glewProgramUniform4fEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4FVEXTPROC __glewProgramUniform4fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IEXTPROC __glewProgramUniform4iEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4IVEXTPROC __glewProgramUniform4ivEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIEXTPROC __glewProgramUniform4uiEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UIVEXTPROC __glewProgramUniform4uivEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC __glewProgramUniformMatrix2fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC __glewProgramUniformMatrix2x3fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC __glewProgramUniformMatrix2x4fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC __glewProgramUniformMatrix3fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC __glewProgramUniformMatrix3x2fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC __glewProgramUniformMatrix3x4fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC __glewProgramUniformMatrix4fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC __glewProgramUniformMatrix4x2fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC __glewProgramUniformMatrix4x3fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC __glewPushClientAttribDefaultEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREBUFFEREXTPROC __glewTextureBufferEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE1DEXTPROC __glewTextureImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DEXTPROC __glewTextureImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DEXTPROC __glewTextureImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIIVEXTPROC __glewTextureParameterIivEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIUIVEXTPROC __glewTextureParameterIuivEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFEXTPROC __glewTextureParameterfEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERFVEXTPROC __glewTextureParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIEXTPROC __glewTextureParameteriEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREPARAMETERIVEXTPROC __glewTextureParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTURERENDERBUFFEREXTPROC __glewTextureRenderbufferEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE1DEXTPROC __glewTextureSubImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE2DEXTPROC __glewTextureSubImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTURESUBIMAGE3DEXTPROC __glewTextureSubImage3DEXT;\r
-GLEW_FUN_EXPORT PFNGLUNMAPNAMEDBUFFEREXTPROC __glewUnmapNamedBufferEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYCOLOROFFSETEXTPROC __glewVertexArrayColorOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC __glewVertexArrayEdgeFlagOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC __glewVertexArrayFogCoordOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYINDEXOFFSETEXTPROC __glewVertexArrayIndexOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC __glewVertexArrayMultiTexCoordOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYNORMALOFFSETEXTPROC __glewVertexArrayNormalOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC __glewVertexArraySecondaryColorOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC __glewVertexArrayTexCoordOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC __glewVertexArrayVertexAttribIOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC __glewVertexArrayVertexAttribOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC __glewVertexArrayVertexOffsetEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLORMASKINDEXEDEXTPROC __glewColorMaskIndexedEXT;\r
-GLEW_FUN_EXPORT PFNGLDISABLEINDEXEDEXTPROC __glewDisableIndexedEXT;\r
-GLEW_FUN_EXPORT PFNGLENABLEINDEXEDEXTPROC __glewEnableIndexedEXT;\r
-GLEW_FUN_EXPORT PFNGLGETBOOLEANINDEXEDVEXTPROC __glewGetBooleanIndexedvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETINTEGERINDEXEDVEXTPROC __glewGetIntegerIndexedvEXT;\r
-GLEW_FUN_EXPORT PFNGLISENABLEDINDEXEDEXTPROC __glewIsEnabledIndexedEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSINSTANCEDEXTPROC __glewDrawArraysInstancedEXT;\r
-GLEW_FUN_EXPORT PFNGLDRAWELEMENTSINSTANCEDEXTPROC __glewDrawElementsInstancedEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLDRAWRANGEELEMENTSEXTPROC __glewDrawRangeElementsEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTEREXTPROC __glewFogCoordPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDDEXTPROC __glewFogCoorddEXT;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDDVEXTPROC __glewFogCoorddvEXT;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDFEXTPROC __glewFogCoordfEXT;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDFVEXTPROC __glewFogCoordfvEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTCOLORMATERIALEXTPROC __glewFragmentColorMaterialEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFEXTPROC __glewFragmentLightModelfEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFVEXTPROC __glewFragmentLightModelfvEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIEXTPROC __glewFragmentLightModeliEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIVEXTPROC __glewFragmentLightModelivEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFEXTPROC __glewFragmentLightfEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFVEXTPROC __glewFragmentLightfvEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIEXTPROC __glewFragmentLightiEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIVEXTPROC __glewFragmentLightivEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFEXTPROC __glewFragmentMaterialfEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFVEXTPROC __glewFragmentMaterialfvEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIEXTPROC __glewFragmentMaterialiEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIVEXTPROC __glewFragmentMaterialivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTFVEXTPROC __glewGetFragmentLightfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTIVEXTPROC __glewGetFragmentLightivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALFVEXTPROC __glewGetFragmentMaterialfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALIVEXTPROC __glewGetFragmentMaterialivEXT;\r
-GLEW_FUN_EXPORT PFNGLLIGHTENVIEXTPROC __glewLightEnviEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBLITFRAMEBUFFEREXTPROC __glewBlitFramebufferEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC __glewRenderbufferStorageMultisampleEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDFRAMEBUFFEREXTPROC __glewBindFramebufferEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDRENDERBUFFEREXTPROC __glewBindRenderbufferEXT;\r
-GLEW_FUN_EXPORT PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC __glewCheckFramebufferStatusEXT;\r
-GLEW_FUN_EXPORT PFNGLDELETEFRAMEBUFFERSEXTPROC __glewDeleteFramebuffersEXT;\r
-GLEW_FUN_EXPORT PFNGLDELETERENDERBUFFERSEXTPROC __glewDeleteRenderbuffersEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC __glewFramebufferRenderbufferEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE1DEXTPROC __glewFramebufferTexture1DEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE2DEXTPROC __glewFramebufferTexture2DEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURE3DEXTPROC __glewFramebufferTexture3DEXT;\r
-GLEW_FUN_EXPORT PFNGLGENFRAMEBUFFERSEXTPROC __glewGenFramebuffersEXT;\r
-GLEW_FUN_EXPORT PFNGLGENRENDERBUFFERSEXTPROC __glewGenRenderbuffersEXT;\r
-GLEW_FUN_EXPORT PFNGLGENERATEMIPMAPEXTPROC __glewGenerateMipmapEXT;\r
-GLEW_FUN_EXPORT PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC __glewGetFramebufferAttachmentParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC __glewGetRenderbufferParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLISFRAMEBUFFEREXTPROC __glewIsFramebufferEXT;\r
-GLEW_FUN_EXPORT PFNGLISRENDERBUFFEREXTPROC __glewIsRenderbufferEXT;\r
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEEXTPROC __glewRenderbufferStorageEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREEXTPROC __glewFramebufferTextureEXT;\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC __glewFramebufferTextureFaceEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERIEXTPROC __glewProgramParameteriEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERS4FVEXTPROC __glewProgramEnvParameters4fvEXT;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC __glewProgramLocalParameters4fvEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDFRAGDATALOCATIONEXTPROC __glewBindFragDataLocationEXT;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGDATALOCATIONEXTPROC __glewGetFragDataLocationEXT;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMUIVEXTPROC __glewGetUniformuivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIIVEXTPROC __glewGetVertexAttribIivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIUIVEXTPROC __glewGetVertexAttribIuivEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1UIEXTPROC __glewUniform1uiEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1UIVEXTPROC __glewUniform1uivEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2UIEXTPROC __glewUniform2uiEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2UIVEXTPROC __glewUniform2uivEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3UIEXTPROC __glewUniform3uiEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3UIVEXTPROC __glewUniform3uivEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4UIEXTPROC __glewUniform4uiEXT;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4UIVEXTPROC __glewUniform4uivEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IEXTPROC __glewVertexAttribI1iEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1IVEXTPROC __glewVertexAttribI1ivEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIEXTPROC __glewVertexAttribI1uiEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI1UIVEXTPROC __glewVertexAttribI1uivEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IEXTPROC __glewVertexAttribI2iEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2IVEXTPROC __glewVertexAttribI2ivEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIEXTPROC __glewVertexAttribI2uiEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI2UIVEXTPROC __glewVertexAttribI2uivEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IEXTPROC __glewVertexAttribI3iEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3IVEXTPROC __glewVertexAttribI3ivEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIEXTPROC __glewVertexAttribI3uiEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI3UIVEXTPROC __glewVertexAttribI3uivEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4BVEXTPROC __glewVertexAttribI4bvEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IEXTPROC __glewVertexAttribI4iEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4IVEXTPROC __glewVertexAttribI4ivEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4SVEXTPROC __glewVertexAttribI4svEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UBVEXTPROC __glewVertexAttribI4ubvEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIEXTPROC __glewVertexAttribI4uiEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4UIVEXTPROC __glewVertexAttribI4uivEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBI4USVEXTPROC __glewVertexAttribI4usvEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIPOINTEREXTPROC __glewVertexAttribIPointerEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMEXTPROC __glewGetHistogramEXT;\r
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERFVEXTPROC __glewGetHistogramParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETHISTOGRAMPARAMETERIVEXTPROC __glewGetHistogramParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMINMAXEXTPROC __glewGetMinmaxEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERFVEXTPROC __glewGetMinmaxParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETMINMAXPARAMETERIVEXTPROC __glewGetMinmaxParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLHISTOGRAMEXTPROC __glewHistogramEXT;\r
-GLEW_FUN_EXPORT PFNGLMINMAXEXTPROC __glewMinmaxEXT;\r
-GLEW_FUN_EXPORT PFNGLRESETHISTOGRAMEXTPROC __glewResetHistogramEXT;\r
-GLEW_FUN_EXPORT PFNGLRESETMINMAXEXTPROC __glewResetMinmaxEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLINDEXFUNCEXTPROC __glewIndexFuncEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLINDEXMATERIALEXTPROC __glewIndexMaterialEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLAPPLYTEXTUREEXTPROC __glewApplyTextureEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTURELIGHTEXTPROC __glewTextureLightEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREMATERIALEXTPROC __glewTextureMaterialEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLMULTIDRAWARRAYSEXTPROC __glewMultiDrawArraysEXT;\r
-GLEW_FUN_EXPORT PFNGLMULTIDRAWELEMENTSEXTPROC __glewMultiDrawElementsEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLSAMPLEMASKEXTPROC __glewSampleMaskEXT;\r
-GLEW_FUN_EXPORT PFNGLSAMPLEPATTERNEXTPROC __glewSamplePatternEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLORTABLEEXTPROC __glewColorTableEXT;\r
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEEXTPROC __glewGetColorTableEXT;\r
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVEXTPROC __glewGetColorTableParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVEXTPROC __glewGetColorTableParameterivEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC __glewGetPixelTransformParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC __glewGetPixelTransformParameterivEXT;\r
-GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFEXTPROC __glewPixelTransformParameterfEXT;\r
-GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC __glewPixelTransformParameterfvEXT;\r
-GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIEXTPROC __glewPixelTransformParameteriEXT;\r
-GLEW_FUN_EXPORT PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC __glewPixelTransformParameterivEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFEXTPROC __glewPointParameterfEXT;\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERFVEXTPROC __glewPointParameterfvEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLPOLYGONOFFSETEXTPROC __glewPolygonOffsetEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLPROVOKINGVERTEXEXTPROC __glewProvokingVertexEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINSCENEEXTPROC __glewBeginSceneEXT;\r
-GLEW_FUN_EXPORT PFNGLENDSCENEEXTPROC __glewEndSceneEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BEXTPROC __glewSecondaryColor3bEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3BVEXTPROC __glewSecondaryColor3bvEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DEXTPROC __glewSecondaryColor3dEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3DVEXTPROC __glewSecondaryColor3dvEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FEXTPROC __glewSecondaryColor3fEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3FVEXTPROC __glewSecondaryColor3fvEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IEXTPROC __glewSecondaryColor3iEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3IVEXTPROC __glewSecondaryColor3ivEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SEXTPROC __glewSecondaryColor3sEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3SVEXTPROC __glewSecondaryColor3svEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBEXTPROC __glewSecondaryColor3ubEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UBVEXTPROC __glewSecondaryColor3ubvEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIEXTPROC __glewSecondaryColor3uiEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3UIVEXTPROC __glewSecondaryColor3uivEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USEXTPROC __glewSecondaryColor3usEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3USVEXTPROC __glewSecondaryColor3usvEXT;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTEREXTPROC __glewSecondaryColorPointerEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLACTIVEPROGRAMEXTPROC __glewActiveProgramEXT;\r
-GLEW_FUN_EXPORT PFNGLCREATESHADERPROGRAMEXTPROC __glewCreateShaderProgramEXT;\r
-GLEW_FUN_EXPORT PFNGLUSESHADERPROGRAMEXTPROC __glewUseShaderProgramEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDIMAGETEXTUREEXTPROC __glewBindImageTextureEXT;\r
-GLEW_FUN_EXPORT PFNGLMEMORYBARRIEREXTPROC __glewMemoryBarrierEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLACTIVESTENCILFACEEXTPROC __glewActiveStencilFaceEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE1DEXTPROC __glewTexSubImage1DEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE2DEXTPROC __glewTexSubImage2DEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE3DEXTPROC __glewTexSubImage3DEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXIMAGE3DEXTPROC __glewTexImage3DEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC __glewFramebufferTextureLayerEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXBUFFEREXTPROC __glewTexBufferEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLCLEARCOLORIIEXTPROC __glewClearColorIiEXT;\r
-GLEW_FUN_EXPORT PFNGLCLEARCOLORIUIEXTPROC __glewClearColorIuiEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIIVEXTPROC __glewGetTexParameterIivEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTEXPARAMETERIUIVEXTPROC __glewGetTexParameterIuivEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXPARAMETERIIVEXTPROC __glewTexParameterIivEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXPARAMETERIUIVEXTPROC __glewTexParameterIuivEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLARETEXTURESRESIDENTEXTPROC __glewAreTexturesResidentEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDTEXTUREEXTPROC __glewBindTextureEXT;\r
-GLEW_FUN_EXPORT PFNGLDELETETEXTURESEXTPROC __glewDeleteTexturesEXT;\r
-GLEW_FUN_EXPORT PFNGLGENTEXTURESEXTPROC __glewGenTexturesEXT;\r
-GLEW_FUN_EXPORT PFNGLISTEXTUREEXTPROC __glewIsTextureEXT;\r
-GLEW_FUN_EXPORT PFNGLPRIORITIZETEXTURESEXTPROC __glewPrioritizeTexturesEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXTURENORMALEXTPROC __glewTextureNormalEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTI64VEXTPROC __glewGetQueryObjecti64vEXT;\r
-GLEW_FUN_EXPORT PFNGLGETQUERYOBJECTUI64VEXTPROC __glewGetQueryObjectui64vEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKEXTPROC __glewBeginTransformFeedbackEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFERBASEEXTPROC __glewBindBufferBaseEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFEROFFSETEXTPROC __glewBindBufferOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGEEXTPROC __glewBindBufferRangeEXT;\r
-GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKEXTPROC __glewEndTransformFeedbackEXT;\r
-GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC __glewGetTransformFeedbackVaryingEXT;\r
-GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC __glewTransformFeedbackVaryingsEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLARRAYELEMENTEXTPROC __glewArrayElementEXT;\r
-GLEW_FUN_EXPORT PFNGLCOLORPOINTEREXTPROC __glewColorPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLDRAWARRAYSEXTPROC __glewDrawArraysEXT;\r
-GLEW_FUN_EXPORT PFNGLEDGEFLAGPOINTEREXTPROC __glewEdgeFlagPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLINDEXPOINTEREXTPROC __glewIndexPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLNORMALPOINTEREXTPROC __glewNormalPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTEREXTPROC __glewTexCoordPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXPOINTEREXTPROC __glewVertexPointerEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLDVEXTPROC __glewGetVertexAttribLdvEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC __glewVertexArrayVertexAttribLOffsetEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DEXTPROC __glewVertexAttribL1dEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1DVEXTPROC __glewVertexAttribL1dvEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DEXTPROC __glewVertexAttribL2dEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2DVEXTPROC __glewVertexAttribL2dvEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DEXTPROC __glewVertexAttribL3dEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3DVEXTPROC __glewVertexAttribL3dvEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DEXTPROC __glewVertexAttribL4dEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4DVEXTPROC __glewVertexAttribL4dvEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLPOINTEREXTPROC __glewVertexAttribLPointerEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINVERTEXSHADEREXTPROC __glewBeginVertexShaderEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDLIGHTPARAMETEREXTPROC __glewBindLightParameterEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDMATERIALPARAMETEREXTPROC __glewBindMaterialParameterEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDPARAMETEREXTPROC __glewBindParameterEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDTEXGENPARAMETEREXTPROC __glewBindTexGenParameterEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDTEXTUREUNITPARAMETEREXTPROC __glewBindTextureUnitParameterEXT;\r
-GLEW_FUN_EXPORT PFNGLBINDVERTEXSHADEREXTPROC __glewBindVertexShaderEXT;\r
-GLEW_FUN_EXPORT PFNGLDELETEVERTEXSHADEREXTPROC __glewDeleteVertexShaderEXT;\r
-GLEW_FUN_EXPORT PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC __glewDisableVariantClientStateEXT;\r
-GLEW_FUN_EXPORT PFNGLENABLEVARIANTCLIENTSTATEEXTPROC __glewEnableVariantClientStateEXT;\r
-GLEW_FUN_EXPORT PFNGLENDVERTEXSHADEREXTPROC __glewEndVertexShaderEXT;\r
-GLEW_FUN_EXPORT PFNGLEXTRACTCOMPONENTEXTPROC __glewExtractComponentEXT;\r
-GLEW_FUN_EXPORT PFNGLGENSYMBOLSEXTPROC __glewGenSymbolsEXT;\r
-GLEW_FUN_EXPORT PFNGLGENVERTEXSHADERSEXTPROC __glewGenVertexShadersEXT;\r
-GLEW_FUN_EXPORT PFNGLGETINVARIANTBOOLEANVEXTPROC __glewGetInvariantBooleanvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETINVARIANTFLOATVEXTPROC __glewGetInvariantFloatvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETINVARIANTINTEGERVEXTPROC __glewGetInvariantIntegervEXT;\r
-GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC __glewGetLocalConstantBooleanvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTFLOATVEXTPROC __glewGetLocalConstantFloatvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETLOCALCONSTANTINTEGERVEXTPROC __glewGetLocalConstantIntegervEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVARIANTBOOLEANVEXTPROC __glewGetVariantBooleanvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVARIANTFLOATVEXTPROC __glewGetVariantFloatvEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVARIANTINTEGERVEXTPROC __glewGetVariantIntegervEXT;\r
-GLEW_FUN_EXPORT PFNGLGETVARIANTPOINTERVEXTPROC __glewGetVariantPointervEXT;\r
-GLEW_FUN_EXPORT PFNGLINSERTCOMPONENTEXTPROC __glewInsertComponentEXT;\r
-GLEW_FUN_EXPORT PFNGLISVARIANTENABLEDEXTPROC __glewIsVariantEnabledEXT;\r
-GLEW_FUN_EXPORT PFNGLSETINVARIANTEXTPROC __glewSetInvariantEXT;\r
-GLEW_FUN_EXPORT PFNGLSETLOCALCONSTANTEXTPROC __glewSetLocalConstantEXT;\r
-GLEW_FUN_EXPORT PFNGLSHADEROP1EXTPROC __glewShaderOp1EXT;\r
-GLEW_FUN_EXPORT PFNGLSHADEROP2EXTPROC __glewShaderOp2EXT;\r
-GLEW_FUN_EXPORT PFNGLSHADEROP3EXTPROC __glewShaderOp3EXT;\r
-GLEW_FUN_EXPORT PFNGLSWIZZLEEXTPROC __glewSwizzleEXT;\r
-GLEW_FUN_EXPORT PFNGLVARIANTPOINTEREXTPROC __glewVariantPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLVARIANTBVEXTPROC __glewVariantbvEXT;\r
-GLEW_FUN_EXPORT PFNGLVARIANTDVEXTPROC __glewVariantdvEXT;\r
-GLEW_FUN_EXPORT PFNGLVARIANTFVEXTPROC __glewVariantfvEXT;\r
-GLEW_FUN_EXPORT PFNGLVARIANTIVEXTPROC __glewVariantivEXT;\r
-GLEW_FUN_EXPORT PFNGLVARIANTSVEXTPROC __glewVariantsvEXT;\r
-GLEW_FUN_EXPORT PFNGLVARIANTUBVEXTPROC __glewVariantubvEXT;\r
-GLEW_FUN_EXPORT PFNGLVARIANTUIVEXTPROC __glewVariantuivEXT;\r
-GLEW_FUN_EXPORT PFNGLVARIANTUSVEXTPROC __glewVariantusvEXT;\r
-GLEW_FUN_EXPORT PFNGLWRITEMASKEXTPROC __glewWriteMaskEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTPOINTEREXTPROC __glewVertexWeightPointerEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTFEXTPROC __glewVertexWeightfEXT;\r
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTFVEXTPROC __glewVertexWeightfvEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLIMPORTSYNCEXTPROC __glewImportSyncEXT;\r
-\r
-GLEW_FUN_EXPORT PFNGLFRAMETERMINATORGREMEDYPROC __glewFrameTerminatorGREMEDY;\r
-\r
-GLEW_FUN_EXPORT PFNGLSTRINGMARKERGREMEDYPROC __glewStringMarkerGREMEDY;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC __glewGetImageTransformParameterfvHP;\r
-GLEW_FUN_EXPORT PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC __glewGetImageTransformParameterivHP;\r
-GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERFHPPROC __glewImageTransformParameterfHP;\r
-GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERFVHPPROC __glewImageTransformParameterfvHP;\r
-GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERIHPPROC __glewImageTransformParameteriHP;\r
-GLEW_FUN_EXPORT PFNGLIMAGETRANSFORMPARAMETERIVHPPROC __glewImageTransformParameterivHP;\r
-\r
-GLEW_FUN_EXPORT PFNGLMULTIMODEDRAWARRAYSIBMPROC __glewMultiModeDrawArraysIBM;\r
-GLEW_FUN_EXPORT PFNGLMULTIMODEDRAWELEMENTSIBMPROC __glewMultiModeDrawElementsIBM;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLORPOINTERLISTIBMPROC __glewColorPointerListIBM;\r
-GLEW_FUN_EXPORT PFNGLEDGEFLAGPOINTERLISTIBMPROC __glewEdgeFlagPointerListIBM;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDPOINTERLISTIBMPROC __glewFogCoordPointerListIBM;\r
-GLEW_FUN_EXPORT PFNGLINDEXPOINTERLISTIBMPROC __glewIndexPointerListIBM;\r
-GLEW_FUN_EXPORT PFNGLNORMALPOINTERLISTIBMPROC __glewNormalPointerListIBM;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORPOINTERLISTIBMPROC __glewSecondaryColorPointerListIBM;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTERLISTIBMPROC __glewTexCoordPointerListIBM;\r
-GLEW_FUN_EXPORT PFNGLVERTEXPOINTERLISTIBMPROC __glewVertexPointerListIBM;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLORPOINTERVINTELPROC __glewColorPointervINTEL;\r
-GLEW_FUN_EXPORT PFNGLNORMALPOINTERVINTELPROC __glewNormalPointervINTEL;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDPOINTERVINTELPROC __glewTexCoordPointervINTEL;\r
-GLEW_FUN_EXPORT PFNGLVERTEXPOINTERVINTELPROC __glewVertexPointervINTEL;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXSCISSORFUNCINTELPROC __glewTexScissorFuncINTEL;\r
-GLEW_FUN_EXPORT PFNGLTEXSCISSORINTELPROC __glewTexScissorINTEL;\r
-\r
-GLEW_FUN_EXPORT PFNGLBUFFERREGIONENABLEDPROC __glewBufferRegionEnabled;\r
-GLEW_FUN_EXPORT PFNGLDELETEBUFFERREGIONPROC __glewDeleteBufferRegion;\r
-GLEW_FUN_EXPORT PFNGLDRAWBUFFERREGIONPROC __glewDrawBufferRegion;\r
-GLEW_FUN_EXPORT PFNGLNEWBUFFERREGIONPROC __glewNewBufferRegion;\r
-GLEW_FUN_EXPORT PFNGLREADBUFFERREGIONPROC __glewReadBufferRegion;\r
-\r
-GLEW_FUN_EXPORT PFNGLRESIZEBUFFERSMESAPROC __glewResizeBuffersMESA;\r
-\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DMESAPROC __glewWindowPos2dMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2DVMESAPROC __glewWindowPos2dvMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FMESAPROC __glewWindowPos2fMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2FVMESAPROC __glewWindowPos2fvMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IMESAPROC __glewWindowPos2iMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2IVMESAPROC __glewWindowPos2ivMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SMESAPROC __glewWindowPos2sMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS2SVMESAPROC __glewWindowPos2svMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DMESAPROC __glewWindowPos3dMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3DVMESAPROC __glewWindowPos3dvMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FMESAPROC __glewWindowPos3fMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3FVMESAPROC __glewWindowPos3fvMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IMESAPROC __glewWindowPos3iMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3IVMESAPROC __glewWindowPos3ivMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SMESAPROC __glewWindowPos3sMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS3SVMESAPROC __glewWindowPos3svMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4DMESAPROC __glewWindowPos4dMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4DVMESAPROC __glewWindowPos4dvMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4FMESAPROC __glewWindowPos4fMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4FVMESAPROC __glewWindowPos4fvMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4IMESAPROC __glewWindowPos4iMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4IVMESAPROC __glewWindowPos4ivMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4SMESAPROC __glewWindowPos4sMESA;\r
-GLEW_FUN_EXPORT PFNGLWINDOWPOS4SVMESAPROC __glewWindowPos4svMESA;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINCONDITIONALRENDERNVPROC __glewBeginConditionalRenderNV;\r
-GLEW_FUN_EXPORT PFNGLENDCONDITIONALRENDERNVPROC __glewEndConditionalRenderNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOPYIMAGESUBDATANVPROC __glewCopyImageSubDataNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLCLEARDEPTHDNVPROC __glewClearDepthdNV;\r
-GLEW_FUN_EXPORT PFNGLDEPTHBOUNDSDNVPROC __glewDepthBoundsdNV;\r
-GLEW_FUN_EXPORT PFNGLDEPTHRANGEDNVPROC __glewDepthRangedNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLEVALMAPSNVPROC __glewEvalMapsNV;\r
-GLEW_FUN_EXPORT PFNGLGETMAPATTRIBPARAMETERFVNVPROC __glewGetMapAttribParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETMAPATTRIBPARAMETERIVNVPROC __glewGetMapAttribParameterivNV;\r
-GLEW_FUN_EXPORT PFNGLGETMAPCONTROLPOINTSNVPROC __glewGetMapControlPointsNV;\r
-GLEW_FUN_EXPORT PFNGLGETMAPPARAMETERFVNVPROC __glewGetMapParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETMAPPARAMETERIVNVPROC __glewGetMapParameterivNV;\r
-GLEW_FUN_EXPORT PFNGLMAPCONTROLPOINTSNVPROC __glewMapControlPointsNV;\r
-GLEW_FUN_EXPORT PFNGLMAPPARAMETERFVNVPROC __glewMapParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLMAPPARAMETERIVNVPROC __glewMapParameterivNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETMULTISAMPLEFVNVPROC __glewGetMultisamplefvNV;\r
-GLEW_FUN_EXPORT PFNGLSAMPLEMASKINDEXEDNVPROC __glewSampleMaskIndexedNV;\r
-GLEW_FUN_EXPORT PFNGLTEXRENDERBUFFERNVPROC __glewTexRenderbufferNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLDELETEFENCESNVPROC __glewDeleteFencesNV;\r
-GLEW_FUN_EXPORT PFNGLFINISHFENCENVPROC __glewFinishFenceNV;\r
-GLEW_FUN_EXPORT PFNGLGENFENCESNVPROC __glewGenFencesNV;\r
-GLEW_FUN_EXPORT PFNGLGETFENCEIVNVPROC __glewGetFenceivNV;\r
-GLEW_FUN_EXPORT PFNGLISFENCENVPROC __glewIsFenceNV;\r
-GLEW_FUN_EXPORT PFNGLSETFENCENVPROC __glewSetFenceNV;\r
-GLEW_FUN_EXPORT PFNGLTESTFENCENVPROC __glewTestFenceNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC __glewGetProgramNamedParameterdvNV;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC __glewGetProgramNamedParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4DNVPROC __glewProgramNamedParameter4dNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC __glewProgramNamedParameter4dvNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4FNVPROC __glewProgramNamedParameter4fNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC __glewProgramNamedParameter4fvNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC __glewRenderbufferStorageMultisampleCoverageNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLPROGRAMVERTEXLIMITNVPROC __glewProgramVertexLimitNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4INVPROC __glewProgramEnvParameterI4iNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4IVNVPROC __glewProgramEnvParameterI4ivNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4UINVPROC __glewProgramEnvParameterI4uiNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERI4UIVNVPROC __glewProgramEnvParameterI4uivNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERSI4IVNVPROC __glewProgramEnvParametersI4ivNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC __glewProgramEnvParametersI4uivNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4INVPROC __glewProgramLocalParameterI4iNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC __glewProgramLocalParameterI4ivNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4UINVPROC __glewProgramLocalParameterI4uiNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC __glewProgramLocalParameterI4uivNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC __glewProgramLocalParametersI4ivNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC __glewProgramLocalParametersI4uivNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMI64VNVPROC __glewGetUniformi64vNV;\r
-GLEW_FUN_EXPORT PFNGLGETUNIFORMUI64VNVPROC __glewGetUniformui64vNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64NVPROC __glewProgramUniform1i64NV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1I64VNVPROC __glewProgramUniform1i64vNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64NVPROC __glewProgramUniform1ui64NV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM1UI64VNVPROC __glewProgramUniform1ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64NVPROC __glewProgramUniform2i64NV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2I64VNVPROC __glewProgramUniform2i64vNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64NVPROC __glewProgramUniform2ui64NV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM2UI64VNVPROC __glewProgramUniform2ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64NVPROC __glewProgramUniform3i64NV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3I64VNVPROC __glewProgramUniform3i64vNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64NVPROC __glewProgramUniform3ui64NV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM3UI64VNVPROC __glewProgramUniform3ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64NVPROC __glewProgramUniform4i64NV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4I64VNVPROC __glewProgramUniform4i64vNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64NVPROC __glewProgramUniform4ui64NV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORM4UI64VNVPROC __glewProgramUniform4ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1I64NVPROC __glewUniform1i64NV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1I64VNVPROC __glewUniform1i64vNV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1UI64NVPROC __glewUniform1ui64NV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM1UI64VNVPROC __glewUniform1ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2I64NVPROC __glewUniform2i64NV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2I64VNVPROC __glewUniform2i64vNV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2UI64NVPROC __glewUniform2ui64NV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM2UI64VNVPROC __glewUniform2ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3I64NVPROC __glewUniform3i64NV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3I64VNVPROC __glewUniform3i64vNV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3UI64NVPROC __glewUniform3ui64NV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM3UI64VNVPROC __glewUniform3ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4I64NVPROC __glewUniform4i64NV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4I64VNVPROC __glewUniform4i64vNV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4UI64NVPROC __glewUniform4ui64NV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORM4UI64VNVPROC __glewUniform4ui64vNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLOR3HNVPROC __glewColor3hNV;\r
-GLEW_FUN_EXPORT PFNGLCOLOR3HVNVPROC __glewColor3hvNV;\r
-GLEW_FUN_EXPORT PFNGLCOLOR4HNVPROC __glewColor4hNV;\r
-GLEW_FUN_EXPORT PFNGLCOLOR4HVNVPROC __glewColor4hvNV;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDHNVPROC __glewFogCoordhNV;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDHVNVPROC __glewFogCoordhvNV;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1HNVPROC __glewMultiTexCoord1hNV;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD1HVNVPROC __glewMultiTexCoord1hvNV;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2HNVPROC __glewMultiTexCoord2hNV;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD2HVNVPROC __glewMultiTexCoord2hvNV;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3HNVPROC __glewMultiTexCoord3hNV;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD3HVNVPROC __glewMultiTexCoord3hvNV;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4HNVPROC __glewMultiTexCoord4hNV;\r
-GLEW_FUN_EXPORT PFNGLMULTITEXCOORD4HVNVPROC __glewMultiTexCoord4hvNV;\r
-GLEW_FUN_EXPORT PFNGLNORMAL3HNVPROC __glewNormal3hNV;\r
-GLEW_FUN_EXPORT PFNGLNORMAL3HVNVPROC __glewNormal3hvNV;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3HNVPROC __glewSecondaryColor3hNV;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLOR3HVNVPROC __glewSecondaryColor3hvNV;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD1HNVPROC __glewTexCoord1hNV;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD1HVNVPROC __glewTexCoord1hvNV;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2HNVPROC __glewTexCoord2hNV;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2HVNVPROC __glewTexCoord2hvNV;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD3HNVPROC __glewTexCoord3hNV;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD3HVNVPROC __glewTexCoord3hvNV;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD4HNVPROC __glewTexCoord4hNV;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD4HVNVPROC __glewTexCoord4hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEX2HNVPROC __glewVertex2hNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEX2HVNVPROC __glewVertex2hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEX3HNVPROC __glewVertex3hNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEX3HVNVPROC __glewVertex3hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEX4HNVPROC __glewVertex4hNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEX4HVNVPROC __glewVertex4hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1HNVPROC __glewVertexAttrib1hNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1HVNVPROC __glewVertexAttrib1hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2HNVPROC __glewVertexAttrib2hNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2HVNVPROC __glewVertexAttrib2hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3HNVPROC __glewVertexAttrib3hNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3HVNVPROC __glewVertexAttrib3hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4HNVPROC __glewVertexAttrib4hNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4HVNVPROC __glewVertexAttrib4hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1HVNVPROC __glewVertexAttribs1hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2HVNVPROC __glewVertexAttribs2hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3HVNVPROC __glewVertexAttribs3hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4HVNVPROC __glewVertexAttribs4hvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTHNVPROC __glewVertexWeighthNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXWEIGHTHVNVPROC __glewVertexWeighthvNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINOCCLUSIONQUERYNVPROC __glewBeginOcclusionQueryNV;\r
-GLEW_FUN_EXPORT PFNGLDELETEOCCLUSIONQUERIESNVPROC __glewDeleteOcclusionQueriesNV;\r
-GLEW_FUN_EXPORT PFNGLENDOCCLUSIONQUERYNVPROC __glewEndOcclusionQueryNV;\r
-GLEW_FUN_EXPORT PFNGLGENOCCLUSIONQUERIESNVPROC __glewGenOcclusionQueriesNV;\r
-GLEW_FUN_EXPORT PFNGLGETOCCLUSIONQUERYIVNVPROC __glewGetOcclusionQueryivNV;\r
-GLEW_FUN_EXPORT PFNGLGETOCCLUSIONQUERYUIVNVPROC __glewGetOcclusionQueryuivNV;\r
-GLEW_FUN_EXPORT PFNGLISOCCLUSIONQUERYNVPROC __glewIsOcclusionQueryNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC __glewProgramBufferParametersIivNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC __glewProgramBufferParametersIuivNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC __glewProgramBufferParametersfvNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOPYPATHNVPROC __glewCopyPathNV;\r
-GLEW_FUN_EXPORT PFNGLCOVERFILLPATHINSTANCEDNVPROC __glewCoverFillPathInstancedNV;\r
-GLEW_FUN_EXPORT PFNGLCOVERFILLPATHNVPROC __glewCoverFillPathNV;\r
-GLEW_FUN_EXPORT PFNGLCOVERSTROKEPATHINSTANCEDNVPROC __glewCoverStrokePathInstancedNV;\r
-GLEW_FUN_EXPORT PFNGLCOVERSTROKEPATHNVPROC __glewCoverStrokePathNV;\r
-GLEW_FUN_EXPORT PFNGLDELETEPATHSNVPROC __glewDeletePathsNV;\r
-GLEW_FUN_EXPORT PFNGLGENPATHSNVPROC __glewGenPathsNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHCOLORGENFVNVPROC __glewGetPathColorGenfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHCOLORGENIVNVPROC __glewGetPathColorGenivNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHCOMMANDSNVPROC __glewGetPathCommandsNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHCOORDSNVPROC __glewGetPathCoordsNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHDASHARRAYNVPROC __glewGetPathDashArrayNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHLENGTHNVPROC __glewGetPathLengthNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHMETRICRANGENVPROC __glewGetPathMetricRangeNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHMETRICSNVPROC __glewGetPathMetricsNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHPARAMETERFVNVPROC __glewGetPathParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHPARAMETERIVNVPROC __glewGetPathParameterivNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHSPACINGNVPROC __glewGetPathSpacingNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHTEXGENFVNVPROC __glewGetPathTexGenfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETPATHTEXGENIVNVPROC __glewGetPathTexGenivNV;\r
-GLEW_FUN_EXPORT PFNGLINTERPOLATEPATHSNVPROC __glewInterpolatePathsNV;\r
-GLEW_FUN_EXPORT PFNGLISPATHNVPROC __glewIsPathNV;\r
-GLEW_FUN_EXPORT PFNGLISPOINTINFILLPATHNVPROC __glewIsPointInFillPathNV;\r
-GLEW_FUN_EXPORT PFNGLISPOINTINSTROKEPATHNVPROC __glewIsPointInStrokePathNV;\r
-GLEW_FUN_EXPORT PFNGLPATHCOLORGENNVPROC __glewPathColorGenNV;\r
-GLEW_FUN_EXPORT PFNGLPATHCOMMANDSNVPROC __glewPathCommandsNV;\r
-GLEW_FUN_EXPORT PFNGLPATHCOORDSNVPROC __glewPathCoordsNV;\r
-GLEW_FUN_EXPORT PFNGLPATHCOVERDEPTHFUNCNVPROC __glewPathCoverDepthFuncNV;\r
-GLEW_FUN_EXPORT PFNGLPATHDASHARRAYNVPROC __glewPathDashArrayNV;\r
-GLEW_FUN_EXPORT PFNGLPATHFOGGENNVPROC __glewPathFogGenNV;\r
-GLEW_FUN_EXPORT PFNGLPATHGLYPHRANGENVPROC __glewPathGlyphRangeNV;\r
-GLEW_FUN_EXPORT PFNGLPATHGLYPHSNVPROC __glewPathGlyphsNV;\r
-GLEW_FUN_EXPORT PFNGLPATHPARAMETERFNVPROC __glewPathParameterfNV;\r
-GLEW_FUN_EXPORT PFNGLPATHPARAMETERFVNVPROC __glewPathParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLPATHPARAMETERINVPROC __glewPathParameteriNV;\r
-GLEW_FUN_EXPORT PFNGLPATHPARAMETERIVNVPROC __glewPathParameterivNV;\r
-GLEW_FUN_EXPORT PFNGLPATHSTENCILDEPTHOFFSETNVPROC __glewPathStencilDepthOffsetNV;\r
-GLEW_FUN_EXPORT PFNGLPATHSTENCILFUNCNVPROC __glewPathStencilFuncNV;\r
-GLEW_FUN_EXPORT PFNGLPATHSTRINGNVPROC __glewPathStringNV;\r
-GLEW_FUN_EXPORT PFNGLPATHSUBCOMMANDSNVPROC __glewPathSubCommandsNV;\r
-GLEW_FUN_EXPORT PFNGLPATHSUBCOORDSNVPROC __glewPathSubCoordsNV;\r
-GLEW_FUN_EXPORT PFNGLPATHTEXGENNVPROC __glewPathTexGenNV;\r
-GLEW_FUN_EXPORT PFNGLPOINTALONGPATHNVPROC __glewPointAlongPathNV;\r
-GLEW_FUN_EXPORT PFNGLSTENCILFILLPATHINSTANCEDNVPROC __glewStencilFillPathInstancedNV;\r
-GLEW_FUN_EXPORT PFNGLSTENCILFILLPATHNVPROC __glewStencilFillPathNV;\r
-GLEW_FUN_EXPORT PFNGLSTENCILSTROKEPATHINSTANCEDNVPROC __glewStencilStrokePathInstancedNV;\r
-GLEW_FUN_EXPORT PFNGLSTENCILSTROKEPATHNVPROC __glewStencilStrokePathNV;\r
-GLEW_FUN_EXPORT PFNGLTRANSFORMPATHNVPROC __glewTransformPathNV;\r
-GLEW_FUN_EXPORT PFNGLWEIGHTPATHSNVPROC __glewWeightPathsNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLFLUSHPIXELDATARANGENVPROC __glewFlushPixelDataRangeNV;\r
-GLEW_FUN_EXPORT PFNGLPIXELDATARANGENVPROC __glewPixelDataRangeNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERINVPROC __glewPointParameteriNV;\r
-GLEW_FUN_EXPORT PFNGLPOINTPARAMETERIVNVPROC __glewPointParameterivNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETVIDEOI64VNVPROC __glewGetVideoi64vNV;\r
-GLEW_FUN_EXPORT PFNGLGETVIDEOIVNVPROC __glewGetVideoivNV;\r
-GLEW_FUN_EXPORT PFNGLGETVIDEOUI64VNVPROC __glewGetVideoui64vNV;\r
-GLEW_FUN_EXPORT PFNGLGETVIDEOUIVNVPROC __glewGetVideouivNV;\r
-GLEW_FUN_EXPORT PFNGLPRESENTFRAMEDUALFILLNVPROC __glewPresentFrameDualFillNV;\r
-GLEW_FUN_EXPORT PFNGLPRESENTFRAMEKEYEDNVPROC __glewPresentFrameKeyedNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTINDEXNVPROC __glewPrimitiveRestartIndexNV;\r
-GLEW_FUN_EXPORT PFNGLPRIMITIVERESTARTNVPROC __glewPrimitiveRestartNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOMBINERINPUTNVPROC __glewCombinerInputNV;\r
-GLEW_FUN_EXPORT PFNGLCOMBINEROUTPUTNVPROC __glewCombinerOutputNV;\r
-GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERFNVPROC __glewCombinerParameterfNV;\r
-GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERFVNVPROC __glewCombinerParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERINVPROC __glewCombinerParameteriNV;\r
-GLEW_FUN_EXPORT PFNGLCOMBINERPARAMETERIVNVPROC __glewCombinerParameterivNV;\r
-GLEW_FUN_EXPORT PFNGLFINALCOMBINERINPUTNVPROC __glewFinalCombinerInputNV;\r
-GLEW_FUN_EXPORT PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC __glewGetCombinerInputParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC __glewGetCombinerInputParameterivNV;\r
-GLEW_FUN_EXPORT PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC __glewGetCombinerOutputParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC __glewGetCombinerOutputParameterivNV;\r
-GLEW_FUN_EXPORT PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC __glewGetFinalCombinerInputParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC __glewGetFinalCombinerInputParameterivNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOMBINERSTAGEPARAMETERFVNVPROC __glewCombinerStageParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC __glewGetCombinerStageParameterfvNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETBUFFERPARAMETERUI64VNVPROC __glewGetBufferParameterui64vNV;\r
-GLEW_FUN_EXPORT PFNGLGETINTEGERUI64VNVPROC __glewGetIntegerui64vNV;\r
-GLEW_FUN_EXPORT PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC __glewGetNamedBufferParameterui64vNV;\r
-GLEW_FUN_EXPORT PFNGLISBUFFERRESIDENTNVPROC __glewIsBufferResidentNV;\r
-GLEW_FUN_EXPORT PFNGLISNAMEDBUFFERRESIDENTNVPROC __glewIsNamedBufferResidentNV;\r
-GLEW_FUN_EXPORT PFNGLMAKEBUFFERNONRESIDENTNVPROC __glewMakeBufferNonResidentNV;\r
-GLEW_FUN_EXPORT PFNGLMAKEBUFFERRESIDENTNVPROC __glewMakeBufferResidentNV;\r
-GLEW_FUN_EXPORT PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC __glewMakeNamedBufferNonResidentNV;\r
-GLEW_FUN_EXPORT PFNGLMAKENAMEDBUFFERRESIDENTNVPROC __glewMakeNamedBufferResidentNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMUI64NVPROC __glewProgramUniformui64NV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMUNIFORMUI64VNVPROC __glewProgramUniformui64vNV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMUI64NVPROC __glewUniformui64NV;\r
-GLEW_FUN_EXPORT PFNGLUNIFORMUI64VNVPROC __glewUniformui64vNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXTUREBARRIERNVPROC __glewTextureBarrierNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXIMAGE2DMULTISAMPLECOVERAGENVPROC __glewTexImage2DMultisampleCoverageNV;\r
-GLEW_FUN_EXPORT PFNGLTEXIMAGE3DMULTISAMPLECOVERAGENVPROC __glewTexImage3DMultisampleCoverageNV;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DMULTISAMPLECOVERAGENVPROC __glewTextureImage2DMultisampleCoverageNV;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC __glewTextureImage2DMultisampleNV;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC __glewTextureImage3DMultisampleCoverageNV;\r
-GLEW_FUN_EXPORT PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC __glewTextureImage3DMultisampleNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLACTIVEVARYINGNVPROC __glewActiveVaryingNV;\r
-GLEW_FUN_EXPORT PFNGLBEGINTRANSFORMFEEDBACKNVPROC __glewBeginTransformFeedbackNV;\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFERBASENVPROC __glewBindBufferBaseNV;\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFEROFFSETNVPROC __glewBindBufferOffsetNV;\r
-GLEW_FUN_EXPORT PFNGLBINDBUFFERRANGENVPROC __glewBindBufferRangeNV;\r
-GLEW_FUN_EXPORT PFNGLENDTRANSFORMFEEDBACKNVPROC __glewEndTransformFeedbackNV;\r
-GLEW_FUN_EXPORT PFNGLGETACTIVEVARYINGNVPROC __glewGetActiveVaryingNV;\r
-GLEW_FUN_EXPORT PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC __glewGetTransformFeedbackVaryingNV;\r
-GLEW_FUN_EXPORT PFNGLGETVARYINGLOCATIONNVPROC __glewGetVaryingLocationNV;\r
-GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC __glewTransformFeedbackAttribsNV;\r
-GLEW_FUN_EXPORT PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC __glewTransformFeedbackVaryingsNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLBINDTRANSFORMFEEDBACKNVPROC __glewBindTransformFeedbackNV;\r
-GLEW_FUN_EXPORT PFNGLDELETETRANSFORMFEEDBACKSNVPROC __glewDeleteTransformFeedbacksNV;\r
-GLEW_FUN_EXPORT PFNGLDRAWTRANSFORMFEEDBACKNVPROC __glewDrawTransformFeedbackNV;\r
-GLEW_FUN_EXPORT PFNGLGENTRANSFORMFEEDBACKSNVPROC __glewGenTransformFeedbacksNV;\r
-GLEW_FUN_EXPORT PFNGLISTRANSFORMFEEDBACKNVPROC __glewIsTransformFeedbackNV;\r
-GLEW_FUN_EXPORT PFNGLPAUSETRANSFORMFEEDBACKNVPROC __glewPauseTransformFeedbackNV;\r
-GLEW_FUN_EXPORT PFNGLRESUMETRANSFORMFEEDBACKNVPROC __glewResumeTransformFeedbackNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLVDPAUFININVPROC __glewVDPAUFiniNV;\r
-GLEW_FUN_EXPORT PFNGLVDPAUGETSURFACEIVNVPROC __glewVDPAUGetSurfaceivNV;\r
-GLEW_FUN_EXPORT PFNGLVDPAUINITNVPROC __glewVDPAUInitNV;\r
-GLEW_FUN_EXPORT PFNGLVDPAUISSURFACENVPROC __glewVDPAUIsSurfaceNV;\r
-GLEW_FUN_EXPORT PFNGLVDPAUMAPSURFACESNVPROC __glewVDPAUMapSurfacesNV;\r
-GLEW_FUN_EXPORT PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC __glewVDPAURegisterOutputSurfaceNV;\r
-GLEW_FUN_EXPORT PFNGLVDPAUREGISTERVIDEOSURFACENVPROC __glewVDPAURegisterVideoSurfaceNV;\r
-GLEW_FUN_EXPORT PFNGLVDPAUSURFACEACCESSNVPROC __glewVDPAUSurfaceAccessNV;\r
-GLEW_FUN_EXPORT PFNGLVDPAUUNMAPSURFACESNVPROC __glewVDPAUUnmapSurfacesNV;\r
-GLEW_FUN_EXPORT PFNGLVDPAUUNREGISTERSURFACENVPROC __glewVDPAUUnregisterSurfaceNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLFLUSHVERTEXARRAYRANGENVPROC __glewFlushVertexArrayRangeNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXARRAYRANGENVPROC __glewVertexArrayRangeNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLI64VNVPROC __glewGetVertexAttribLi64vNV;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBLUI64VNVPROC __glewGetVertexAttribLui64vNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1I64NVPROC __glewVertexAttribL1i64NV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1I64VNVPROC __glewVertexAttribL1i64vNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64NVPROC __glewVertexAttribL1ui64NV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL1UI64VNVPROC __glewVertexAttribL1ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2I64NVPROC __glewVertexAttribL2i64NV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2I64VNVPROC __glewVertexAttribL2i64vNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2UI64NVPROC __glewVertexAttribL2ui64NV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL2UI64VNVPROC __glewVertexAttribL2ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3I64NVPROC __glewVertexAttribL3i64NV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3I64VNVPROC __glewVertexAttribL3i64vNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3UI64NVPROC __glewVertexAttribL3ui64NV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL3UI64VNVPROC __glewVertexAttribL3ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4I64NVPROC __glewVertexAttribL4i64NV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4I64VNVPROC __glewVertexAttribL4i64vNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4UI64NVPROC __glewVertexAttribL4ui64NV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBL4UI64VNVPROC __glewVertexAttribL4ui64vNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBLFORMATNVPROC __glewVertexAttribLFormatNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLBUFFERADDRESSRANGENVPROC __glewBufferAddressRangeNV;\r
-GLEW_FUN_EXPORT PFNGLCOLORFORMATNVPROC __glewColorFormatNV;\r
-GLEW_FUN_EXPORT PFNGLEDGEFLAGFORMATNVPROC __glewEdgeFlagFormatNV;\r
-GLEW_FUN_EXPORT PFNGLFOGCOORDFORMATNVPROC __glewFogCoordFormatNV;\r
-GLEW_FUN_EXPORT PFNGLGETINTEGERUI64I_VNVPROC __glewGetIntegerui64i_vNV;\r
-GLEW_FUN_EXPORT PFNGLINDEXFORMATNVPROC __glewIndexFormatNV;\r
-GLEW_FUN_EXPORT PFNGLNORMALFORMATNVPROC __glewNormalFormatNV;\r
-GLEW_FUN_EXPORT PFNGLSECONDARYCOLORFORMATNVPROC __glewSecondaryColorFormatNV;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORDFORMATNVPROC __glewTexCoordFormatNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBFORMATNVPROC __glewVertexAttribFormatNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBIFORMATNVPROC __glewVertexAttribIFormatNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXFORMATNVPROC __glewVertexFormatNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLAREPROGRAMSRESIDENTNVPROC __glewAreProgramsResidentNV;\r
-GLEW_FUN_EXPORT PFNGLBINDPROGRAMNVPROC __glewBindProgramNV;\r
-GLEW_FUN_EXPORT PFNGLDELETEPROGRAMSNVPROC __glewDeleteProgramsNV;\r
-GLEW_FUN_EXPORT PFNGLEXECUTEPROGRAMNVPROC __glewExecuteProgramNV;\r
-GLEW_FUN_EXPORT PFNGLGENPROGRAMSNVPROC __glewGenProgramsNV;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMPARAMETERDVNVPROC __glewGetProgramParameterdvNV;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMPARAMETERFVNVPROC __glewGetProgramParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMSTRINGNVPROC __glewGetProgramStringNV;\r
-GLEW_FUN_EXPORT PFNGLGETPROGRAMIVNVPROC __glewGetProgramivNV;\r
-GLEW_FUN_EXPORT PFNGLGETTRACKMATRIXIVNVPROC __glewGetTrackMatrixivNV;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBPOINTERVNVPROC __glewGetVertexAttribPointervNV;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBDVNVPROC __glewGetVertexAttribdvNV;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBFVNVPROC __glewGetVertexAttribfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETVERTEXATTRIBIVNVPROC __glewGetVertexAttribivNV;\r
-GLEW_FUN_EXPORT PFNGLISPROGRAMNVPROC __glewIsProgramNV;\r
-GLEW_FUN_EXPORT PFNGLLOADPROGRAMNVPROC __glewLoadProgramNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4DNVPROC __glewProgramParameter4dNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4DVNVPROC __glewProgramParameter4dvNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4FNVPROC __glewProgramParameter4fNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETER4FVNVPROC __glewProgramParameter4fvNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERS4DVNVPROC __glewProgramParameters4dvNV;\r
-GLEW_FUN_EXPORT PFNGLPROGRAMPARAMETERS4FVNVPROC __glewProgramParameters4fvNV;\r
-GLEW_FUN_EXPORT PFNGLREQUESTRESIDENTPROGRAMSNVPROC __glewRequestResidentProgramsNV;\r
-GLEW_FUN_EXPORT PFNGLTRACKMATRIXNVPROC __glewTrackMatrixNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DNVPROC __glewVertexAttrib1dNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1DVNVPROC __glewVertexAttrib1dvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FNVPROC __glewVertexAttrib1fNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1FVNVPROC __glewVertexAttrib1fvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SNVPROC __glewVertexAttrib1sNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB1SVNVPROC __glewVertexAttrib1svNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DNVPROC __glewVertexAttrib2dNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2DVNVPROC __glewVertexAttrib2dvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FNVPROC __glewVertexAttrib2fNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2FVNVPROC __glewVertexAttrib2fvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SNVPROC __glewVertexAttrib2sNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB2SVNVPROC __glewVertexAttrib2svNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DNVPROC __glewVertexAttrib3dNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3DVNVPROC __glewVertexAttrib3dvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FNVPROC __glewVertexAttrib3fNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3FVNVPROC __glewVertexAttrib3fvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SNVPROC __glewVertexAttrib3sNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB3SVNVPROC __glewVertexAttrib3svNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DNVPROC __glewVertexAttrib4dNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4DVNVPROC __glewVertexAttrib4dvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FNVPROC __glewVertexAttrib4fNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4FVNVPROC __glewVertexAttrib4fvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SNVPROC __glewVertexAttrib4sNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4SVNVPROC __glewVertexAttrib4svNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBNVPROC __glewVertexAttrib4ubNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIB4UBVNVPROC __glewVertexAttrib4ubvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBPOINTERNVPROC __glewVertexAttribPointerNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1DVNVPROC __glewVertexAttribs1dvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1FVNVPROC __glewVertexAttribs1fvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS1SVNVPROC __glewVertexAttribs1svNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2DVNVPROC __glewVertexAttribs2dvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2FVNVPROC __glewVertexAttribs2fvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS2SVNVPROC __glewVertexAttribs2svNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3DVNVPROC __glewVertexAttribs3dvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3FVNVPROC __glewVertexAttribs3fvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS3SVNVPROC __glewVertexAttribs3svNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4DVNVPROC __glewVertexAttribs4dvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4FVNVPROC __glewVertexAttribs4fvNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4SVNVPROC __glewVertexAttribs4svNV;\r
-GLEW_FUN_EXPORT PFNGLVERTEXATTRIBS4UBVNVPROC __glewVertexAttribs4ubvNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLBEGINVIDEOCAPTURENVPROC __glewBeginVideoCaptureNV;\r
-GLEW_FUN_EXPORT PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC __glewBindVideoCaptureStreamBufferNV;\r
-GLEW_FUN_EXPORT PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC __glewBindVideoCaptureStreamTextureNV;\r
-GLEW_FUN_EXPORT PFNGLENDVIDEOCAPTURENVPROC __glewEndVideoCaptureNV;\r
-GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTURESTREAMDVNVPROC __glewGetVideoCaptureStreamdvNV;\r
-GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTURESTREAMFVNVPROC __glewGetVideoCaptureStreamfvNV;\r
-GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTURESTREAMIVNVPROC __glewGetVideoCaptureStreamivNV;\r
-GLEW_FUN_EXPORT PFNGLGETVIDEOCAPTUREIVNVPROC __glewGetVideoCaptureivNV;\r
-GLEW_FUN_EXPORT PFNGLVIDEOCAPTURENVPROC __glewVideoCaptureNV;\r
-GLEW_FUN_EXPORT PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC __glewVideoCaptureStreamParameterdvNV;\r
-GLEW_FUN_EXPORT PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC __glewVideoCaptureStreamParameterfvNV;\r
-GLEW_FUN_EXPORT PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC __glewVideoCaptureStreamParameterivNV;\r
-\r
-GLEW_FUN_EXPORT PFNGLCLEARDEPTHFOESPROC __glewClearDepthfOES;\r
-GLEW_FUN_EXPORT PFNGLCLIPPLANEFOESPROC __glewClipPlanefOES;\r
-GLEW_FUN_EXPORT PFNGLDEPTHRANGEFOESPROC __glewDepthRangefOES;\r
-GLEW_FUN_EXPORT PFNGLFRUSTUMFOESPROC __glewFrustumfOES;\r
-GLEW_FUN_EXPORT PFNGLGETCLIPPLANEFOESPROC __glewGetClipPlanefOES;\r
-GLEW_FUN_EXPORT PFNGLORTHOFOESPROC __glewOrthofOES;\r
-\r
-GLEW_FUN_EXPORT PFNGLDETAILTEXFUNCSGISPROC __glewDetailTexFuncSGIS;\r
-GLEW_FUN_EXPORT PFNGLGETDETAILTEXFUNCSGISPROC __glewGetDetailTexFuncSGIS;\r
-\r
-GLEW_FUN_EXPORT PFNGLFOGFUNCSGISPROC __glewFogFuncSGIS;\r
-GLEW_FUN_EXPORT PFNGLGETFOGFUNCSGISPROC __glewGetFogFuncSGIS;\r
-\r
-GLEW_FUN_EXPORT PFNGLSAMPLEMASKSGISPROC __glewSampleMaskSGIS;\r
-GLEW_FUN_EXPORT PFNGLSAMPLEPATTERNSGISPROC __glewSamplePatternSGIS;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETSHARPENTEXFUNCSGISPROC __glewGetSharpenTexFuncSGIS;\r
-GLEW_FUN_EXPORT PFNGLSHARPENTEXFUNCSGISPROC __glewSharpenTexFuncSGIS;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXIMAGE4DSGISPROC __glewTexImage4DSGIS;\r
-GLEW_FUN_EXPORT PFNGLTEXSUBIMAGE4DSGISPROC __glewTexSubImage4DSGIS;\r
-\r
-GLEW_FUN_EXPORT PFNGLGETTEXFILTERFUNCSGISPROC __glewGetTexFilterFuncSGIS;\r
-GLEW_FUN_EXPORT PFNGLTEXFILTERFUNCSGISPROC __glewTexFilterFuncSGIS;\r
-\r
-GLEW_FUN_EXPORT PFNGLASYNCMARKERSGIXPROC __glewAsyncMarkerSGIX;\r
-GLEW_FUN_EXPORT PFNGLDELETEASYNCMARKERSSGIXPROC __glewDeleteAsyncMarkersSGIX;\r
-GLEW_FUN_EXPORT PFNGLFINISHASYNCSGIXPROC __glewFinishAsyncSGIX;\r
-GLEW_FUN_EXPORT PFNGLGENASYNCMARKERSSGIXPROC __glewGenAsyncMarkersSGIX;\r
-GLEW_FUN_EXPORT PFNGLISASYNCMARKERSGIXPROC __glewIsAsyncMarkerSGIX;\r
-GLEW_FUN_EXPORT PFNGLPOLLASYNCSGIXPROC __glewPollAsyncSGIX;\r
-\r
-GLEW_FUN_EXPORT PFNGLFLUSHRASTERSGIXPROC __glewFlushRasterSGIX;\r
-\r
-GLEW_FUN_EXPORT PFNGLTEXTUREFOGSGIXPROC __glewTextureFogSGIX;\r
-\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTCOLORMATERIALSGIXPROC __glewFragmentColorMaterialSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFSGIXPROC __glewFragmentLightModelfSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELFVSGIXPROC __glewFragmentLightModelfvSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELISGIXPROC __glewFragmentLightModeliSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTMODELIVSGIXPROC __glewFragmentLightModelivSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFSGIXPROC __glewFragmentLightfSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTFVSGIXPROC __glewFragmentLightfvSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTISGIXPROC __glewFragmentLightiSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTLIGHTIVSGIXPROC __glewFragmentLightivSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFSGIXPROC __glewFragmentMaterialfSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALFVSGIXPROC __glewFragmentMaterialfvSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALISGIXPROC __glewFragmentMaterialiSGIX;\r
-GLEW_FUN_EXPORT PFNGLFRAGMENTMATERIALIVSGIXPROC __glewFragmentMaterialivSGIX;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTFVSGIXPROC __glewGetFragmentLightfvSGIX;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTLIGHTIVSGIXPROC __glewGetFragmentLightivSGIX;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALFVSGIXPROC __glewGetFragmentMaterialfvSGIX;\r
-GLEW_FUN_EXPORT PFNGLGETFRAGMENTMATERIALIVSGIXPROC __glewGetFragmentMaterialivSGIX;\r
-\r
-GLEW_FUN_EXPORT PFNGLFRAMEZOOMSGIXPROC __glewFrameZoomSGIX;\r
-\r
-GLEW_FUN_EXPORT PFNGLPIXELTEXGENSGIXPROC __glewPixelTexGenSGIX;\r
-\r
-GLEW_FUN_EXPORT PFNGLREFERENCEPLANESGIXPROC __glewReferencePlaneSGIX;\r
-\r
-GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERFSGIXPROC __glewSpriteParameterfSGIX;\r
-GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERFVSGIXPROC __glewSpriteParameterfvSGIX;\r
-GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERISGIXPROC __glewSpriteParameteriSGIX;\r
-GLEW_FUN_EXPORT PFNGLSPRITEPARAMETERIVSGIXPROC __glewSpriteParameterivSGIX;\r
-\r
-GLEW_FUN_EXPORT PFNGLTAGSAMPLEBUFFERSGIXPROC __glewTagSampleBufferSGIX;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERFVSGIPROC __glewColorTableParameterfvSGI;\r
-GLEW_FUN_EXPORT PFNGLCOLORTABLEPARAMETERIVSGIPROC __glewColorTableParameterivSGI;\r
-GLEW_FUN_EXPORT PFNGLCOLORTABLESGIPROC __glewColorTableSGI;\r
-GLEW_FUN_EXPORT PFNGLCOPYCOLORTABLESGIPROC __glewCopyColorTableSGI;\r
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERFVSGIPROC __glewGetColorTableParameterfvSGI;\r
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLEPARAMETERIVSGIPROC __glewGetColorTableParameterivSGI;\r
-GLEW_FUN_EXPORT PFNGLGETCOLORTABLESGIPROC __glewGetColorTableSGI;\r
-\r
-GLEW_FUN_EXPORT PFNGLFINISHTEXTURESUNXPROC __glewFinishTextureSUNX;\r
-\r
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORBSUNPROC __glewGlobalAlphaFactorbSUN;\r
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORDSUNPROC __glewGlobalAlphaFactordSUN;\r
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORFSUNPROC __glewGlobalAlphaFactorfSUN;\r
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORISUNPROC __glewGlobalAlphaFactoriSUN;\r
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORSSUNPROC __glewGlobalAlphaFactorsSUN;\r
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUBSUNPROC __glewGlobalAlphaFactorubSUN;\r
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUISUNPROC __glewGlobalAlphaFactoruiSUN;\r
-GLEW_FUN_EXPORT PFNGLGLOBALALPHAFACTORUSSUNPROC __glewGlobalAlphaFactorusSUN;\r
-\r
-GLEW_FUN_EXPORT PFNGLREADVIDEOPIXELSSUNPROC __glewReadVideoPixelsSUN;\r
-\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEPOINTERSUNPROC __glewReplacementCodePointerSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUBSUNPROC __glewReplacementCodeubSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUBVSUNPROC __glewReplacementCodeubvSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUISUNPROC __glewReplacementCodeuiSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVSUNPROC __glewReplacementCodeuivSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUSSUNPROC __glewReplacementCodeusSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUSVSUNPROC __glewReplacementCodeusvSUN;\r
-\r
-GLEW_FUN_EXPORT PFNGLCOLOR3FVERTEX3FSUNPROC __glewColor3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLCOLOR3FVERTEX3FVSUNPROC __glewColor3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewColor4fNormal3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewColor4fNormal3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX2FSUNPROC __glewColor4ubVertex2fSUN;\r
-GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX2FVSUNPROC __glewColor4ubVertex2fvSUN;\r
-GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX3FSUNPROC __glewColor4ubVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLCOLOR4UBVERTEX3FVSUNPROC __glewColor4ubVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLNORMAL3FVERTEX3FSUNPROC __glewNormal3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLNORMAL3FVERTEX3FVSUNPROC __glewNormal3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC __glewReplacementCodeuiColor3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiColor4fNormal3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC __glewReplacementCodeuiColor4ubVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC __glewReplacementCodeuiColor4ubVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiNormal3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiNormal3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC __glewReplacementCodeuiTexCoord2fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC __glewReplacementCodeuiVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC __glewReplacementCodeuiVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC __glewTexCoord2fColor3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC __glewTexCoord2fColor3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fColor4fNormal3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC __glewTexCoord2fColor4ubVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC __glewTexCoord2fColor4ubVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC __glewTexCoord2fNormal3fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC __glewTexCoord2fNormal3fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FVERTEX3FSUNPROC __glewTexCoord2fVertex3fSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD2FVERTEX3FVSUNPROC __glewTexCoord2fVertex3fvSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC __glewTexCoord4fColor4fNormal3fVertex4fvSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD4FVERTEX4FSUNPROC __glewTexCoord4fVertex4fSUN;\r
-GLEW_FUN_EXPORT PFNGLTEXCOORD4FVERTEX4FVSUNPROC __glewTexCoord4fVertex4fvSUN;\r
-\r
-GLEW_FUN_EXPORT PFNGLADDSWAPHINTRECTWINPROC __glewAddSwapHintRectWIN;\r
-\r
-#if defined(GLEW_MX) && !defined(_WIN32)\r
-struct GLEWContextStruct\r
-{\r
-#endif /* GLEW_MX */\r
-\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_1;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2_1;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_3;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_5;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_2_0;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_2_1;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_0;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_1;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_3_3;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_0;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_1;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_4_2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_multisample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_tbuffer;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_3DFX_texture_compression_FXT1;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_blend_minmax_factor;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_conservative_depth;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_debug_output;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_depth_clamp_separate;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_draw_buffers_blend;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_multi_draw_indirect;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_name_gen_delete;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_performance_monitor;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_sample_positions;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_seamless_cubemap_per_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_shader_stencil_export;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_texture_texture4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_transform_feedback3_lines_triangles;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_AMD_vertex_shader_tessellator;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_aux_depth_stencil;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_client_storage;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_element_array;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_fence;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_float_pixels;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_flush_buffer_range;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_object_purgeable;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_pixel_buffer;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_rgb_422;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_row_bytes;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_specular_vector;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_texture_range;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_transform_hint;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_array_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_array_range;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_vertex_program_evaluators;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_APPLE_ycbcr_422;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_ES2_compatibility;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_base_instance;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_blend_func_extended;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_cl_event;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_color_buffer_float;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compatibility;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_compressed_texture_pixel_storage;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_conservative_depth;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_copy_buffer;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_debug_output;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_buffer_float;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_clamp;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_depth_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_buffers;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_buffers_blend;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_elements_base_vertex;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_indirect;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_draw_instanced;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_explicit_attrib_location;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_coord_conventions;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_program;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_program_shadow;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_fragment_shader;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_framebuffer_sRGB;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_geometry_shader4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_get_program_binary;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader5;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_gpu_shader_fp64;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_half_float_pixel;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_half_float_vertex;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_imaging;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_instanced_arrays;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_internalformat_query;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_map_buffer_alignment;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_map_buffer_range;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_matrix_palette;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multisample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_multitexture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_occlusion_query;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_occlusion_query2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_pixel_buffer_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_point_parameters;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_point_sprite;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_provoking_vertex;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_robustness;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sample_shading;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sampler_objects;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_seamless_cube_map;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_separate_shader_objects;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_atomic_counters;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_bit_encoding;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_image_load_store;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_objects;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_precision;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_stencil_export;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_subroutine;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shader_texture_lod;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_100;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_420pack;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_include;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shading_language_packing;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shadow;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_shadow_ambient;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_sync;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_tessellation_shader;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_border_clamp;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_buffer_object_rgb32;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression_bptc;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_compression_rgtc;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_cube_map;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_cube_map_array;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_add;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_combine;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_crossbar;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_env_dot3;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_float;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_gather;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_mirrored_repeat;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_multisample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_non_power_of_two;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_query_lod;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rectangle;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rg;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_rgb10_a2ui;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_storage;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_texture_swizzle;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_timer_query;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback3;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transform_feedback_instanced;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_transpose_matrix;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_uniform_buffer_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_array_bgra;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_array_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_attrib_64bit;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_blend;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_buffer_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_program;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_shader;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_vertex_type_2_10_10_10_rev;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_viewport_array;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ARB_window_pos;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_point_sprites;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_texture_env_combine3;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_texture_env_route;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATIX_vertex_shader_output_point_size;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_draw_buffers;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_element_array;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_envmap_bumpmap;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_fragment_shader;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_map_object_buffer;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_meminfo;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_pn_triangles;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_separate_stencil;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_shader_texture_lod;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_text_fragment_shader;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_compression_3dc;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_env_combine3;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_float;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_texture_mirror_once;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_array_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_attrib_array_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_ATI_vertex_streams;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_422_pixels;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_Cg_shader;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_abgr;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_bgra;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_bindable_uniform;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_color;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_equation_separate;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_func_separate;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_logic_op;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_minmax;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_blend_subtract;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_clip_volume_hint;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_cmyka;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_color_subtable;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_compiled_vertex_array;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_convolution;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_coordinate_frame;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_copy_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_cull_vertex;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_depth_bounds_test;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_direct_state_access;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_buffers2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_instanced;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_draw_range_elements;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_fog_coord;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_fragment_lighting;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_blit;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_multisample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_multisample_blit_scaled;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_framebuffer_sRGB;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_geometry_shader4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_program_parameters;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_gpu_shader4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_histogram;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_array_formats;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_func;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_material;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_index_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_light_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_misc_attribute;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multi_draw_arrays;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_multisample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_depth_stencil;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_float;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_packed_pixels;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_paletted_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_buffer_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_transform;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_pixel_transform_color_table;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_point_parameters;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_polygon_offset;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_provoking_vertex;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_rescale_normal;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_scene_marker;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_secondary_color;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_separate_shader_objects;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_separate_specular_color;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shader_image_load_store;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shadow_funcs;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_shared_texture_palette;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_clear_tag;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_two_side;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_stencil_wrap;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_subtexture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture3D;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_array;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_buffer_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_dxt1;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_latc;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_rgtc;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_compression_s3tc;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_cube_map;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_edge_clamp;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_add;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_combine;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_env_dot3;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_filter_anisotropic;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_integer;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_lod_bias;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_mirror_clamp;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_perturb_normal;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_rectangle;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_sRGB_decode;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_shared_exponent;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_snorm;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_texture_swizzle;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_timer_query;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_transform_feedback;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_array_bgra;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_attrib_64bit;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_shader;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_vertex_weighting;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_EXT_x11_sync_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_GREMEDY_frame_terminator;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_GREMEDY_string_marker;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_HP_convolution_border_modes;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_HP_image_transform;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_HP_occlusion_test;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_HP_texture_lighting;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_cull_vertex;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_multimode_draw_arrays;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_rasterpos_clip;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_static_data;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_texture_mirrored_repeat;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_IBM_vertex_array_lists;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_INGR_color_clamp;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_INGR_interlace_read;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_parallel_arrays;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_INTEL_texture_scissor;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_KTX_buffer_region;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_MESAX_texture_stack;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_MESA_pack_invert;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_MESA_resize_buffers;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_MESA_window_pos;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_MESA_ycbcr_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NVX_gpu_memory_info;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_blend_square;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_conditional_render;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_depth_to_color;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_copy_image;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_buffer_float;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_clamp;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_depth_range_unclamped;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_evaluators;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_explicit_multisample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fence;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_float_buffer;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fog_distance;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_fragment_program_option;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_framebuffer_multisample_coverage;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_program4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_geometry_shader4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program5;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_program_fp64;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_gpu_shader5;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_half_float;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_light_max_exponent;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_multisample_coverage;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_multisample_filter_hint;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_occlusion_query;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_packed_depth_stencil;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_parameter_buffer_object;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_parameter_buffer_object2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_path_rendering;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_pixel_data_range;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_point_sprite;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_present_video;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_primitive_restart;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_register_combiners;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_register_combiners2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_shader_buffer_load;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_tessellation_program5;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texgen_emboss;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texgen_reflection;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_barrier;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_compression_vtc;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_env_combine4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_expand_normal;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_multisample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_rectangle;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_texture_shader3;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_transform_feedback2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vdpau_interop;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_array_range;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_array_range2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_attrib_integer_64bit;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_buffer_unified_memory;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program1_1;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program2;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program2_option;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program3;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_vertex_program4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_NV_video_capture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_OES_byte_coordinates;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_OES_compressed_paletted_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_OES_read_format;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_OES_single_precision;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_OML_interlace;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_OML_resample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_OML_subsample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_PGI_misc_hints;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_PGI_vertex_hints;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_REND_screen_coordinates;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_S3_s3tc;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_color_range;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_detail_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_fog_function;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_generate_mipmap;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_multisample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_pixel_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_point_line_texgen;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_sharpen_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture4D;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_border_clamp;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_edge_clamp;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_filter4;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_lod;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIS_texture_select;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async_histogram;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_async_pixel;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_blend_alpha_minmax;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_clipmap;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_convolution_accuracy;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_depth_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_flush_raster;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_offset;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fog_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_fragment_specular_lighting;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_framezoom;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_interlace;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ir_instrument1;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_list_priority;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_pixel_texture_bits;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_reference_plane;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_resample;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_shadow;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_shadow_ambient;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_sprite;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_tag_sample_buffer;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_add_env;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_coordinate_clamp;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_lod_bias;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_multi_buffer;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_range;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_texture_scale_bias;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_preclip;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_vertex_preclip_hint;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGIX_ycrcb;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGI_color_matrix;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGI_color_table;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SGI_texture_color_table;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SUNX_constant_data;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_convolution_border_modes;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_global_alpha;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_mesh_array;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_read_video_pixels;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_slice_accum;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_triangle_list;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_SUN_vertex;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_WIN_phong_shading;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_WIN_specular_fog;\r
-GLEW_VAR_EXPORT GLboolean __GLEW_WIN_swap_hint;\r
-\r
-#ifdef GLEW_MX\r
-}; /* GLEWContextStruct */\r
-#endif /* GLEW_MX */\r
-\r
-/* ------------------------------------------------------------------------- */\r
-\r
-/* error codes */\r
-#define GLEW_OK 0\r
-#define GLEW_NO_ERROR 0\r
-#define GLEW_ERROR_NO_GL_VERSION 1  /* missing GL version */\r
-#define GLEW_ERROR_GL_VERSION_10_ONLY 2  /* Need at least OpenGL 1.1 */\r
-#define GLEW_ERROR_GLX_VERSION_11_ONLY 3  /* Need at least GLX 1.2 */\r
-\r
-/* string codes */\r
-#define GLEW_VERSION 1\r
-#define GLEW_VERSION_MAJOR 2\r
-#define GLEW_VERSION_MINOR 3\r
-#define GLEW_VERSION_MICRO 4\r
-\r
-/* API */\r
-#ifdef GLEW_MX\r
-\r
-typedef struct GLEWContextStruct GLEWContext;\r
-GLEWAPI GLenum glewContextInit (GLEWContext* ctx);\r
-GLEWAPI GLboolean glewContextIsSupported (const GLEWContext* ctx, const char* name);\r
-\r
-#define glewInit() glewContextInit(glewGetContext())\r
-#define glewIsSupported(x) glewContextIsSupported(glewGetContext(), x)\r
-#define glewIsExtensionSupported(x) glewIsSupported(x)\r
-\r
-#define GLEW_GET_VAR(x) (*(const GLboolean*)&(glewGetContext()->x))\r
-#ifdef _WIN32\r
-#  define GLEW_GET_FUN(x) glewGetContext()->x\r
-#else\r
-#  define GLEW_GET_FUN(x) x\r
-#endif\r
-\r
-#else /* GLEW_MX */\r
-\r
-GLEWAPI GLenum glewInit ();\r
-GLEWAPI GLboolean glewIsSupported (const char* name);\r
-#define glewIsExtensionSupported(x) glewIsSupported(x)\r
-\r
-#define GLEW_GET_VAR(x) (*(const GLboolean*)&x)\r
-#define GLEW_GET_FUN(x) x\r
-\r
-#endif /* GLEW_MX */\r
-\r
-GLEWAPI GLboolean glewExperimental;\r
-GLEWAPI GLboolean glewGetExtension (const char* name);\r
-GLEWAPI const GLubyte* glewGetErrorString (GLenum error);\r
-GLEWAPI const GLubyte* glewGetString (GLenum name);\r
-\r
-#ifdef __cplusplus\r
-}\r
-#endif\r
-\r
-#ifdef GLEW_APIENTRY_DEFINED\r
-#undef GLEW_APIENTRY_DEFINED\r
-#undef APIENTRY\r
-#undef GLAPIENTRY\r
-#define GLAPIENTRY\r
-#endif\r
-\r
-#ifdef GLEW_CALLBACK_DEFINED\r
-#undef GLEW_CALLBACK_DEFINED\r
-#undef CALLBACK\r
-#endif\r
-\r
-#ifdef GLEW_WINGDIAPI_DEFINED\r
-#undef GLEW_WINGDIAPI_DEFINED\r
-#undef WINGDIAPI\r
-#endif\r
-\r
-#undef GLAPI\r
-/* #undef GLEWAPI */\r
-\r
-#endif /* __glew_h__ */\r
diff --git a/dependencies64/glew/include/GL/glxew.h b/dependencies64/glew/include/GL/glxew.h
deleted file mode 100644 (file)
index 83c4bc6..0000000
+++ /dev/null
@@ -1,1587 +0,0 @@
-/*\r
-** The OpenGL Extension Wrangler Library\r
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r
-** Copyright (C) 2002, Lev Povalahev\r
-** All rights reserved.\r
-** \r
-** Redistribution and use in source and binary forms, with or without \r
-** modification, are permitted provided that the following conditions are met:\r
-** \r
-** * Redistributions of source code must retain the above copyright notice, \r
-**   this list of conditions and the following disclaimer.\r
-** * Redistributions in binary form must reproduce the above copyright notice, \r
-**   this list of conditions and the following disclaimer in the documentation \r
-**   and/or other materials provided with the distribution.\r
-** * The name of the author may be used to endorse or promote products \r
-**   derived from this software without specific prior written permission.\r
-**\r
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" \r
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r
-** THE POSSIBILITY OF SUCH DAMAGE.\r
-*/\r
-\r
-/*\r
- * Mesa 3-D graphics library\r
- * Version:  7.0\r
- *\r
- * Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.\r
- *\r
- * Permission is hereby granted, free of charge, to any person obtaining a\r
- * copy of this software and associated documentation files (the "Software"),\r
- * to deal in the Software without restriction, including without limitation\r
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,\r
- * and/or sell copies of the Software, and to permit persons to whom the\r
- * Software is furnished to do so, subject to the following conditions:\r
- *\r
- * The above copyright notice and this permission notice shall be included\r
- * in all copies or substantial portions of the Software.\r
- *\r
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS\r
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL\r
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN\r
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
- */\r
-\r
-/*\r
-** Copyright (c) 2007 The Khronos Group Inc.\r
-** \r
-** Permission is hereby granted, free of charge, to any person obtaining a\r
-** copy of this software and/or associated documentation files (the\r
-** "Materials"), to deal in the Materials without restriction, including\r
-** without limitation the rights to use, copy, modify, merge, publish,\r
-** distribute, sublicense, and/or sell copies of the Materials, and to\r
-** permit persons to whom the Materials are furnished to do so, subject to\r
-** the following conditions:\r
-** \r
-** The above copyright notice and this permission notice shall be included\r
-** in all copies or substantial portions of the Materials.\r
-** \r
-** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r
-** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r
-** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r
-** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r
-** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\r
-*/\r
-\r
-#ifndef __glxew_h__\r
-#define __glxew_h__\r
-#define __GLXEW_H__\r
-\r
-#ifdef __glxext_h_\r
-#error glxext.h included before glxew.h\r
-#endif\r
-\r
-#if defined(GLX_H) || defined(__GLX_glx_h__) || defined(__glx_h__)\r
-#error glx.h included before glxew.h\r
-#endif\r
-\r
-#define __glxext_h_\r
-\r
-#define GLX_H\r
-#define __GLX_glx_h__\r
-#define __glx_h__\r
-\r
-#include <X11/Xlib.h>\r
-#include <X11/Xutil.h>\r
-#include <X11/Xmd.h>\r
-#include <GL/glew.h>\r
-\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-/* ---------------------------- GLX_VERSION_1_0 --------------------------- */\r
-\r
-#ifndef GLX_VERSION_1_0\r
-#define GLX_VERSION_1_0 1\r
-\r
-#define GLX_USE_GL 1\r
-#define GLX_BUFFER_SIZE 2\r
-#define GLX_LEVEL 3\r
-#define GLX_RGBA 4\r
-#define GLX_DOUBLEBUFFER 5\r
-#define GLX_STEREO 6\r
-#define GLX_AUX_BUFFERS 7\r
-#define GLX_RED_SIZE 8\r
-#define GLX_GREEN_SIZE 9\r
-#define GLX_BLUE_SIZE 10\r
-#define GLX_ALPHA_SIZE 11\r
-#define GLX_DEPTH_SIZE 12\r
-#define GLX_STENCIL_SIZE 13\r
-#define GLX_ACCUM_RED_SIZE 14\r
-#define GLX_ACCUM_GREEN_SIZE 15\r
-#define GLX_ACCUM_BLUE_SIZE 16\r
-#define GLX_ACCUM_ALPHA_SIZE 17\r
-#define GLX_BAD_SCREEN 1\r
-#define GLX_BAD_ATTRIBUTE 2\r
-#define GLX_NO_EXTENSION 3\r
-#define GLX_BAD_VISUAL 4\r
-#define GLX_BAD_CONTEXT 5\r
-#define GLX_BAD_VALUE 6\r
-#define GLX_BAD_ENUM 7\r
-\r
-typedef XID GLXDrawable;\r
-typedef XID GLXPixmap;\r
-#ifdef __sun\r
-typedef struct __glXContextRec *GLXContext;\r
-#else\r
-typedef struct __GLXcontextRec *GLXContext;\r
-#endif\r
-\r
-typedef unsigned int GLXVideoDeviceNV; \r
-\r
-extern Bool glXQueryExtension (Display *dpy, int *errorBase, int *eventBase);\r
-extern Bool glXQueryVersion (Display *dpy, int *major, int *minor);\r
-extern int glXGetConfig (Display *dpy, XVisualInfo *vis, int attrib, int *value);\r
-extern XVisualInfo* glXChooseVisual (Display *dpy, int screen, int *attribList);\r
-extern GLXPixmap glXCreateGLXPixmap (Display *dpy, XVisualInfo *vis, Pixmap pixmap);\r
-extern void glXDestroyGLXPixmap (Display *dpy, GLXPixmap pix);\r
-extern GLXContext glXCreateContext (Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct);\r
-extern void glXDestroyContext (Display *dpy, GLXContext ctx);\r
-extern Bool glXIsDirect (Display *dpy, GLXContext ctx);\r
-extern void glXCopyContext (Display *dpy, GLXContext src, GLXContext dst, GLulong mask);\r
-extern Bool glXMakeCurrent (Display *dpy, GLXDrawable drawable, GLXContext ctx);\r
-extern GLXContext glXGetCurrentContext (void);\r
-extern GLXDrawable glXGetCurrentDrawable (void);\r
-extern void glXWaitGL (void);\r
-extern void glXWaitX (void);\r
-extern void glXSwapBuffers (Display *dpy, GLXDrawable drawable);\r
-extern void glXUseXFont (Font font, int first, int count, int listBase);\r
-\r
-#define GLXEW_VERSION_1_0 GLXEW_GET_VAR(__GLXEW_VERSION_1_0)\r
-\r
-#endif /* GLX_VERSION_1_0 */\r
-\r
-/* ---------------------------- GLX_VERSION_1_1 --------------------------- */\r
-\r
-#ifndef GLX_VERSION_1_1\r
-#define GLX_VERSION_1_1\r
-\r
-#define GLX_VENDOR 0x1\r
-#define GLX_VERSION 0x2\r
-#define GLX_EXTENSIONS 0x3\r
-\r
-extern const char* glXQueryExtensionsString (Display *dpy, int screen);\r
-extern const char* glXGetClientString (Display *dpy, int name);\r
-extern const char* glXQueryServerString (Display *dpy, int screen, int name);\r
-\r
-#define GLXEW_VERSION_1_1 GLXEW_GET_VAR(__GLXEW_VERSION_1_1)\r
-\r
-#endif /* GLX_VERSION_1_1 */\r
-\r
-/* ---------------------------- GLX_VERSION_1_2 ---------------------------- */\r
-\r
-#ifndef GLX_VERSION_1_2\r
-#define GLX_VERSION_1_2 1\r
-\r
-typedef Display* ( * PFNGLXGETCURRENTDISPLAYPROC) (void);\r
-\r
-#define glXGetCurrentDisplay GLXEW_GET_FUN(__glewXGetCurrentDisplay)\r
-\r
-#define GLXEW_VERSION_1_2 GLXEW_GET_VAR(__GLXEW_VERSION_1_2)\r
-\r
-#endif /* GLX_VERSION_1_2 */\r
-\r
-/* ---------------------------- GLX_VERSION_1_3 ---------------------------- */\r
-\r
-#ifndef GLX_VERSION_1_3\r
-#define GLX_VERSION_1_3 1\r
-\r
-#define GLX_RGBA_BIT 0x00000001\r
-#define GLX_FRONT_LEFT_BUFFER_BIT 0x00000001\r
-#define GLX_WINDOW_BIT 0x00000001\r
-#define GLX_COLOR_INDEX_BIT 0x00000002\r
-#define GLX_PIXMAP_BIT 0x00000002\r
-#define GLX_FRONT_RIGHT_BUFFER_BIT 0x00000002\r
-#define GLX_BACK_LEFT_BUFFER_BIT 0x00000004\r
-#define GLX_PBUFFER_BIT 0x00000004\r
-#define GLX_BACK_RIGHT_BUFFER_BIT 0x00000008\r
-#define GLX_AUX_BUFFERS_BIT 0x00000010\r
-#define GLX_CONFIG_CAVEAT 0x20\r
-#define GLX_DEPTH_BUFFER_BIT 0x00000020\r
-#define GLX_X_VISUAL_TYPE 0x22\r
-#define GLX_TRANSPARENT_TYPE 0x23\r
-#define GLX_TRANSPARENT_INDEX_VALUE 0x24\r
-#define GLX_TRANSPARENT_RED_VALUE 0x25\r
-#define GLX_TRANSPARENT_GREEN_VALUE 0x26\r
-#define GLX_TRANSPARENT_BLUE_VALUE 0x27\r
-#define GLX_TRANSPARENT_ALPHA_VALUE 0x28\r
-#define GLX_STENCIL_BUFFER_BIT 0x00000040\r
-#define GLX_ACCUM_BUFFER_BIT 0x00000080\r
-#define GLX_NONE 0x8000\r
-#define GLX_SLOW_CONFIG 0x8001\r
-#define GLX_TRUE_COLOR 0x8002\r
-#define GLX_DIRECT_COLOR 0x8003\r
-#define GLX_PSEUDO_COLOR 0x8004\r
-#define GLX_STATIC_COLOR 0x8005\r
-#define GLX_GRAY_SCALE 0x8006\r
-#define GLX_STATIC_GRAY 0x8007\r
-#define GLX_TRANSPARENT_RGB 0x8008\r
-#define GLX_TRANSPARENT_INDEX 0x8009\r
-#define GLX_VISUAL_ID 0x800B\r
-#define GLX_SCREEN 0x800C\r
-#define GLX_NON_CONFORMANT_CONFIG 0x800D\r
-#define GLX_DRAWABLE_TYPE 0x8010\r
-#define GLX_RENDER_TYPE 0x8011\r
-#define GLX_X_RENDERABLE 0x8012\r
-#define GLX_FBCONFIG_ID 0x8013\r
-#define GLX_RGBA_TYPE 0x8014\r
-#define GLX_COLOR_INDEX_TYPE 0x8015\r
-#define GLX_MAX_PBUFFER_WIDTH 0x8016\r
-#define GLX_MAX_PBUFFER_HEIGHT 0x8017\r
-#define GLX_MAX_PBUFFER_PIXELS 0x8018\r
-#define GLX_PRESERVED_CONTENTS 0x801B\r
-#define GLX_LARGEST_PBUFFER 0x801C\r
-#define GLX_WIDTH 0x801D\r
-#define GLX_HEIGHT 0x801E\r
-#define GLX_EVENT_MASK 0x801F\r
-#define GLX_DAMAGED 0x8020\r
-#define GLX_SAVED 0x8021\r
-#define GLX_WINDOW 0x8022\r
-#define GLX_PBUFFER 0x8023\r
-#define GLX_PBUFFER_HEIGHT 0x8040\r
-#define GLX_PBUFFER_WIDTH 0x8041\r
-#define GLX_PBUFFER_CLOBBER_MASK 0x08000000\r
-#define GLX_DONT_CARE 0xFFFFFFFF\r
-\r
-typedef XID GLXFBConfigID;\r
-typedef XID GLXPbuffer;\r
-typedef XID GLXWindow;\r
-typedef struct __GLXFBConfigRec *GLXFBConfig;\r
-\r
-typedef struct {\r
-  int event_type; \r
-  int draw_type; \r
-  unsigned long serial; \r
-  Bool send_event; \r
-  Display *display; \r
-  GLXDrawable drawable; \r
-  unsigned int buffer_mask; \r
-  unsigned int aux_buffer; \r
-  int x, y; \r
-  int width, height; \r
-  int count; \r
-} GLXPbufferClobberEvent;\r
-typedef union __GLXEvent {\r
-  GLXPbufferClobberEvent glxpbufferclobber; \r
-  long pad[24]; \r
-} GLXEvent;\r
-\r
-typedef GLXFBConfig* ( * PFNGLXCHOOSEFBCONFIGPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);\r
-typedef GLXContext ( * PFNGLXCREATENEWCONTEXTPROC) (Display *dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);\r
-typedef GLXPbuffer ( * PFNGLXCREATEPBUFFERPROC) (Display *dpy, GLXFBConfig config, const int *attrib_list);\r
-typedef GLXPixmap ( * PFNGLXCREATEPIXMAPPROC) (Display *dpy, GLXFBConfig config, Pixmap pixmap, const int *attrib_list);\r
-typedef GLXWindow ( * PFNGLXCREATEWINDOWPROC) (Display *dpy, GLXFBConfig config, Window win, const int *attrib_list);\r
-typedef void ( * PFNGLXDESTROYPBUFFERPROC) (Display *dpy, GLXPbuffer pbuf);\r
-typedef void ( * PFNGLXDESTROYPIXMAPPROC) (Display *dpy, GLXPixmap pixmap);\r
-typedef void ( * PFNGLXDESTROYWINDOWPROC) (Display *dpy, GLXWindow win);\r
-typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLEPROC) (void);\r
-typedef int ( * PFNGLXGETFBCONFIGATTRIBPROC) (Display *dpy, GLXFBConfig config, int attribute, int *value);\r
-typedef GLXFBConfig* ( * PFNGLXGETFBCONFIGSPROC) (Display *dpy, int screen, int *nelements);\r
-typedef void ( * PFNGLXGETSELECTEDEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long *event_mask);\r
-typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGPROC) (Display *dpy, GLXFBConfig config);\r
-typedef Bool ( * PFNGLXMAKECONTEXTCURRENTPROC) (Display *display, GLXDrawable draw, GLXDrawable read, GLXContext ctx);\r
-typedef int ( * PFNGLXQUERYCONTEXTPROC) (Display *dpy, GLXContext ctx, int attribute, int *value);\r
-typedef void ( * PFNGLXQUERYDRAWABLEPROC) (Display *dpy, GLXDrawable draw, int attribute, unsigned int *value);\r
-typedef void ( * PFNGLXSELECTEVENTPROC) (Display *dpy, GLXDrawable draw, unsigned long event_mask);\r
-\r
-#define glXChooseFBConfig GLXEW_GET_FUN(__glewXChooseFBConfig)\r
-#define glXCreateNewContext GLXEW_GET_FUN(__glewXCreateNewContext)\r
-#define glXCreatePbuffer GLXEW_GET_FUN(__glewXCreatePbuffer)\r
-#define glXCreatePixmap GLXEW_GET_FUN(__glewXCreatePixmap)\r
-#define glXCreateWindow GLXEW_GET_FUN(__glewXCreateWindow)\r
-#define glXDestroyPbuffer GLXEW_GET_FUN(__glewXDestroyPbuffer)\r
-#define glXDestroyPixmap GLXEW_GET_FUN(__glewXDestroyPixmap)\r
-#define glXDestroyWindow GLXEW_GET_FUN(__glewXDestroyWindow)\r
-#define glXGetCurrentReadDrawable GLXEW_GET_FUN(__glewXGetCurrentReadDrawable)\r
-#define glXGetFBConfigAttrib GLXEW_GET_FUN(__glewXGetFBConfigAttrib)\r
-#define glXGetFBConfigs GLXEW_GET_FUN(__glewXGetFBConfigs)\r
-#define glXGetSelectedEvent GLXEW_GET_FUN(__glewXGetSelectedEvent)\r
-#define glXGetVisualFromFBConfig GLXEW_GET_FUN(__glewXGetVisualFromFBConfig)\r
-#define glXMakeContextCurrent GLXEW_GET_FUN(__glewXMakeContextCurrent)\r
-#define glXQueryContext GLXEW_GET_FUN(__glewXQueryContext)\r
-#define glXQueryDrawable GLXEW_GET_FUN(__glewXQueryDrawable)\r
-#define glXSelectEvent GLXEW_GET_FUN(__glewXSelectEvent)\r
-\r
-#define GLXEW_VERSION_1_3 GLXEW_GET_VAR(__GLXEW_VERSION_1_3)\r
-\r
-#endif /* GLX_VERSION_1_3 */\r
-\r
-/* ---------------------------- GLX_VERSION_1_4 ---------------------------- */\r
-\r
-#ifndef GLX_VERSION_1_4\r
-#define GLX_VERSION_1_4 1\r
-\r
-#define GLX_SAMPLE_BUFFERS 100000\r
-#define GLX_SAMPLES 100001\r
-\r
-extern void ( * glXGetProcAddress (const GLubyte *procName)) (void);\r
-\r
-#define GLXEW_VERSION_1_4 GLXEW_GET_VAR(__GLXEW_VERSION_1_4)\r
-\r
-#endif /* GLX_VERSION_1_4 */\r
-\r
-/* -------------------------- GLX_3DFX_multisample ------------------------- */\r
-\r
-#ifndef GLX_3DFX_multisample\r
-#define GLX_3DFX_multisample 1\r
-\r
-#define GLX_SAMPLE_BUFFERS_3DFX 0x8050\r
-#define GLX_SAMPLES_3DFX 0x8051\r
-\r
-#define GLXEW_3DFX_multisample GLXEW_GET_VAR(__GLXEW_3DFX_multisample)\r
-\r
-#endif /* GLX_3DFX_multisample */\r
-\r
-/* ------------------------ GLX_AMD_gpu_association ------------------------ */\r
-\r
-#ifndef GLX_AMD_gpu_association\r
-#define GLX_AMD_gpu_association 1\r
-\r
-#define GLX_GPU_VENDOR_AMD 0x1F00\r
-#define GLX_GPU_RENDERER_STRING_AMD 0x1F01\r
-#define GLX_GPU_OPENGL_VERSION_STRING_AMD 0x1F02\r
-#define GLX_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2\r
-#define GLX_GPU_RAM_AMD 0x21A3\r
-#define GLX_GPU_CLOCK_AMD 0x21A4\r
-#define GLX_GPU_NUM_PIPES_AMD 0x21A5\r
-#define GLX_GPU_NUM_SIMD_AMD 0x21A6\r
-#define GLX_GPU_NUM_RB_AMD 0x21A7\r
-#define GLX_GPU_NUM_SPI_AMD 0x21A8\r
-\r
-#define GLXEW_AMD_gpu_association GLXEW_GET_VAR(__GLXEW_AMD_gpu_association)\r
-\r
-#endif /* GLX_AMD_gpu_association */\r
-\r
-/* ------------------------- GLX_ARB_create_context ------------------------ */\r
-\r
-#ifndef GLX_ARB_create_context\r
-#define GLX_ARB_create_context 1\r
-\r
-#define GLX_CONTEXT_DEBUG_BIT_ARB 0x0001\r
-#define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002\r
-#define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091\r
-#define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092\r
-#define GLX_CONTEXT_FLAGS_ARB 0x2094\r
-\r
-typedef GLXContext ( * PFNGLXCREATECONTEXTATTRIBSARBPROC) (Display* dpy, GLXFBConfig config, GLXContext share_context, Bool direct, const int *attrib_list);\r
-\r
-#define glXCreateContextAttribsARB GLXEW_GET_FUN(__glewXCreateContextAttribsARB)\r
-\r
-#define GLXEW_ARB_create_context GLXEW_GET_VAR(__GLXEW_ARB_create_context)\r
-\r
-#endif /* GLX_ARB_create_context */\r
-\r
-/* --------------------- GLX_ARB_create_context_profile -------------------- */\r
-\r
-#ifndef GLX_ARB_create_context_profile\r
-#define GLX_ARB_create_context_profile 1\r
-\r
-#define GLX_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001\r
-#define GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002\r
-#define GLX_CONTEXT_PROFILE_MASK_ARB 0x9126\r
-\r
-#define GLXEW_ARB_create_context_profile GLXEW_GET_VAR(__GLXEW_ARB_create_context_profile)\r
-\r
-#endif /* GLX_ARB_create_context_profile */\r
-\r
-/* ------------------- GLX_ARB_create_context_robustness ------------------- */\r
-\r
-#ifndef GLX_ARB_create_context_robustness\r
-#define GLX_ARB_create_context_robustness 1\r
-\r
-#define GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004\r
-#define GLX_LOSE_CONTEXT_ON_RESET_ARB 0x8252\r
-#define GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256\r
-#define GLX_NO_RESET_NOTIFICATION_ARB 0x8261\r
-\r
-#define GLXEW_ARB_create_context_robustness GLXEW_GET_VAR(__GLXEW_ARB_create_context_robustness)\r
-\r
-#endif /* GLX_ARB_create_context_robustness */\r
-\r
-/* ------------------------- GLX_ARB_fbconfig_float ------------------------ */\r
-\r
-#ifndef GLX_ARB_fbconfig_float\r
-#define GLX_ARB_fbconfig_float 1\r
-\r
-#define GLX_RGBA_FLOAT_BIT 0x00000004\r
-#define GLX_RGBA_FLOAT_TYPE 0x20B9\r
-\r
-#define GLXEW_ARB_fbconfig_float GLXEW_GET_VAR(__GLXEW_ARB_fbconfig_float)\r
-\r
-#endif /* GLX_ARB_fbconfig_float */\r
-\r
-/* ------------------------ GLX_ARB_framebuffer_sRGB ----------------------- */\r
-\r
-#ifndef GLX_ARB_framebuffer_sRGB\r
-#define GLX_ARB_framebuffer_sRGB 1\r
-\r
-#define GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20B2\r
-\r
-#define GLXEW_ARB_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_ARB_framebuffer_sRGB)\r
-\r
-#endif /* GLX_ARB_framebuffer_sRGB */\r
-\r
-/* ------------------------ GLX_ARB_get_proc_address ----------------------- */\r
-\r
-#ifndef GLX_ARB_get_proc_address\r
-#define GLX_ARB_get_proc_address 1\r
-\r
-extern void ( * glXGetProcAddressARB (const GLubyte *procName)) (void);\r
-\r
-#define GLXEW_ARB_get_proc_address GLXEW_GET_VAR(__GLXEW_ARB_get_proc_address)\r
-\r
-#endif /* GLX_ARB_get_proc_address */\r
-\r
-/* -------------------------- GLX_ARB_multisample -------------------------- */\r
-\r
-#ifndef GLX_ARB_multisample\r
-#define GLX_ARB_multisample 1\r
-\r
-#define GLX_SAMPLE_BUFFERS_ARB 100000\r
-#define GLX_SAMPLES_ARB 100001\r
-\r
-#define GLXEW_ARB_multisample GLXEW_GET_VAR(__GLXEW_ARB_multisample)\r
-\r
-#endif /* GLX_ARB_multisample */\r
-\r
-/* ---------------------- GLX_ARB_vertex_buffer_object --------------------- */\r
-\r
-#ifndef GLX_ARB_vertex_buffer_object\r
-#define GLX_ARB_vertex_buffer_object 1\r
-\r
-#define GLX_CONTEXT_ALLOW_BUFFER_BYTE_ORDER_MISMATCH_ARB 0x2095\r
-\r
-#define GLXEW_ARB_vertex_buffer_object GLXEW_GET_VAR(__GLXEW_ARB_vertex_buffer_object)\r
-\r
-#endif /* GLX_ARB_vertex_buffer_object */\r
-\r
-/* ----------------------- GLX_ATI_pixel_format_float ---------------------- */\r
-\r
-#ifndef GLX_ATI_pixel_format_float\r
-#define GLX_ATI_pixel_format_float 1\r
-\r
-#define GLX_RGBA_FLOAT_ATI_BIT 0x00000100\r
-\r
-#define GLXEW_ATI_pixel_format_float GLXEW_GET_VAR(__GLXEW_ATI_pixel_format_float)\r
-\r
-#endif /* GLX_ATI_pixel_format_float */\r
-\r
-/* ------------------------- GLX_ATI_render_texture ------------------------ */\r
-\r
-#ifndef GLX_ATI_render_texture\r
-#define GLX_ATI_render_texture 1\r
-\r
-#define GLX_BIND_TO_TEXTURE_RGB_ATI 0x9800\r
-#define GLX_BIND_TO_TEXTURE_RGBA_ATI 0x9801\r
-#define GLX_TEXTURE_FORMAT_ATI 0x9802\r
-#define GLX_TEXTURE_TARGET_ATI 0x9803\r
-#define GLX_MIPMAP_TEXTURE_ATI 0x9804\r
-#define GLX_TEXTURE_RGB_ATI 0x9805\r
-#define GLX_TEXTURE_RGBA_ATI 0x9806\r
-#define GLX_NO_TEXTURE_ATI 0x9807\r
-#define GLX_TEXTURE_CUBE_MAP_ATI 0x9808\r
-#define GLX_TEXTURE_1D_ATI 0x9809\r
-#define GLX_TEXTURE_2D_ATI 0x980A\r
-#define GLX_MIPMAP_LEVEL_ATI 0x980B\r
-#define GLX_CUBE_MAP_FACE_ATI 0x980C\r
-#define GLX_TEXTURE_CUBE_MAP_POSITIVE_X_ATI 0x980D\r
-#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_X_ATI 0x980E\r
-#define GLX_TEXTURE_CUBE_MAP_POSITIVE_Y_ATI 0x980F\r
-#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Y_ATI 0x9810\r
-#define GLX_TEXTURE_CUBE_MAP_POSITIVE_Z_ATI 0x9811\r
-#define GLX_TEXTURE_CUBE_MAP_NEGATIVE_Z_ATI 0x9812\r
-#define GLX_FRONT_LEFT_ATI 0x9813\r
-#define GLX_FRONT_RIGHT_ATI 0x9814\r
-#define GLX_BACK_LEFT_ATI 0x9815\r
-#define GLX_BACK_RIGHT_ATI 0x9816\r
-#define GLX_AUX0_ATI 0x9817\r
-#define GLX_AUX1_ATI 0x9818\r
-#define GLX_AUX2_ATI 0x9819\r
-#define GLX_AUX3_ATI 0x981A\r
-#define GLX_AUX4_ATI 0x981B\r
-#define GLX_AUX5_ATI 0x981C\r
-#define GLX_AUX6_ATI 0x981D\r
-#define GLX_AUX7_ATI 0x981E\r
-#define GLX_AUX8_ATI 0x981F\r
-#define GLX_AUX9_ATI 0x9820\r
-#define GLX_BIND_TO_TEXTURE_LUMINANCE_ATI 0x9821\r
-#define GLX_BIND_TO_TEXTURE_INTENSITY_ATI 0x9822\r
-\r
-typedef void ( * PFNGLXBINDTEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);\r
-typedef void ( * PFNGLXDRAWABLEATTRIBATIPROC) (Display *dpy, GLXDrawable draw, const int *attrib_list);\r
-typedef void ( * PFNGLXRELEASETEXIMAGEATIPROC) (Display *dpy, GLXPbuffer pbuf, int buffer);\r
-\r
-#define glXBindTexImageATI GLXEW_GET_FUN(__glewXBindTexImageATI)\r
-#define glXDrawableAttribATI GLXEW_GET_FUN(__glewXDrawableAttribATI)\r
-#define glXReleaseTexImageATI GLXEW_GET_FUN(__glewXReleaseTexImageATI)\r
-\r
-#define GLXEW_ATI_render_texture GLXEW_GET_VAR(__GLXEW_ATI_render_texture)\r
-\r
-#endif /* GLX_ATI_render_texture */\r
-\r
-/* ------------------- GLX_EXT_create_context_es2_profile ------------------ */\r
-\r
-#ifndef GLX_EXT_create_context_es2_profile\r
-#define GLX_EXT_create_context_es2_profile 1\r
-\r
-#define GLX_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004\r
-\r
-#define GLXEW_EXT_create_context_es2_profile GLXEW_GET_VAR(__GLXEW_EXT_create_context_es2_profile)\r
-\r
-#endif /* GLX_EXT_create_context_es2_profile */\r
-\r
-/* --------------------- GLX_EXT_fbconfig_packed_float --------------------- */\r
-\r
-#ifndef GLX_EXT_fbconfig_packed_float\r
-#define GLX_EXT_fbconfig_packed_float 1\r
-\r
-#define GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT 0x00000008\r
-#define GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT 0x20B1\r
-\r
-#define GLXEW_EXT_fbconfig_packed_float GLXEW_GET_VAR(__GLXEW_EXT_fbconfig_packed_float)\r
-\r
-#endif /* GLX_EXT_fbconfig_packed_float */\r
-\r
-/* ------------------------ GLX_EXT_framebuffer_sRGB ----------------------- */\r
-\r
-#ifndef GLX_EXT_framebuffer_sRGB\r
-#define GLX_EXT_framebuffer_sRGB 1\r
-\r
-#define GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20B2\r
-\r
-#define GLXEW_EXT_framebuffer_sRGB GLXEW_GET_VAR(__GLXEW_EXT_framebuffer_sRGB)\r
-\r
-#endif /* GLX_EXT_framebuffer_sRGB */\r
-\r
-/* ------------------------- GLX_EXT_import_context ------------------------ */\r
-\r
-#ifndef GLX_EXT_import_context\r
-#define GLX_EXT_import_context 1\r
-\r
-#define GLX_SHARE_CONTEXT_EXT 0x800A\r
-#define GLX_VISUAL_ID_EXT 0x800B\r
-#define GLX_SCREEN_EXT 0x800C\r
-\r
-typedef XID GLXContextID;\r
-\r
-typedef void ( * PFNGLXFREECONTEXTEXTPROC) (Display* dpy, GLXContext context);\r
-typedef GLXContextID ( * PFNGLXGETCONTEXTIDEXTPROC) (const GLXContext context);\r
-typedef GLXContext ( * PFNGLXIMPORTCONTEXTEXTPROC) (Display* dpy, GLXContextID contextID);\r
-typedef int ( * PFNGLXQUERYCONTEXTINFOEXTPROC) (Display* dpy, GLXContext context, int attribute,int *value);\r
-\r
-#define glXFreeContextEXT GLXEW_GET_FUN(__glewXFreeContextEXT)\r
-#define glXGetContextIDEXT GLXEW_GET_FUN(__glewXGetContextIDEXT)\r
-#define glXImportContextEXT GLXEW_GET_FUN(__glewXImportContextEXT)\r
-#define glXQueryContextInfoEXT GLXEW_GET_FUN(__glewXQueryContextInfoEXT)\r
-\r
-#define GLXEW_EXT_import_context GLXEW_GET_VAR(__GLXEW_EXT_import_context)\r
-\r
-#endif /* GLX_EXT_import_context */\r
-\r
-/* -------------------------- GLX_EXT_scene_marker ------------------------- */\r
-\r
-#ifndef GLX_EXT_scene_marker\r
-#define GLX_EXT_scene_marker 1\r
-\r
-#define GLXEW_EXT_scene_marker GLXEW_GET_VAR(__GLXEW_EXT_scene_marker)\r
-\r
-#endif /* GLX_EXT_scene_marker */\r
-\r
-/* -------------------------- GLX_EXT_swap_control ------------------------- */\r
-\r
-#ifndef GLX_EXT_swap_control\r
-#define GLX_EXT_swap_control 1\r
-\r
-#define GLX_SWAP_INTERVAL_EXT 0x20F1\r
-#define GLX_MAX_SWAP_INTERVAL_EXT 0x20F2\r
-\r
-typedef void ( * PFNGLXSWAPINTERVALEXTPROC) (Display* dpy, GLXDrawable drawable, int interval);\r
-\r
-#define glXSwapIntervalEXT GLXEW_GET_FUN(__glewXSwapIntervalEXT)\r
-\r
-#define GLXEW_EXT_swap_control GLXEW_GET_VAR(__GLXEW_EXT_swap_control)\r
-\r
-#endif /* GLX_EXT_swap_control */\r
-\r
-/* ---------------------- GLX_EXT_texture_from_pixmap ---------------------- */\r
-\r
-#ifndef GLX_EXT_texture_from_pixmap\r
-#define GLX_EXT_texture_from_pixmap 1\r
-\r
-#define GLX_TEXTURE_1D_BIT_EXT 0x00000001\r
-#define GLX_TEXTURE_2D_BIT_EXT 0x00000002\r
-#define GLX_TEXTURE_RECTANGLE_BIT_EXT 0x00000004\r
-#define GLX_BIND_TO_TEXTURE_RGB_EXT 0x20D0\r
-#define GLX_BIND_TO_TEXTURE_RGBA_EXT 0x20D1\r
-#define GLX_BIND_TO_MIPMAP_TEXTURE_EXT 0x20D2\r
-#define GLX_BIND_TO_TEXTURE_TARGETS_EXT 0x20D3\r
-#define GLX_Y_INVERTED_EXT 0x20D4\r
-#define GLX_TEXTURE_FORMAT_EXT 0x20D5\r
-#define GLX_TEXTURE_TARGET_EXT 0x20D6\r
-#define GLX_MIPMAP_TEXTURE_EXT 0x20D7\r
-#define GLX_TEXTURE_FORMAT_NONE_EXT 0x20D8\r
-#define GLX_TEXTURE_FORMAT_RGB_EXT 0x20D9\r
-#define GLX_TEXTURE_FORMAT_RGBA_EXT 0x20DA\r
-#define GLX_TEXTURE_1D_EXT 0x20DB\r
-#define GLX_TEXTURE_2D_EXT 0x20DC\r
-#define GLX_TEXTURE_RECTANGLE_EXT 0x20DD\r
-#define GLX_FRONT_LEFT_EXT 0x20DE\r
-#define GLX_FRONT_RIGHT_EXT 0x20DF\r
-#define GLX_BACK_LEFT_EXT 0x20E0\r
-#define GLX_BACK_RIGHT_EXT 0x20E1\r
-#define GLX_AUX0_EXT 0x20E2\r
-#define GLX_AUX1_EXT 0x20E3\r
-#define GLX_AUX2_EXT 0x20E4\r
-#define GLX_AUX3_EXT 0x20E5\r
-#define GLX_AUX4_EXT 0x20E6\r
-#define GLX_AUX5_EXT 0x20E7\r
-#define GLX_AUX6_EXT 0x20E8\r
-#define GLX_AUX7_EXT 0x20E9\r
-#define GLX_AUX8_EXT 0x20EA\r
-#define GLX_AUX9_EXT 0x20EB\r
-\r
-typedef void ( * PFNGLXBINDTEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer, const int *attrib_list);\r
-typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display* display, GLXDrawable drawable, int buffer);\r
-\r
-#define glXBindTexImageEXT GLXEW_GET_FUN(__glewXBindTexImageEXT)\r
-#define glXReleaseTexImageEXT GLXEW_GET_FUN(__glewXReleaseTexImageEXT)\r
-\r
-#define GLXEW_EXT_texture_from_pixmap GLXEW_GET_VAR(__GLXEW_EXT_texture_from_pixmap)\r
-\r
-#endif /* GLX_EXT_texture_from_pixmap */\r
-\r
-/* -------------------------- GLX_EXT_visual_info -------------------------- */\r
-\r
-#ifndef GLX_EXT_visual_info\r
-#define GLX_EXT_visual_info 1\r
-\r
-#define GLX_X_VISUAL_TYPE_EXT 0x22\r
-#define GLX_TRANSPARENT_TYPE_EXT 0x23\r
-#define GLX_TRANSPARENT_INDEX_VALUE_EXT 0x24\r
-#define GLX_TRANSPARENT_RED_VALUE_EXT 0x25\r
-#define GLX_TRANSPARENT_GREEN_VALUE_EXT 0x26\r
-#define GLX_TRANSPARENT_BLUE_VALUE_EXT 0x27\r
-#define GLX_TRANSPARENT_ALPHA_VALUE_EXT 0x28\r
-#define GLX_NONE_EXT 0x8000\r
-#define GLX_TRUE_COLOR_EXT 0x8002\r
-#define GLX_DIRECT_COLOR_EXT 0x8003\r
-#define GLX_PSEUDO_COLOR_EXT 0x8004\r
-#define GLX_STATIC_COLOR_EXT 0x8005\r
-#define GLX_GRAY_SCALE_EXT 0x8006\r
-#define GLX_STATIC_GRAY_EXT 0x8007\r
-#define GLX_TRANSPARENT_RGB_EXT 0x8008\r
-#define GLX_TRANSPARENT_INDEX_EXT 0x8009\r
-\r
-#define GLXEW_EXT_visual_info GLXEW_GET_VAR(__GLXEW_EXT_visual_info)\r
-\r
-#endif /* GLX_EXT_visual_info */\r
-\r
-/* ------------------------- GLX_EXT_visual_rating ------------------------- */\r
-\r
-#ifndef GLX_EXT_visual_rating\r
-#define GLX_EXT_visual_rating 1\r
-\r
-#define GLX_VISUAL_CAVEAT_EXT 0x20\r
-#define GLX_SLOW_VISUAL_EXT 0x8001\r
-#define GLX_NON_CONFORMANT_VISUAL_EXT 0x800D\r
-\r
-#define GLXEW_EXT_visual_rating GLXEW_GET_VAR(__GLXEW_EXT_visual_rating)\r
-\r
-#endif /* GLX_EXT_visual_rating */\r
-\r
-/* -------------------------- GLX_INTEL_swap_event ------------------------- */\r
-\r
-#ifndef GLX_INTEL_swap_event\r
-#define GLX_INTEL_swap_event 1\r
-\r
-#define GLX_EXCHANGE_COMPLETE_INTEL 0x8180\r
-#define GLX_COPY_COMPLETE_INTEL 0x8181\r
-#define GLX_FLIP_COMPLETE_INTEL 0x8182\r
-#define GLX_BUFFER_SWAP_COMPLETE_INTEL_MASK 0x04000000\r
-\r
-#define GLXEW_INTEL_swap_event GLXEW_GET_VAR(__GLXEW_INTEL_swap_event)\r
-\r
-#endif /* GLX_INTEL_swap_event */\r
-\r
-/* -------------------------- GLX_MESA_agp_offset -------------------------- */\r
-\r
-#ifndef GLX_MESA_agp_offset\r
-#define GLX_MESA_agp_offset 1\r
-\r
-typedef unsigned int ( * PFNGLXGETAGPOFFSETMESAPROC) (const void* pointer);\r
-\r
-#define glXGetAGPOffsetMESA GLXEW_GET_FUN(__glewXGetAGPOffsetMESA)\r
-\r
-#define GLXEW_MESA_agp_offset GLXEW_GET_VAR(__GLXEW_MESA_agp_offset)\r
-\r
-#endif /* GLX_MESA_agp_offset */\r
-\r
-/* ------------------------ GLX_MESA_copy_sub_buffer ----------------------- */\r
-\r
-#ifndef GLX_MESA_copy_sub_buffer\r
-#define GLX_MESA_copy_sub_buffer 1\r
-\r
-typedef void ( * PFNGLXCOPYSUBBUFFERMESAPROC) (Display* dpy, GLXDrawable drawable, int x, int y, int width, int height);\r
-\r
-#define glXCopySubBufferMESA GLXEW_GET_FUN(__glewXCopySubBufferMESA)\r
-\r
-#define GLXEW_MESA_copy_sub_buffer GLXEW_GET_VAR(__GLXEW_MESA_copy_sub_buffer)\r
-\r
-#endif /* GLX_MESA_copy_sub_buffer */\r
-\r
-/* ------------------------ GLX_MESA_pixmap_colormap ----------------------- */\r
-\r
-#ifndef GLX_MESA_pixmap_colormap\r
-#define GLX_MESA_pixmap_colormap 1\r
-\r
-typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPMESAPROC) (Display* dpy, XVisualInfo *visual, Pixmap pixmap, Colormap cmap);\r
-\r
-#define glXCreateGLXPixmapMESA GLXEW_GET_FUN(__glewXCreateGLXPixmapMESA)\r
-\r
-#define GLXEW_MESA_pixmap_colormap GLXEW_GET_VAR(__GLXEW_MESA_pixmap_colormap)\r
-\r
-#endif /* GLX_MESA_pixmap_colormap */\r
-\r
-/* ------------------------ GLX_MESA_release_buffers ----------------------- */\r
-\r
-#ifndef GLX_MESA_release_buffers\r
-#define GLX_MESA_release_buffers 1\r
-\r
-typedef Bool ( * PFNGLXRELEASEBUFFERSMESAPROC) (Display* dpy, GLXDrawable d);\r
-\r
-#define glXReleaseBuffersMESA GLXEW_GET_FUN(__glewXReleaseBuffersMESA)\r
-\r
-#define GLXEW_MESA_release_buffers GLXEW_GET_VAR(__GLXEW_MESA_release_buffers)\r
-\r
-#endif /* GLX_MESA_release_buffers */\r
-\r
-/* ------------------------- GLX_MESA_set_3dfx_mode ------------------------ */\r
-\r
-#ifndef GLX_MESA_set_3dfx_mode\r
-#define GLX_MESA_set_3dfx_mode 1\r
-\r
-#define GLX_3DFX_WINDOW_MODE_MESA 0x1\r
-#define GLX_3DFX_FULLSCREEN_MODE_MESA 0x2\r
-\r
-typedef GLboolean ( * PFNGLXSET3DFXMODEMESAPROC) (GLint mode);\r
-\r
-#define glXSet3DfxModeMESA GLXEW_GET_FUN(__glewXSet3DfxModeMESA)\r
-\r
-#define GLXEW_MESA_set_3dfx_mode GLXEW_GET_VAR(__GLXEW_MESA_set_3dfx_mode)\r
-\r
-#endif /* GLX_MESA_set_3dfx_mode */\r
-\r
-/* ------------------------- GLX_MESA_swap_control ------------------------- */\r
-\r
-#ifndef GLX_MESA_swap_control\r
-#define GLX_MESA_swap_control 1\r
-\r
-typedef int ( * PFNGLXGETSWAPINTERVALMESAPROC) (void);\r
-typedef int ( * PFNGLXSWAPINTERVALMESAPROC) (unsigned int interval);\r
-\r
-#define glXGetSwapIntervalMESA GLXEW_GET_FUN(__glewXGetSwapIntervalMESA)\r
-#define glXSwapIntervalMESA GLXEW_GET_FUN(__glewXSwapIntervalMESA)\r
-\r
-#define GLXEW_MESA_swap_control GLXEW_GET_VAR(__GLXEW_MESA_swap_control)\r
-\r
-#endif /* GLX_MESA_swap_control */\r
-\r
-/* --------------------------- GLX_NV_copy_image --------------------------- */\r
-\r
-#ifndef GLX_NV_copy_image\r
-#define GLX_NV_copy_image 1\r
-\r
-typedef void ( * PFNGLXCOPYIMAGESUBDATANVPROC) (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);\r
-\r
-#define glXCopyImageSubDataNV GLXEW_GET_FUN(__glewXCopyImageSubDataNV)\r
-\r
-#define GLXEW_NV_copy_image GLXEW_GET_VAR(__GLXEW_NV_copy_image)\r
-\r
-#endif /* GLX_NV_copy_image */\r
-\r
-/* -------------------------- GLX_NV_float_buffer -------------------------- */\r
-\r
-#ifndef GLX_NV_float_buffer\r
-#define GLX_NV_float_buffer 1\r
-\r
-#define GLX_FLOAT_COMPONENTS_NV 0x20B0\r
-\r
-#define GLXEW_NV_float_buffer GLXEW_GET_VAR(__GLXEW_NV_float_buffer)\r
-\r
-#endif /* GLX_NV_float_buffer */\r
-\r
-/* ---------------------- GLX_NV_multisample_coverage ---------------------- */\r
-\r
-#ifndef GLX_NV_multisample_coverage\r
-#define GLX_NV_multisample_coverage 1\r
-\r
-#define GLX_COLOR_SAMPLES_NV 0x20B3\r
-#define GLX_COVERAGE_SAMPLES_NV 100001\r
-\r
-#define GLXEW_NV_multisample_coverage GLXEW_GET_VAR(__GLXEW_NV_multisample_coverage)\r
-\r
-#endif /* GLX_NV_multisample_coverage */\r
-\r
-/* -------------------------- GLX_NV_present_video ------------------------- */\r
-\r
-#ifndef GLX_NV_present_video\r
-#define GLX_NV_present_video 1\r
-\r
-#define GLX_NUM_VIDEO_SLOTS_NV 0x20F0\r
-\r
-typedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display* dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);\r
-typedef unsigned int* ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);\r
-\r
-#define glXBindVideoDeviceNV GLXEW_GET_FUN(__glewXBindVideoDeviceNV)\r
-#define glXEnumerateVideoDevicesNV GLXEW_GET_FUN(__glewXEnumerateVideoDevicesNV)\r
-\r
-#define GLXEW_NV_present_video GLXEW_GET_VAR(__GLXEW_NV_present_video)\r
-\r
-#endif /* GLX_NV_present_video */\r
-\r
-/* --------------------------- GLX_NV_swap_group --------------------------- */\r
-\r
-#ifndef GLX_NV_swap_group\r
-#define GLX_NV_swap_group 1\r
-\r
-typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display* dpy, GLuint group, GLuint barrier);\r
-typedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint group);\r
-typedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display* dpy, int screen, GLuint *count);\r
-typedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display* dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);\r
-typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display* dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);\r
-typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display* dpy, int screen);\r
-\r
-#define glXBindSwapBarrierNV GLXEW_GET_FUN(__glewXBindSwapBarrierNV)\r
-#define glXJoinSwapGroupNV GLXEW_GET_FUN(__glewXJoinSwapGroupNV)\r
-#define glXQueryFrameCountNV GLXEW_GET_FUN(__glewXQueryFrameCountNV)\r
-#define glXQueryMaxSwapGroupsNV GLXEW_GET_FUN(__glewXQueryMaxSwapGroupsNV)\r
-#define glXQuerySwapGroupNV GLXEW_GET_FUN(__glewXQuerySwapGroupNV)\r
-#define glXResetFrameCountNV GLXEW_GET_FUN(__glewXResetFrameCountNV)\r
-\r
-#define GLXEW_NV_swap_group GLXEW_GET_VAR(__GLXEW_NV_swap_group)\r
-\r
-#endif /* GLX_NV_swap_group */\r
-\r
-/* ----------------------- GLX_NV_vertex_array_range ----------------------- */\r
-\r
-#ifndef GLX_NV_vertex_array_range\r
-#define GLX_NV_vertex_array_range 1\r
-\r
-typedef void * ( * PFNGLXALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);\r
-typedef void ( * PFNGLXFREEMEMORYNVPROC) (void *pointer);\r
-\r
-#define glXAllocateMemoryNV GLXEW_GET_FUN(__glewXAllocateMemoryNV)\r
-#define glXFreeMemoryNV GLXEW_GET_FUN(__glewXFreeMemoryNV)\r
-\r
-#define GLXEW_NV_vertex_array_range GLXEW_GET_VAR(__GLXEW_NV_vertex_array_range)\r
-\r
-#endif /* GLX_NV_vertex_array_range */\r
-\r
-/* -------------------------- GLX_NV_video_capture ------------------------- */\r
-\r
-#ifndef GLX_NV_video_capture\r
-#define GLX_NV_video_capture 1\r
-\r
-#define GLX_DEVICE_ID_NV 0x20CD\r
-#define GLX_UNIQUE_ID_NV 0x20CE\r
-#define GLX_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF\r
-\r
-typedef XID GLXVideoCaptureDeviceNV;\r
-\r
-typedef int ( * PFNGLXBINDVIDEOCAPTUREDEVICENVPROC) (Display* dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);\r
-typedef GLXVideoCaptureDeviceNV * ( * PFNGLXENUMERATEVIDEOCAPTUREDEVICESNVPROC) (Display* dpy, int screen, int *nelements);\r
-typedef void ( * PFNGLXLOCKVIDEOCAPTUREDEVICENVPROC) (Display* dpy, GLXVideoCaptureDeviceNV device);\r
-typedef int ( * PFNGLXQUERYVIDEOCAPTUREDEVICENVPROC) (Display* dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);\r
-typedef void ( * PFNGLXRELEASEVIDEOCAPTUREDEVICENVPROC) (Display* dpy, GLXVideoCaptureDeviceNV device);\r
-\r
-#define glXBindVideoCaptureDeviceNV GLXEW_GET_FUN(__glewXBindVideoCaptureDeviceNV)\r
-#define glXEnumerateVideoCaptureDevicesNV GLXEW_GET_FUN(__glewXEnumerateVideoCaptureDevicesNV)\r
-#define glXLockVideoCaptureDeviceNV GLXEW_GET_FUN(__glewXLockVideoCaptureDeviceNV)\r
-#define glXQueryVideoCaptureDeviceNV GLXEW_GET_FUN(__glewXQueryVideoCaptureDeviceNV)\r
-#define glXReleaseVideoCaptureDeviceNV GLXEW_GET_FUN(__glewXReleaseVideoCaptureDeviceNV)\r
-\r
-#define GLXEW_NV_video_capture GLXEW_GET_VAR(__GLXEW_NV_video_capture)\r
-\r
-#endif /* GLX_NV_video_capture */\r
-\r
-/* -------------------------- GLX_NV_video_output -------------------------- */\r
-\r
-#ifndef GLX_NV_video_output\r
-#define GLX_NV_video_output 1\r
-\r
-#define GLX_VIDEO_OUT_COLOR_NV 0x20C3\r
-#define GLX_VIDEO_OUT_ALPHA_NV 0x20C4\r
-#define GLX_VIDEO_OUT_DEPTH_NV 0x20C5\r
-#define GLX_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6\r
-#define GLX_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7\r
-#define GLX_VIDEO_OUT_FRAME_NV 0x20C8\r
-#define GLX_VIDEO_OUT_FIELD_1_NV 0x20C9\r
-#define GLX_VIDEO_OUT_FIELD_2_NV 0x20CA\r
-#define GLX_VIDEO_OUT_STACKED_FIELDS_1_2_NV 0x20CB\r
-#define GLX_VIDEO_OUT_STACKED_FIELDS_2_1_NV 0x20CC\r
-\r
-typedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display* dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);\r
-typedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display* dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);\r
-typedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);\r
-typedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display* dpy, int screen, GLXVideoDeviceNV VideoDevice);\r
-typedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display* dpy, GLXPbuffer pbuf);\r
-typedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display* dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);\r
-\r
-#define glXBindVideoImageNV GLXEW_GET_FUN(__glewXBindVideoImageNV)\r
-#define glXGetVideoDeviceNV GLXEW_GET_FUN(__glewXGetVideoDeviceNV)\r
-#define glXGetVideoInfoNV GLXEW_GET_FUN(__glewXGetVideoInfoNV)\r
-#define glXReleaseVideoDeviceNV GLXEW_GET_FUN(__glewXReleaseVideoDeviceNV)\r
-#define glXReleaseVideoImageNV GLXEW_GET_FUN(__glewXReleaseVideoImageNV)\r
-#define glXSendPbufferToVideoNV GLXEW_GET_FUN(__glewXSendPbufferToVideoNV)\r
-\r
-#define GLXEW_NV_video_output GLXEW_GET_VAR(__GLXEW_NV_video_output)\r
-\r
-#endif /* GLX_NV_video_output */\r
-\r
-/* -------------------------- GLX_OML_swap_method -------------------------- */\r
-\r
-#ifndef GLX_OML_swap_method\r
-#define GLX_OML_swap_method 1\r
-\r
-#define GLX_SWAP_METHOD_OML 0x8060\r
-#define GLX_SWAP_EXCHANGE_OML 0x8061\r
-#define GLX_SWAP_COPY_OML 0x8062\r
-#define GLX_SWAP_UNDEFINED_OML 0x8063\r
-\r
-#define GLXEW_OML_swap_method GLXEW_GET_VAR(__GLXEW_OML_swap_method)\r
-\r
-#endif /* GLX_OML_swap_method */\r
-\r
-/* -------------------------- GLX_OML_sync_control ------------------------- */\r
-\r
-#ifndef GLX_OML_sync_control\r
-#define GLX_OML_sync_control 1\r
-\r
-typedef Bool ( * PFNGLXGETMSCRATEOMLPROC) (Display* dpy, GLXDrawable drawable, int32_t* numerator, int32_t* denominator);\r
-typedef Bool ( * PFNGLXGETSYNCVALUESOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t* ust, int64_t* msc, int64_t* sbc);\r
-typedef int64_t ( * PFNGLXSWAPBUFFERSMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder);\r
-typedef Bool ( * PFNGLXWAITFORMSCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_msc, int64_t divisor, int64_t remainder, int64_t* ust, int64_t* msc, int64_t* sbc);\r
-typedef Bool ( * PFNGLXWAITFORSBCOMLPROC) (Display* dpy, GLXDrawable drawable, int64_t target_sbc, int64_t* ust, int64_t* msc, int64_t* sbc);\r
-\r
-#define glXGetMscRateOML GLXEW_GET_FUN(__glewXGetMscRateOML)\r
-#define glXGetSyncValuesOML GLXEW_GET_FUN(__glewXGetSyncValuesOML)\r
-#define glXSwapBuffersMscOML GLXEW_GET_FUN(__glewXSwapBuffersMscOML)\r
-#define glXWaitForMscOML GLXEW_GET_FUN(__glewXWaitForMscOML)\r
-#define glXWaitForSbcOML GLXEW_GET_FUN(__glewXWaitForSbcOML)\r
-\r
-#define GLXEW_OML_sync_control GLXEW_GET_VAR(__GLXEW_OML_sync_control)\r
-\r
-#endif /* GLX_OML_sync_control */\r
-\r
-/* ------------------------ GLX_SGIS_blended_overlay ----------------------- */\r
-\r
-#ifndef GLX_SGIS_blended_overlay\r
-#define GLX_SGIS_blended_overlay 1\r
-\r
-#define GLX_BLENDED_RGBA_SGIS 0x8025\r
-\r
-#define GLXEW_SGIS_blended_overlay GLXEW_GET_VAR(__GLXEW_SGIS_blended_overlay)\r
-\r
-#endif /* GLX_SGIS_blended_overlay */\r
-\r
-/* -------------------------- GLX_SGIS_color_range ------------------------- */\r
-\r
-#ifndef GLX_SGIS_color_range\r
-#define GLX_SGIS_color_range 1\r
-\r
-#define GLX_MIN_RED_SGIS 0\r
-#define GLX_MAX_GREEN_SGIS 0\r
-#define GLX_MIN_BLUE_SGIS 0\r
-#define GLX_MAX_ALPHA_SGIS 0\r
-#define GLX_MIN_GREEN_SGIS 0\r
-#define GLX_MIN_ALPHA_SGIS 0\r
-#define GLX_MAX_RED_SGIS 0\r
-#define GLX_EXTENDED_RANGE_SGIS 0\r
-#define GLX_MAX_BLUE_SGIS 0\r
-\r
-#define GLXEW_SGIS_color_range GLXEW_GET_VAR(__GLXEW_SGIS_color_range)\r
-\r
-#endif /* GLX_SGIS_color_range */\r
-\r
-/* -------------------------- GLX_SGIS_multisample ------------------------- */\r
-\r
-#ifndef GLX_SGIS_multisample\r
-#define GLX_SGIS_multisample 1\r
-\r
-#define GLX_SAMPLE_BUFFERS_SGIS 100000\r
-#define GLX_SAMPLES_SGIS 100001\r
-\r
-#define GLXEW_SGIS_multisample GLXEW_GET_VAR(__GLXEW_SGIS_multisample)\r
-\r
-#endif /* GLX_SGIS_multisample */\r
-\r
-/* ---------------------- GLX_SGIS_shared_multisample ---------------------- */\r
-\r
-#ifndef GLX_SGIS_shared_multisample\r
-#define GLX_SGIS_shared_multisample 1\r
-\r
-#define GLX_MULTISAMPLE_SUB_RECT_WIDTH_SGIS 0x8026\r
-#define GLX_MULTISAMPLE_SUB_RECT_HEIGHT_SGIS 0x8027\r
-\r
-#define GLXEW_SGIS_shared_multisample GLXEW_GET_VAR(__GLXEW_SGIS_shared_multisample)\r
-\r
-#endif /* GLX_SGIS_shared_multisample */\r
-\r
-/* --------------------------- GLX_SGIX_fbconfig --------------------------- */\r
-\r
-#ifndef GLX_SGIX_fbconfig\r
-#define GLX_SGIX_fbconfig 1\r
-\r
-#define GLX_WINDOW_BIT_SGIX 0x00000001\r
-#define GLX_RGBA_BIT_SGIX 0x00000001\r
-#define GLX_PIXMAP_BIT_SGIX 0x00000002\r
-#define GLX_COLOR_INDEX_BIT_SGIX 0x00000002\r
-#define GLX_SCREEN_EXT 0x800C\r
-#define GLX_DRAWABLE_TYPE_SGIX 0x8010\r
-#define GLX_RENDER_TYPE_SGIX 0x8011\r
-#define GLX_X_RENDERABLE_SGIX 0x8012\r
-#define GLX_FBCONFIG_ID_SGIX 0x8013\r
-#define GLX_RGBA_TYPE_SGIX 0x8014\r
-#define GLX_COLOR_INDEX_TYPE_SGIX 0x8015\r
-\r
-typedef XID GLXFBConfigIDSGIX;\r
-typedef struct __GLXFBConfigRec *GLXFBConfigSGIX;\r
-\r
-typedef GLXFBConfigSGIX* ( * PFNGLXCHOOSEFBCONFIGSGIXPROC) (Display *dpy, int screen, const int *attrib_list, int *nelements);\r
-typedef GLXContext ( * PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, int render_type, GLXContext share_list, Bool direct);\r
-typedef GLXPixmap ( * PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC) (Display* dpy, GLXFBConfig config, Pixmap pixmap);\r
-typedef int ( * PFNGLXGETFBCONFIGATTRIBSGIXPROC) (Display* dpy, GLXFBConfigSGIX config, int attribute, int *value);\r
-typedef GLXFBConfigSGIX ( * PFNGLXGETFBCONFIGFROMVISUALSGIXPROC) (Display* dpy, XVisualInfo *vis);\r
-typedef XVisualInfo* ( * PFNGLXGETVISUALFROMFBCONFIGSGIXPROC) (Display *dpy, GLXFBConfig config);\r
-\r
-#define glXChooseFBConfigSGIX GLXEW_GET_FUN(__glewXChooseFBConfigSGIX)\r
-#define glXCreateContextWithConfigSGIX GLXEW_GET_FUN(__glewXCreateContextWithConfigSGIX)\r
-#define glXCreateGLXPixmapWithConfigSGIX GLXEW_GET_FUN(__glewXCreateGLXPixmapWithConfigSGIX)\r
-#define glXGetFBConfigAttribSGIX GLXEW_GET_FUN(__glewXGetFBConfigAttribSGIX)\r
-#define glXGetFBConfigFromVisualSGIX GLXEW_GET_FUN(__glewXGetFBConfigFromVisualSGIX)\r
-#define glXGetVisualFromFBConfigSGIX GLXEW_GET_FUN(__glewXGetVisualFromFBConfigSGIX)\r
-\r
-#define GLXEW_SGIX_fbconfig GLXEW_GET_VAR(__GLXEW_SGIX_fbconfig)\r
-\r
-#endif /* GLX_SGIX_fbconfig */\r
-\r
-/* --------------------------- GLX_SGIX_hyperpipe -------------------------- */\r
-\r
-#ifndef GLX_SGIX_hyperpipe\r
-#define GLX_SGIX_hyperpipe 1\r
-\r
-#define GLX_HYPERPIPE_DISPLAY_PIPE_SGIX 0x00000001\r
-#define GLX_PIPE_RECT_SGIX 0x00000001\r
-#define GLX_PIPE_RECT_LIMITS_SGIX 0x00000002\r
-#define GLX_HYPERPIPE_RENDER_PIPE_SGIX 0x00000002\r
-#define GLX_HYPERPIPE_STEREO_SGIX 0x00000003\r
-#define GLX_HYPERPIPE_PIXEL_AVERAGE_SGIX 0x00000004\r
-#define GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX 80\r
-#define GLX_BAD_HYPERPIPE_CONFIG_SGIX 91\r
-#define GLX_BAD_HYPERPIPE_SGIX 92\r
-#define GLX_HYPERPIPE_ID_SGIX 0x8030\r
-\r
-typedef struct {\r
-  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; \r
-  int  networkId; \r
-} GLXHyperpipeNetworkSGIX;\r
-typedef struct {\r
-  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; \r
-  int XOrigin; \r
-  int YOrigin; \r
-  int maxHeight; \r
-  int maxWidth; \r
-} GLXPipeRectLimits;\r
-typedef struct {\r
-  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; \r
-  int channel; \r
-  unsigned int participationType; \r
-  int timeSlice; \r
-} GLXHyperpipeConfigSGIX;\r
-typedef struct {\r
-  char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; \r
-  int srcXOrigin; \r
-  int srcYOrigin; \r
-  int srcWidth; \r
-  int srcHeight; \r
-  int destXOrigin; \r
-  int destYOrigin; \r
-  int destWidth; \r
-  int destHeight; \r
-} GLXPipeRect;\r
-\r
-typedef int ( * PFNGLXBINDHYPERPIPESGIXPROC) (Display *dpy, int hpId);\r
-typedef int ( * PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId);\r
-typedef int ( * PFNGLXHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList);\r
-typedef int ( * PFNGLXHYPERPIPECONFIGSGIXPROC) (Display *dpy, int networkId, int npipes, GLXHyperpipeConfigSGIX *cfg, int *hpId);\r
-typedef int ( * PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *returnAttribList);\r
-typedef int ( * PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC) (Display *dpy, int timeSlice, int attrib, int size, void *attribList, void *returnAttribList);\r
-typedef GLXHyperpipeConfigSGIX * ( * PFNGLXQUERYHYPERPIPECONFIGSGIXPROC) (Display *dpy, int hpId, int *npipes);\r
-typedef GLXHyperpipeNetworkSGIX * ( * PFNGLXQUERYHYPERPIPENETWORKSGIXPROC) (Display *dpy, int *npipes);\r
-\r
-#define glXBindHyperpipeSGIX GLXEW_GET_FUN(__glewXBindHyperpipeSGIX)\r
-#define glXDestroyHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXDestroyHyperpipeConfigSGIX)\r
-#define glXHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXHyperpipeAttribSGIX)\r
-#define glXHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXHyperpipeConfigSGIX)\r
-#define glXQueryHyperpipeAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeAttribSGIX)\r
-#define glXQueryHyperpipeBestAttribSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeBestAttribSGIX)\r
-#define glXQueryHyperpipeConfigSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeConfigSGIX)\r
-#define glXQueryHyperpipeNetworkSGIX GLXEW_GET_FUN(__glewXQueryHyperpipeNetworkSGIX)\r
-\r
-#define GLXEW_SGIX_hyperpipe GLXEW_GET_VAR(__GLXEW_SGIX_hyperpipe)\r
-\r
-#endif /* GLX_SGIX_hyperpipe */\r
-\r
-/* ---------------------------- GLX_SGIX_pbuffer --------------------------- */\r
-\r
-#ifndef GLX_SGIX_pbuffer\r
-#define GLX_SGIX_pbuffer 1\r
-\r
-#define GLX_FRONT_LEFT_BUFFER_BIT_SGIX 0x00000001\r
-#define GLX_FRONT_RIGHT_BUFFER_BIT_SGIX 0x00000002\r
-#define GLX_PBUFFER_BIT_SGIX 0x00000004\r
-#define GLX_BACK_LEFT_BUFFER_BIT_SGIX 0x00000004\r
-#define GLX_BACK_RIGHT_BUFFER_BIT_SGIX 0x00000008\r
-#define GLX_AUX_BUFFERS_BIT_SGIX 0x00000010\r
-#define GLX_DEPTH_BUFFER_BIT_SGIX 0x00000020\r
-#define GLX_STENCIL_BUFFER_BIT_SGIX 0x00000040\r
-#define GLX_ACCUM_BUFFER_BIT_SGIX 0x00000080\r
-#define GLX_SAMPLE_BUFFERS_BIT_SGIX 0x00000100\r
-#define GLX_MAX_PBUFFER_WIDTH_SGIX 0x8016\r
-#define GLX_MAX_PBUFFER_HEIGHT_SGIX 0x8017\r
-#define GLX_MAX_PBUFFER_PIXELS_SGIX 0x8018\r
-#define GLX_OPTIMAL_PBUFFER_WIDTH_SGIX 0x8019\r
-#define GLX_OPTIMAL_PBUFFER_HEIGHT_SGIX 0x801A\r
-#define GLX_PRESERVED_CONTENTS_SGIX 0x801B\r
-#define GLX_LARGEST_PBUFFER_SGIX 0x801C\r
-#define GLX_WIDTH_SGIX 0x801D\r
-#define GLX_HEIGHT_SGIX 0x801E\r
-#define GLX_EVENT_MASK_SGIX 0x801F\r
-#define GLX_DAMAGED_SGIX 0x8020\r
-#define GLX_SAVED_SGIX 0x8021\r
-#define GLX_WINDOW_SGIX 0x8022\r
-#define GLX_PBUFFER_SGIX 0x8023\r
-#define GLX_BUFFER_CLOBBER_MASK_SGIX 0x08000000\r
-\r
-typedef XID GLXPbufferSGIX;\r
-typedef struct { int type; unsigned long serial; Bool send_event; Display *display; GLXDrawable drawable; int event_type; int draw_type; unsigned int mask; int x, y; int width, height; int count; } GLXBufferClobberEventSGIX;\r
-\r
-typedef GLXPbuffer ( * PFNGLXCREATEGLXPBUFFERSGIXPROC) (Display* dpy, GLXFBConfig config, unsigned int width, unsigned int height, int *attrib_list);\r
-typedef void ( * PFNGLXDESTROYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf);\r
-typedef void ( * PFNGLXGETSELECTEDEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long *mask);\r
-typedef void ( * PFNGLXQUERYGLXPBUFFERSGIXPROC) (Display* dpy, GLXPbuffer pbuf, int attribute, unsigned int *value);\r
-typedef void ( * PFNGLXSELECTEVENTSGIXPROC) (Display* dpy, GLXDrawable drawable, unsigned long mask);\r
-\r
-#define glXCreateGLXPbufferSGIX GLXEW_GET_FUN(__glewXCreateGLXPbufferSGIX)\r
-#define glXDestroyGLXPbufferSGIX GLXEW_GET_FUN(__glewXDestroyGLXPbufferSGIX)\r
-#define glXGetSelectedEventSGIX GLXEW_GET_FUN(__glewXGetSelectedEventSGIX)\r
-#define glXQueryGLXPbufferSGIX GLXEW_GET_FUN(__glewXQueryGLXPbufferSGIX)\r
-#define glXSelectEventSGIX GLXEW_GET_FUN(__glewXSelectEventSGIX)\r
-\r
-#define GLXEW_SGIX_pbuffer GLXEW_GET_VAR(__GLXEW_SGIX_pbuffer)\r
-\r
-#endif /* GLX_SGIX_pbuffer */\r
-\r
-/* ------------------------- GLX_SGIX_swap_barrier ------------------------- */\r
-\r
-#ifndef GLX_SGIX_swap_barrier\r
-#define GLX_SGIX_swap_barrier 1\r
-\r
-typedef void ( * PFNGLXBINDSWAPBARRIERSGIXPROC) (Display *dpy, GLXDrawable drawable, int barrier);\r
-typedef Bool ( * PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC) (Display *dpy, int screen, int *max);\r
-\r
-#define glXBindSwapBarrierSGIX GLXEW_GET_FUN(__glewXBindSwapBarrierSGIX)\r
-#define glXQueryMaxSwapBarriersSGIX GLXEW_GET_FUN(__glewXQueryMaxSwapBarriersSGIX)\r
-\r
-#define GLXEW_SGIX_swap_barrier GLXEW_GET_VAR(__GLXEW_SGIX_swap_barrier)\r
-\r
-#endif /* GLX_SGIX_swap_barrier */\r
-\r
-/* -------------------------- GLX_SGIX_swap_group -------------------------- */\r
-\r
-#ifndef GLX_SGIX_swap_group\r
-#define GLX_SGIX_swap_group 1\r
-\r
-typedef void ( * PFNGLXJOINSWAPGROUPSGIXPROC) (Display *dpy, GLXDrawable drawable, GLXDrawable member);\r
-\r
-#define glXJoinSwapGroupSGIX GLXEW_GET_FUN(__glewXJoinSwapGroupSGIX)\r
-\r
-#define GLXEW_SGIX_swap_group GLXEW_GET_VAR(__GLXEW_SGIX_swap_group)\r
-\r
-#endif /* GLX_SGIX_swap_group */\r
-\r
-/* ------------------------- GLX_SGIX_video_resize ------------------------- */\r
-\r
-#ifndef GLX_SGIX_video_resize\r
-#define GLX_SGIX_video_resize 1\r
-\r
-#define GLX_SYNC_FRAME_SGIX 0x00000000\r
-#define GLX_SYNC_SWAP_SGIX 0x00000001\r
-\r
-typedef int ( * PFNGLXBINDCHANNELTOWINDOWSGIXPROC) (Display* display, int screen, int channel, Window window);\r
-typedef int ( * PFNGLXCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int x, int y, int w, int h);\r
-typedef int ( * PFNGLXCHANNELRECTSYNCSGIXPROC) (Display* display, int screen, int channel, GLenum synctype);\r
-typedef int ( * PFNGLXQUERYCHANNELDELTASSGIXPROC) (Display* display, int screen, int channel, int *x, int *y, int *w, int *h);\r
-typedef int ( * PFNGLXQUERYCHANNELRECTSGIXPROC) (Display* display, int screen, int channel, int *dx, int *dy, int *dw, int *dh);\r
-\r
-#define glXBindChannelToWindowSGIX GLXEW_GET_FUN(__glewXBindChannelToWindowSGIX)\r
-#define glXChannelRectSGIX GLXEW_GET_FUN(__glewXChannelRectSGIX)\r
-#define glXChannelRectSyncSGIX GLXEW_GET_FUN(__glewXChannelRectSyncSGIX)\r
-#define glXQueryChannelDeltasSGIX GLXEW_GET_FUN(__glewXQueryChannelDeltasSGIX)\r
-#define glXQueryChannelRectSGIX GLXEW_GET_FUN(__glewXQueryChannelRectSGIX)\r
-\r
-#define GLXEW_SGIX_video_resize GLXEW_GET_VAR(__GLXEW_SGIX_video_resize)\r
-\r
-#endif /* GLX_SGIX_video_resize */\r
-\r
-/* ---------------------- GLX_SGIX_visual_select_group --------------------- */\r
-\r
-#ifndef GLX_SGIX_visual_select_group\r
-#define GLX_SGIX_visual_select_group 1\r
-\r
-#define GLX_VISUAL_SELECT_GROUP_SGIX 0x8028\r
-\r
-#define GLXEW_SGIX_visual_select_group GLXEW_GET_VAR(__GLXEW_SGIX_visual_select_group)\r
-\r
-#endif /* GLX_SGIX_visual_select_group */\r
-\r
-/* ---------------------------- GLX_SGI_cushion ---------------------------- */\r
-\r
-#ifndef GLX_SGI_cushion\r
-#define GLX_SGI_cushion 1\r
-\r
-typedef void ( * PFNGLXCUSHIONSGIPROC) (Display* dpy, Window window, float cushion);\r
-\r
-#define glXCushionSGI GLXEW_GET_FUN(__glewXCushionSGI)\r
-\r
-#define GLXEW_SGI_cushion GLXEW_GET_VAR(__GLXEW_SGI_cushion)\r
-\r
-#endif /* GLX_SGI_cushion */\r
-\r
-/* ----------------------- GLX_SGI_make_current_read ----------------------- */\r
-\r
-#ifndef GLX_SGI_make_current_read\r
-#define GLX_SGI_make_current_read 1\r
-\r
-typedef GLXDrawable ( * PFNGLXGETCURRENTREADDRAWABLESGIPROC) (void);\r
-typedef Bool ( * PFNGLXMAKECURRENTREADSGIPROC) (Display* dpy, GLXDrawable draw, GLXDrawable read, GLXContext ctx);\r
-\r
-#define glXGetCurrentReadDrawableSGI GLXEW_GET_FUN(__glewXGetCurrentReadDrawableSGI)\r
-#define glXMakeCurrentReadSGI GLXEW_GET_FUN(__glewXMakeCurrentReadSGI)\r
-\r
-#define GLXEW_SGI_make_current_read GLXEW_GET_VAR(__GLXEW_SGI_make_current_read)\r
-\r
-#endif /* GLX_SGI_make_current_read */\r
-\r
-/* -------------------------- GLX_SGI_swap_control ------------------------- */\r
-\r
-#ifndef GLX_SGI_swap_control\r
-#define GLX_SGI_swap_control 1\r
-\r
-typedef int ( * PFNGLXSWAPINTERVALSGIPROC) (int interval);\r
-\r
-#define glXSwapIntervalSGI GLXEW_GET_FUN(__glewXSwapIntervalSGI)\r
-\r
-#define GLXEW_SGI_swap_control GLXEW_GET_VAR(__GLXEW_SGI_swap_control)\r
-\r
-#endif /* GLX_SGI_swap_control */\r
-\r
-/* --------------------------- GLX_SGI_video_sync -------------------------- */\r
-\r
-#ifndef GLX_SGI_video_sync\r
-#define GLX_SGI_video_sync 1\r
-\r
-typedef int ( * PFNGLXGETVIDEOSYNCSGIPROC) (unsigned int* count);\r
-typedef int ( * PFNGLXWAITVIDEOSYNCSGIPROC) (int divisor, int remainder, unsigned int* count);\r
-\r
-#define glXGetVideoSyncSGI GLXEW_GET_FUN(__glewXGetVideoSyncSGI)\r
-#define glXWaitVideoSyncSGI GLXEW_GET_FUN(__glewXWaitVideoSyncSGI)\r
-\r
-#define GLXEW_SGI_video_sync GLXEW_GET_VAR(__GLXEW_SGI_video_sync)\r
-\r
-#endif /* GLX_SGI_video_sync */\r
-\r
-/* --------------------- GLX_SUN_get_transparent_index --------------------- */\r
-\r
-#ifndef GLX_SUN_get_transparent_index\r
-#define GLX_SUN_get_transparent_index 1\r
-\r
-typedef Status ( * PFNGLXGETTRANSPARENTINDEXSUNPROC) (Display* dpy, Window overlay, Window underlay, unsigned long *pTransparentIndex);\r
-\r
-#define glXGetTransparentIndexSUN GLXEW_GET_FUN(__glewXGetTransparentIndexSUN)\r
-\r
-#define GLXEW_SUN_get_transparent_index GLXEW_GET_VAR(__GLXEW_SUN_get_transparent_index)\r
-\r
-#endif /* GLX_SUN_get_transparent_index */\r
-\r
-/* -------------------------- GLX_SUN_video_resize ------------------------- */\r
-\r
-#ifndef GLX_SUN_video_resize\r
-#define GLX_SUN_video_resize 1\r
-\r
-#define GLX_VIDEO_RESIZE_SUN 0x8171\r
-#define GL_VIDEO_RESIZE_COMPENSATION_SUN 0x85CD\r
-\r
-typedef int ( * PFNGLXGETVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float* factor);\r
-typedef int ( * PFNGLXVIDEORESIZESUNPROC) (Display* display, GLXDrawable window, float factor);\r
-\r
-#define glXGetVideoResizeSUN GLXEW_GET_FUN(__glewXGetVideoResizeSUN)\r
-#define glXVideoResizeSUN GLXEW_GET_FUN(__glewXVideoResizeSUN)\r
-\r
-#define GLXEW_SUN_video_resize GLXEW_GET_VAR(__GLXEW_SUN_video_resize)\r
-\r
-#endif /* GLX_SUN_video_resize */\r
-\r
-/* ------------------------------------------------------------------------- */\r
-\r
-#ifdef GLEW_MX\r
-#define GLXEW_EXPORT\r
-#else\r
-#define GLXEW_EXPORT extern\r
-#endif /* GLEW_MX */\r
-\r
-extern PFNGLXGETCURRENTDISPLAYPROC __glewXGetCurrentDisplay;\r
-\r
-extern PFNGLXCHOOSEFBCONFIGPROC __glewXChooseFBConfig;\r
-extern PFNGLXCREATENEWCONTEXTPROC __glewXCreateNewContext;\r
-extern PFNGLXCREATEPBUFFERPROC __glewXCreatePbuffer;\r
-extern PFNGLXCREATEPIXMAPPROC __glewXCreatePixmap;\r
-extern PFNGLXCREATEWINDOWPROC __glewXCreateWindow;\r
-extern PFNGLXDESTROYPBUFFERPROC __glewXDestroyPbuffer;\r
-extern PFNGLXDESTROYPIXMAPPROC __glewXDestroyPixmap;\r
-extern PFNGLXDESTROYWINDOWPROC __glewXDestroyWindow;\r
-extern PFNGLXGETCURRENTREADDRAWABLEPROC __glewXGetCurrentReadDrawable;\r
-extern PFNGLXGETFBCONFIGATTRIBPROC __glewXGetFBConfigAttrib;\r
-extern PFNGLXGETFBCONFIGSPROC __glewXGetFBConfigs;\r
-extern PFNGLXGETSELECTEDEVENTPROC __glewXGetSelectedEvent;\r
-extern PFNGLXGETVISUALFROMFBCONFIGPROC __glewXGetVisualFromFBConfig;\r
-extern PFNGLXMAKECONTEXTCURRENTPROC __glewXMakeContextCurrent;\r
-extern PFNGLXQUERYCONTEXTPROC __glewXQueryContext;\r
-extern PFNGLXQUERYDRAWABLEPROC __glewXQueryDrawable;\r
-extern PFNGLXSELECTEVENTPROC __glewXSelectEvent;\r
-\r
-extern PFNGLXCREATECONTEXTATTRIBSARBPROC __glewXCreateContextAttribsARB;\r
-\r
-extern PFNGLXBINDTEXIMAGEATIPROC __glewXBindTexImageATI;\r
-extern PFNGLXDRAWABLEATTRIBATIPROC __glewXDrawableAttribATI;\r
-extern PFNGLXRELEASETEXIMAGEATIPROC __glewXReleaseTexImageATI;\r
-\r
-extern PFNGLXFREECONTEXTEXTPROC __glewXFreeContextEXT;\r
-extern PFNGLXGETCONTEXTIDEXTPROC __glewXGetContextIDEXT;\r
-extern PFNGLXIMPORTCONTEXTEXTPROC __glewXImportContextEXT;\r
-extern PFNGLXQUERYCONTEXTINFOEXTPROC __glewXQueryContextInfoEXT;\r
-\r
-extern PFNGLXSWAPINTERVALEXTPROC __glewXSwapIntervalEXT;\r
-\r
-extern PFNGLXBINDTEXIMAGEEXTPROC __glewXBindTexImageEXT;\r
-extern PFNGLXRELEASETEXIMAGEEXTPROC __glewXReleaseTexImageEXT;\r
-\r
-extern PFNGLXGETAGPOFFSETMESAPROC __glewXGetAGPOffsetMESA;\r
-\r
-extern PFNGLXCOPYSUBBUFFERMESAPROC __glewXCopySubBufferMESA;\r
-\r
-extern PFNGLXCREATEGLXPIXMAPMESAPROC __glewXCreateGLXPixmapMESA;\r
-\r
-extern PFNGLXRELEASEBUFFERSMESAPROC __glewXReleaseBuffersMESA;\r
-\r
-extern PFNGLXSET3DFXMODEMESAPROC __glewXSet3DfxModeMESA;\r
-\r
-extern PFNGLXGETSWAPINTERVALMESAPROC __glewXGetSwapIntervalMESA;\r
-extern PFNGLXSWAPINTERVALMESAPROC __glewXSwapIntervalMESA;\r
-\r
-extern PFNGLXCOPYIMAGESUBDATANVPROC __glewXCopyImageSubDataNV;\r
-\r
-extern PFNGLXBINDVIDEODEVICENVPROC __glewXBindVideoDeviceNV;\r
-extern PFNGLXENUMERATEVIDEODEVICESNVPROC __glewXEnumerateVideoDevicesNV;\r
-\r
-extern PFNGLXBINDSWAPBARRIERNVPROC __glewXBindSwapBarrierNV;\r
-extern PFNGLXJOINSWAPGROUPNVPROC __glewXJoinSwapGroupNV;\r
-extern PFNGLXQUERYFRAMECOUNTNVPROC __glewXQueryFrameCountNV;\r
-extern PFNGLXQUERYMAXSWAPGROUPSNVPROC __glewXQueryMaxSwapGroupsNV;\r
-extern PFNGLXQUERYSWAPGROUPNVPROC __glewXQuerySwapGroupNV;\r
-extern PFNGLXRESETFRAMECOUNTNVPROC __glewXResetFrameCountNV;\r
-\r
-extern PFNGLXALLOCATEMEMORYNVPROC __glewXAllocateMemoryNV;\r
-extern PFNGLXFREEMEMORYNVPROC __glewXFreeMemoryNV;\r
-\r
-extern PFNGLXBINDVIDEOCAPTUREDEVICENVPROC __glewXBindVideoCaptureDeviceNV;\r
-extern PFNGLXENUMERATEVIDEOCAPTUREDEVICESNVPROC __glewXEnumerateVideoCaptureDevicesNV;\r
-extern PFNGLXLOCKVIDEOCAPTUREDEVICENVPROC __glewXLockVideoCaptureDeviceNV;\r
-extern PFNGLXQUERYVIDEOCAPTUREDEVICENVPROC __glewXQueryVideoCaptureDeviceNV;\r
-extern PFNGLXRELEASEVIDEOCAPTUREDEVICENVPROC __glewXReleaseVideoCaptureDeviceNV;\r
-\r
-extern PFNGLXBINDVIDEOIMAGENVPROC __glewXBindVideoImageNV;\r
-extern PFNGLXGETVIDEODEVICENVPROC __glewXGetVideoDeviceNV;\r
-extern PFNGLXGETVIDEOINFONVPROC __glewXGetVideoInfoNV;\r
-extern PFNGLXRELEASEVIDEODEVICENVPROC __glewXReleaseVideoDeviceNV;\r
-extern PFNGLXRELEASEVIDEOIMAGENVPROC __glewXReleaseVideoImageNV;\r
-extern PFNGLXSENDPBUFFERTOVIDEONVPROC __glewXSendPbufferToVideoNV;\r
-\r
-extern PFNGLXGETMSCRATEOMLPROC __glewXGetMscRateOML;\r
-extern PFNGLXGETSYNCVALUESOMLPROC __glewXGetSyncValuesOML;\r
-extern PFNGLXSWAPBUFFERSMSCOMLPROC __glewXSwapBuffersMscOML;\r
-extern PFNGLXWAITFORMSCOMLPROC __glewXWaitForMscOML;\r
-extern PFNGLXWAITFORSBCOMLPROC __glewXWaitForSbcOML;\r
-\r
-extern PFNGLXCHOOSEFBCONFIGSGIXPROC __glewXChooseFBConfigSGIX;\r
-extern PFNGLXCREATECONTEXTWITHCONFIGSGIXPROC __glewXCreateContextWithConfigSGIX;\r
-extern PFNGLXCREATEGLXPIXMAPWITHCONFIGSGIXPROC __glewXCreateGLXPixmapWithConfigSGIX;\r
-extern PFNGLXGETFBCONFIGATTRIBSGIXPROC __glewXGetFBConfigAttribSGIX;\r
-extern PFNGLXGETFBCONFIGFROMVISUALSGIXPROC __glewXGetFBConfigFromVisualSGIX;\r
-extern PFNGLXGETVISUALFROMFBCONFIGSGIXPROC __glewXGetVisualFromFBConfigSGIX;\r
-\r
-extern PFNGLXBINDHYPERPIPESGIXPROC __glewXBindHyperpipeSGIX;\r
-extern PFNGLXDESTROYHYPERPIPECONFIGSGIXPROC __glewXDestroyHyperpipeConfigSGIX;\r
-extern PFNGLXHYPERPIPEATTRIBSGIXPROC __glewXHyperpipeAttribSGIX;\r
-extern PFNGLXHYPERPIPECONFIGSGIXPROC __glewXHyperpipeConfigSGIX;\r
-extern PFNGLXQUERYHYPERPIPEATTRIBSGIXPROC __glewXQueryHyperpipeAttribSGIX;\r
-extern PFNGLXQUERYHYPERPIPEBESTATTRIBSGIXPROC __glewXQueryHyperpipeBestAttribSGIX;\r
-extern PFNGLXQUERYHYPERPIPECONFIGSGIXPROC __glewXQueryHyperpipeConfigSGIX;\r
-extern PFNGLXQUERYHYPERPIPENETWORKSGIXPROC __glewXQueryHyperpipeNetworkSGIX;\r
-\r
-extern PFNGLXCREATEGLXPBUFFERSGIXPROC __glewXCreateGLXPbufferSGIX;\r
-extern PFNGLXDESTROYGLXPBUFFERSGIXPROC __glewXDestroyGLXPbufferSGIX;\r
-extern PFNGLXGETSELECTEDEVENTSGIXPROC __glewXGetSelectedEventSGIX;\r
-extern PFNGLXQUERYGLXPBUFFERSGIXPROC __glewXQueryGLXPbufferSGIX;\r
-extern PFNGLXSELECTEVENTSGIXPROC __glewXSelectEventSGIX;\r
-\r
-extern PFNGLXBINDSWAPBARRIERSGIXPROC __glewXBindSwapBarrierSGIX;\r
-extern PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC __glewXQueryMaxSwapBarriersSGIX;\r
-\r
-extern PFNGLXJOINSWAPGROUPSGIXPROC __glewXJoinSwapGroupSGIX;\r
-\r
-extern PFNGLXBINDCHANNELTOWINDOWSGIXPROC __glewXBindChannelToWindowSGIX;\r
-extern PFNGLXCHANNELRECTSGIXPROC __glewXChannelRectSGIX;\r
-extern PFNGLXCHANNELRECTSYNCSGIXPROC __glewXChannelRectSyncSGIX;\r
-extern PFNGLXQUERYCHANNELDELTASSGIXPROC __glewXQueryChannelDeltasSGIX;\r
-extern PFNGLXQUERYCHANNELRECTSGIXPROC __glewXQueryChannelRectSGIX;\r
-\r
-extern PFNGLXCUSHIONSGIPROC __glewXCushionSGI;\r
-\r
-extern PFNGLXGETCURRENTREADDRAWABLESGIPROC __glewXGetCurrentReadDrawableSGI;\r
-extern PFNGLXMAKECURRENTREADSGIPROC __glewXMakeCurrentReadSGI;\r
-\r
-extern PFNGLXSWAPINTERVALSGIPROC __glewXSwapIntervalSGI;\r
-\r
-extern PFNGLXGETVIDEOSYNCSGIPROC __glewXGetVideoSyncSGI;\r
-extern PFNGLXWAITVIDEOSYNCSGIPROC __glewXWaitVideoSyncSGI;\r
-\r
-extern PFNGLXGETTRANSPARENTINDEXSUNPROC __glewXGetTransparentIndexSUN;\r
-\r
-extern PFNGLXGETVIDEORESIZESUNPROC __glewXGetVideoResizeSUN;\r
-extern PFNGLXVIDEORESIZESUNPROC __glewXVideoResizeSUN;\r
-\r
-#if defined(GLEW_MX)\r
-struct GLXEWContextStruct\r
-{\r
-#endif /* GLEW_MX */\r
-\r
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_0;\r
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_1;\r
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;\r
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_3;\r
-GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_4;\r
-GLXEW_EXPORT GLboolean __GLXEW_3DFX_multisample;\r
-GLXEW_EXPORT GLboolean __GLXEW_AMD_gpu_association;\r
-GLXEW_EXPORT GLboolean __GLXEW_ARB_create_context;\r
-GLXEW_EXPORT GLboolean __GLXEW_ARB_create_context_profile;\r
-GLXEW_EXPORT GLboolean __GLXEW_ARB_create_context_robustness;\r
-GLXEW_EXPORT GLboolean __GLXEW_ARB_fbconfig_float;\r
-GLXEW_EXPORT GLboolean __GLXEW_ARB_framebuffer_sRGB;\r
-GLXEW_EXPORT GLboolean __GLXEW_ARB_get_proc_address;\r
-GLXEW_EXPORT GLboolean __GLXEW_ARB_multisample;\r
-GLXEW_EXPORT GLboolean __GLXEW_ARB_vertex_buffer_object;\r
-GLXEW_EXPORT GLboolean __GLXEW_ATI_pixel_format_float;\r
-GLXEW_EXPORT GLboolean __GLXEW_ATI_render_texture;\r
-GLXEW_EXPORT GLboolean __GLXEW_EXT_create_context_es2_profile;\r
-GLXEW_EXPORT GLboolean __GLXEW_EXT_fbconfig_packed_float;\r
-GLXEW_EXPORT GLboolean __GLXEW_EXT_framebuffer_sRGB;\r
-GLXEW_EXPORT GLboolean __GLXEW_EXT_import_context;\r
-GLXEW_EXPORT GLboolean __GLXEW_EXT_scene_marker;\r
-GLXEW_EXPORT GLboolean __GLXEW_EXT_swap_control;\r
-GLXEW_EXPORT GLboolean __GLXEW_EXT_texture_from_pixmap;\r
-GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_info;\r
-GLXEW_EXPORT GLboolean __GLXEW_EXT_visual_rating;\r
-GLXEW_EXPORT GLboolean __GLXEW_INTEL_swap_event;\r
-GLXEW_EXPORT GLboolean __GLXEW_MESA_agp_offset;\r
-GLXEW_EXPORT GLboolean __GLXEW_MESA_copy_sub_buffer;\r
-GLXEW_EXPORT GLboolean __GLXEW_MESA_pixmap_colormap;\r
-GLXEW_EXPORT GLboolean __GLXEW_MESA_release_buffers;\r
-GLXEW_EXPORT GLboolean __GLXEW_MESA_set_3dfx_mode;\r
-GLXEW_EXPORT GLboolean __GLXEW_MESA_swap_control;\r
-GLXEW_EXPORT GLboolean __GLXEW_NV_copy_image;\r
-GLXEW_EXPORT GLboolean __GLXEW_NV_float_buffer;\r
-GLXEW_EXPORT GLboolean __GLXEW_NV_multisample_coverage;\r
-GLXEW_EXPORT GLboolean __GLXEW_NV_present_video;\r
-GLXEW_EXPORT GLboolean __GLXEW_NV_swap_group;\r
-GLXEW_EXPORT GLboolean __GLXEW_NV_vertex_array_range;\r
-GLXEW_EXPORT GLboolean __GLXEW_NV_video_capture;\r
-GLXEW_EXPORT GLboolean __GLXEW_NV_video_output;\r
-GLXEW_EXPORT GLboolean __GLXEW_OML_swap_method;\r
-GLXEW_EXPORT GLboolean __GLXEW_OML_sync_control;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIS_blended_overlay;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIS_color_range;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIS_multisample;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIS_shared_multisample;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_fbconfig;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_hyperpipe;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_pbuffer;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_barrier;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_swap_group;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_video_resize;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGIX_visual_select_group;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGI_cushion;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGI_make_current_read;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGI_swap_control;\r
-GLXEW_EXPORT GLboolean __GLXEW_SGI_video_sync;\r
-GLXEW_EXPORT GLboolean __GLXEW_SUN_get_transparent_index;\r
-GLXEW_EXPORT GLboolean __GLXEW_SUN_video_resize;\r
-\r
-#ifdef GLEW_MX\r
-}; /* GLXEWContextStruct */\r
-#endif /* GLEW_MX */\r
-\r
-/* ------------------------------------------------------------------------ */\r
-\r
-#ifdef GLEW_MX\r
-\r
-typedef struct GLXEWContextStruct GLXEWContext;\r
-extern GLenum glxewContextInit (GLXEWContext* ctx);\r
-extern GLboolean glxewContextIsSupported (const GLXEWContext* ctx, const char* name);\r
-\r
-#define glxewInit() glxewContextInit(glxewGetContext())\r
-#define glxewIsSupported(x) glxewContextIsSupported(glxewGetContext(), x)\r
-\r
-#define GLXEW_GET_VAR(x) (*(const GLboolean*)&(glxewGetContext()->x))\r
-#define GLXEW_GET_FUN(x) x\r
-\r
-#else /* GLEW_MX */\r
-\r
-#define GLXEW_GET_VAR(x) (*(const GLboolean*)&x)\r
-#define GLXEW_GET_FUN(x) x\r
-\r
-extern GLboolean glxewIsSupported (const char* name);\r
-\r
-#endif /* GLEW_MX */\r
-\r
-extern GLboolean glxewGetExtension (const char* name);\r
-\r
-#ifdef __cplusplus\r
-}\r
-#endif\r
-\r
-#endif /* __glxew_h__ */\r
diff --git a/dependencies64/glew/include/GL/wglew.h b/dependencies64/glew/include/GL/wglew.h
deleted file mode 100644 (file)
index a32e11c..0000000
+++ /dev/null
@@ -1,1363 +0,0 @@
-/*\r
-** The OpenGL Extension Wrangler Library\r
-** Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>\r
-** Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>\r
-** Copyright (C) 2002, Lev Povalahev\r
-** All rights reserved.\r
-** \r
-** Redistribution and use in source and binary forms, with or without \r
-** modification, are permitted provided that the following conditions are met:\r
-** \r
-** * Redistributions of source code must retain the above copyright notice, \r
-**   this list of conditions and the following disclaimer.\r
-** * Redistributions in binary form must reproduce the above copyright notice, \r
-**   this list of conditions and the following disclaimer in the documentation \r
-**   and/or other materials provided with the distribution.\r
-** * The name of the author may be used to endorse or promote products \r
-**   derived from this software without specific prior written permission.\r
-**\r
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" \r
-** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE \r
-** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r
-** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE \r
-** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \r
-** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF \r
-** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r
-** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r
-** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r
-** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\r
-** THE POSSIBILITY OF SUCH DAMAGE.\r
-*/\r
-\r
-/*\r
-** Copyright (c) 2007 The Khronos Group Inc.\r
-** \r
-** Permission is hereby granted, free of charge, to any person obtaining a\r
-** copy of this software and/or associated documentation files (the\r
-** "Materials"), to deal in the Materials without restriction, including\r
-** without limitation the rights to use, copy, modify, merge, publish,\r
-** distribute, sublicense, and/or sell copies of the Materials, and to\r
-** permit persons to whom the Materials are furnished to do so, subject to\r
-** the following conditions:\r
-** \r
-** The above copyright notice and this permission notice shall be included\r
-** in all copies or substantial portions of the Materials.\r
-** \r
-** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r
-** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\r
-** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\r
-** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\r
-** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.\r
-*/\r
-\r
-#ifndef __wglew_h__\r
-#define __wglew_h__\r
-#define __WGLEW_H__\r
-\r
-#ifdef __wglext_h_\r
-#error wglext.h included before wglew.h\r
-#endif\r
-\r
-#define __wglext_h_\r
-\r
-#if !defined(WINAPI)\r
-#  ifndef WIN32_LEAN_AND_MEAN\r
-#    define WIN32_LEAN_AND_MEAN 1\r
-#  endif\r
-#include <windows.h>\r
-#  undef WIN32_LEAN_AND_MEAN\r
-#endif\r
-\r
-/*\r
- * GLEW_STATIC needs to be set when using the static version.\r
- * GLEW_BUILD is set when building the DLL version.\r
- */\r
-#ifdef GLEW_STATIC\r
-#  define GLEWAPI extern\r
-#else\r
-#  ifdef GLEW_BUILD\r
-#    define GLEWAPI extern __declspec(dllexport)\r
-#  else\r
-#    define GLEWAPI extern __declspec(dllimport)\r
-#  endif\r
-#endif\r
-\r
-#ifdef __cplusplus\r
-extern "C" {\r
-#endif\r
-\r
-/* -------------------------- WGL_3DFX_multisample ------------------------- */\r
-\r
-#ifndef WGL_3DFX_multisample\r
-#define WGL_3DFX_multisample 1\r
-\r
-#define WGL_SAMPLE_BUFFERS_3DFX 0x2060\r
-#define WGL_SAMPLES_3DFX 0x2061\r
-\r
-#define WGLEW_3DFX_multisample WGLEW_GET_VAR(__WGLEW_3DFX_multisample)\r
-\r
-#endif /* WGL_3DFX_multisample */\r
-\r
-/* ------------------------- WGL_3DL_stereo_control ------------------------ */\r
-\r
-#ifndef WGL_3DL_stereo_control\r
-#define WGL_3DL_stereo_control 1\r
-\r
-#define WGL_STEREO_EMITTER_ENABLE_3DL 0x2055\r
-#define WGL_STEREO_EMITTER_DISABLE_3DL 0x2056\r
-#define WGL_STEREO_POLARITY_NORMAL_3DL 0x2057\r
-#define WGL_STEREO_POLARITY_INVERT_3DL 0x2058\r
-\r
-typedef BOOL (WINAPI * PFNWGLSETSTEREOEMITTERSTATE3DLPROC) (HDC hDC, UINT uState);\r
-\r
-#define wglSetStereoEmitterState3DL WGLEW_GET_FUN(__wglewSetStereoEmitterState3DL)\r
-\r
-#define WGLEW_3DL_stereo_control WGLEW_GET_VAR(__WGLEW_3DL_stereo_control)\r
-\r
-#endif /* WGL_3DL_stereo_control */\r
-\r
-/* ------------------------ WGL_AMD_gpu_association ------------------------ */\r
-\r
-#ifndef WGL_AMD_gpu_association\r
-#define WGL_AMD_gpu_association 1\r
-\r
-#define WGL_GPU_VENDOR_AMD 0x1F00\r
-#define WGL_GPU_RENDERER_STRING_AMD 0x1F01\r
-#define WGL_GPU_OPENGL_VERSION_STRING_AMD 0x1F02\r
-#define WGL_GPU_FASTEST_TARGET_GPUS_AMD 0x21A2\r
-#define WGL_GPU_RAM_AMD 0x21A3\r
-#define WGL_GPU_CLOCK_AMD 0x21A4\r
-#define WGL_GPU_NUM_PIPES_AMD 0x21A5\r
-#define WGL_GPU_NUM_SIMD_AMD 0x21A6\r
-#define WGL_GPU_NUM_RB_AMD 0x21A7\r
-#define WGL_GPU_NUM_SPI_AMD 0x21A8\r
-\r
-typedef VOID (WINAPI * PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC) (HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);\r
-typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC) (UINT id);\r
-typedef HGLRC (WINAPI * PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC) (UINT id, HGLRC hShareContext, const int* attribList);\r
-typedef BOOL (WINAPI * PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC) (HGLRC hglrc);\r
-typedef UINT (WINAPI * PFNWGLGETCONTEXTGPUIDAMDPROC) (HGLRC hglrc);\r
-typedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);\r
-typedef UINT (WINAPI * PFNWGLGETGPUIDSAMDPROC) (UINT maxCount, UINT* ids);\r
-typedef INT (WINAPI * PFNWGLGETGPUINFOAMDPROC) (UINT id, INT property, GLenum dataType, UINT size, void* data);\r
-typedef BOOL (WINAPI * PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC) (HGLRC hglrc);\r
-\r
-#define wglBlitContextFramebufferAMD WGLEW_GET_FUN(__wglewBlitContextFramebufferAMD)\r
-#define wglCreateAssociatedContextAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAMD)\r
-#define wglCreateAssociatedContextAttribsAMD WGLEW_GET_FUN(__wglewCreateAssociatedContextAttribsAMD)\r
-#define wglDeleteAssociatedContextAMD WGLEW_GET_FUN(__wglewDeleteAssociatedContextAMD)\r
-#define wglGetContextGPUIDAMD WGLEW_GET_FUN(__wglewGetContextGPUIDAMD)\r
-#define wglGetCurrentAssociatedContextAMD WGLEW_GET_FUN(__wglewGetCurrentAssociatedContextAMD)\r
-#define wglGetGPUIDsAMD WGLEW_GET_FUN(__wglewGetGPUIDsAMD)\r
-#define wglGetGPUInfoAMD WGLEW_GET_FUN(__wglewGetGPUInfoAMD)\r
-#define wglMakeAssociatedContextCurrentAMD WGLEW_GET_FUN(__wglewMakeAssociatedContextCurrentAMD)\r
-\r
-#define WGLEW_AMD_gpu_association WGLEW_GET_VAR(__WGLEW_AMD_gpu_association)\r
-\r
-#endif /* WGL_AMD_gpu_association */\r
-\r
-/* ------------------------- WGL_ARB_buffer_region ------------------------- */\r
-\r
-#ifndef WGL_ARB_buffer_region\r
-#define WGL_ARB_buffer_region 1\r
-\r
-#define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001\r
-#define WGL_BACK_COLOR_BUFFER_BIT_ARB 0x00000002\r
-#define WGL_DEPTH_BUFFER_BIT_ARB 0x00000004\r
-#define WGL_STENCIL_BUFFER_BIT_ARB 0x00000008\r
-\r
-typedef HANDLE (WINAPI * PFNWGLCREATEBUFFERREGIONARBPROC) (HDC hDC, int iLayerPlane, UINT uType);\r
-typedef VOID (WINAPI * PFNWGLDELETEBUFFERREGIONARBPROC) (HANDLE hRegion);\r
-typedef BOOL (WINAPI * PFNWGLRESTOREBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height, int xSrc, int ySrc);\r
-typedef BOOL (WINAPI * PFNWGLSAVEBUFFERREGIONARBPROC) (HANDLE hRegion, int x, int y, int width, int height);\r
-\r
-#define wglCreateBufferRegionARB WGLEW_GET_FUN(__wglewCreateBufferRegionARB)\r
-#define wglDeleteBufferRegionARB WGLEW_GET_FUN(__wglewDeleteBufferRegionARB)\r
-#define wglRestoreBufferRegionARB WGLEW_GET_FUN(__wglewRestoreBufferRegionARB)\r
-#define wglSaveBufferRegionARB WGLEW_GET_FUN(__wglewSaveBufferRegionARB)\r
-\r
-#define WGLEW_ARB_buffer_region WGLEW_GET_VAR(__WGLEW_ARB_buffer_region)\r
-\r
-#endif /* WGL_ARB_buffer_region */\r
-\r
-/* ------------------------- WGL_ARB_create_context ------------------------ */\r
-\r
-#ifndef WGL_ARB_create_context\r
-#define WGL_ARB_create_context 1\r
-\r
-#define WGL_CONTEXT_DEBUG_BIT_ARB 0x0001\r
-#define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002\r
-#define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091\r
-#define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092\r
-#define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093\r
-#define WGL_CONTEXT_FLAGS_ARB 0x2094\r
-#define ERROR_INVALID_VERSION_ARB 0x2095\r
-#define ERROR_INVALID_PROFILE_ARB 0x2096\r
-\r
-typedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGLRC hShareContext, const int* attribList);\r
-\r
-#define wglCreateContextAttribsARB WGLEW_GET_FUN(__wglewCreateContextAttribsARB)\r
-\r
-#define WGLEW_ARB_create_context WGLEW_GET_VAR(__WGLEW_ARB_create_context)\r
-\r
-#endif /* WGL_ARB_create_context */\r
-\r
-/* --------------------- WGL_ARB_create_context_profile -------------------- */\r
-\r
-#ifndef WGL_ARB_create_context_profile\r
-#define WGL_ARB_create_context_profile 1\r
-\r
-#define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001\r
-#define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002\r
-#define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126\r
-\r
-#define WGLEW_ARB_create_context_profile WGLEW_GET_VAR(__WGLEW_ARB_create_context_profile)\r
-\r
-#endif /* WGL_ARB_create_context_profile */\r
-\r
-/* ------------------- WGL_ARB_create_context_robustness ------------------- */\r
-\r
-#ifndef WGL_ARB_create_context_robustness\r
-#define WGL_ARB_create_context_robustness 1\r
-\r
-#define WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB 0x00000004\r
-#define WGL_LOSE_CONTEXT_ON_RESET_ARB 0x8252\r
-#define WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB 0x8256\r
-#define WGL_NO_RESET_NOTIFICATION_ARB 0x8261\r
-\r
-#define WGLEW_ARB_create_context_robustness WGLEW_GET_VAR(__WGLEW_ARB_create_context_robustness)\r
-\r
-#endif /* WGL_ARB_create_context_robustness */\r
-\r
-/* ----------------------- WGL_ARB_extensions_string ----------------------- */\r
-\r
-#ifndef WGL_ARB_extensions_string\r
-#define WGL_ARB_extensions_string 1\r
-\r
-typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc);\r
-\r
-#define wglGetExtensionsStringARB WGLEW_GET_FUN(__wglewGetExtensionsStringARB)\r
-\r
-#define WGLEW_ARB_extensions_string WGLEW_GET_VAR(__WGLEW_ARB_extensions_string)\r
-\r
-#endif /* WGL_ARB_extensions_string */\r
-\r
-/* ------------------------ WGL_ARB_framebuffer_sRGB ----------------------- */\r
-\r
-#ifndef WGL_ARB_framebuffer_sRGB\r
-#define WGL_ARB_framebuffer_sRGB 1\r
-\r
-#define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9\r
-\r
-#define WGLEW_ARB_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_ARB_framebuffer_sRGB)\r
-\r
-#endif /* WGL_ARB_framebuffer_sRGB */\r
-\r
-/* ----------------------- WGL_ARB_make_current_read ----------------------- */\r
-\r
-#ifndef WGL_ARB_make_current_read\r
-#define WGL_ARB_make_current_read 1\r
-\r
-#define ERROR_INVALID_PIXEL_TYPE_ARB 0x2043\r
-#define ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB 0x2054\r
-\r
-typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCARBPROC) (VOID);\r
-typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTARBPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);\r
-\r
-#define wglGetCurrentReadDCARB WGLEW_GET_FUN(__wglewGetCurrentReadDCARB)\r
-#define wglMakeContextCurrentARB WGLEW_GET_FUN(__wglewMakeContextCurrentARB)\r
-\r
-#define WGLEW_ARB_make_current_read WGLEW_GET_VAR(__WGLEW_ARB_make_current_read)\r
-\r
-#endif /* WGL_ARB_make_current_read */\r
-\r
-/* -------------------------- WGL_ARB_multisample -------------------------- */\r
-\r
-#ifndef WGL_ARB_multisample\r
-#define WGL_ARB_multisample 1\r
-\r
-#define WGL_SAMPLE_BUFFERS_ARB 0x2041\r
-#define WGL_SAMPLES_ARB 0x2042\r
-\r
-#define WGLEW_ARB_multisample WGLEW_GET_VAR(__WGLEW_ARB_multisample)\r
-\r
-#endif /* WGL_ARB_multisample */\r
-\r
-/* ---------------------------- WGL_ARB_pbuffer ---------------------------- */\r
-\r
-#ifndef WGL_ARB_pbuffer\r
-#define WGL_ARB_pbuffer 1\r
-\r
-#define WGL_DRAW_TO_PBUFFER_ARB 0x202D\r
-#define WGL_MAX_PBUFFER_PIXELS_ARB 0x202E\r
-#define WGL_MAX_PBUFFER_WIDTH_ARB 0x202F\r
-#define WGL_MAX_PBUFFER_HEIGHT_ARB 0x2030\r
-#define WGL_PBUFFER_LARGEST_ARB 0x2033\r
-#define WGL_PBUFFER_WIDTH_ARB 0x2034\r
-#define WGL_PBUFFER_HEIGHT_ARB 0x2035\r
-#define WGL_PBUFFER_LOST_ARB 0x2036\r
-\r
-DECLARE_HANDLE(HPBUFFERARB);\r
-\r
-typedef HPBUFFERARB (WINAPI * PFNWGLCREATEPBUFFERARBPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);\r
-typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFERARBPROC) (HPBUFFERARB hPbuffer);\r
-typedef HDC (WINAPI * PFNWGLGETPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer);\r
-typedef BOOL (WINAPI * PFNWGLQUERYPBUFFERARBPROC) (HPBUFFERARB hPbuffer, int iAttribute, int* piValue);\r
-typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCARBPROC) (HPBUFFERARB hPbuffer, HDC hDC);\r
-\r
-#define wglCreatePbufferARB WGLEW_GET_FUN(__wglewCreatePbufferARB)\r
-#define wglDestroyPbufferARB WGLEW_GET_FUN(__wglewDestroyPbufferARB)\r
-#define wglGetPbufferDCARB WGLEW_GET_FUN(__wglewGetPbufferDCARB)\r
-#define wglQueryPbufferARB WGLEW_GET_FUN(__wglewQueryPbufferARB)\r
-#define wglReleasePbufferDCARB WGLEW_GET_FUN(__wglewReleasePbufferDCARB)\r
-\r
-#define WGLEW_ARB_pbuffer WGLEW_GET_VAR(__WGLEW_ARB_pbuffer)\r
-\r
-#endif /* WGL_ARB_pbuffer */\r
-\r
-/* -------------------------- WGL_ARB_pixel_format ------------------------- */\r
-\r
-#ifndef WGL_ARB_pixel_format\r
-#define WGL_ARB_pixel_format 1\r
-\r
-#define WGL_NUMBER_PIXEL_FORMATS_ARB 0x2000\r
-#define WGL_DRAW_TO_WINDOW_ARB 0x2001\r
-#define WGL_DRAW_TO_BITMAP_ARB 0x2002\r
-#define WGL_ACCELERATION_ARB 0x2003\r
-#define WGL_NEED_PALETTE_ARB 0x2004\r
-#define WGL_NEED_SYSTEM_PALETTE_ARB 0x2005\r
-#define WGL_SWAP_LAYER_BUFFERS_ARB 0x2006\r
-#define WGL_SWAP_METHOD_ARB 0x2007\r
-#define WGL_NUMBER_OVERLAYS_ARB 0x2008\r
-#define WGL_NUMBER_UNDERLAYS_ARB 0x2009\r
-#define WGL_TRANSPARENT_ARB 0x200A\r
-#define WGL_SHARE_DEPTH_ARB 0x200C\r
-#define WGL_SHARE_STENCIL_ARB 0x200D\r
-#define WGL_SHARE_ACCUM_ARB 0x200E\r
-#define WGL_SUPPORT_GDI_ARB 0x200F\r
-#define WGL_SUPPORT_OPENGL_ARB 0x2010\r
-#define WGL_DOUBLE_BUFFER_ARB 0x2011\r
-#define WGL_STEREO_ARB 0x2012\r
-#define WGL_PIXEL_TYPE_ARB 0x2013\r
-#define WGL_COLOR_BITS_ARB 0x2014\r
-#define WGL_RED_BITS_ARB 0x2015\r
-#define WGL_RED_SHIFT_ARB 0x2016\r
-#define WGL_GREEN_BITS_ARB 0x2017\r
-#define WGL_GREEN_SHIFT_ARB 0x2018\r
-#define WGL_BLUE_BITS_ARB 0x2019\r
-#define WGL_BLUE_SHIFT_ARB 0x201A\r
-#define WGL_ALPHA_BITS_ARB 0x201B\r
-#define WGL_ALPHA_SHIFT_ARB 0x201C\r
-#define WGL_ACCUM_BITS_ARB 0x201D\r
-#define WGL_ACCUM_RED_BITS_ARB 0x201E\r
-#define WGL_ACCUM_GREEN_BITS_ARB 0x201F\r
-#define WGL_ACCUM_BLUE_BITS_ARB 0x2020\r
-#define WGL_ACCUM_ALPHA_BITS_ARB 0x2021\r
-#define WGL_DEPTH_BITS_ARB 0x2022\r
-#define WGL_STENCIL_BITS_ARB 0x2023\r
-#define WGL_AUX_BUFFERS_ARB 0x2024\r
-#define WGL_NO_ACCELERATION_ARB 0x2025\r
-#define WGL_GENERIC_ACCELERATION_ARB 0x2026\r
-#define WGL_FULL_ACCELERATION_ARB 0x2027\r
-#define WGL_SWAP_EXCHANGE_ARB 0x2028\r
-#define WGL_SWAP_COPY_ARB 0x2029\r
-#define WGL_SWAP_UNDEFINED_ARB 0x202A\r
-#define WGL_TYPE_RGBA_ARB 0x202B\r
-#define WGL_TYPE_COLORINDEX_ARB 0x202C\r
-#define WGL_TRANSPARENT_RED_VALUE_ARB 0x2037\r
-#define WGL_TRANSPARENT_GREEN_VALUE_ARB 0x2038\r
-#define WGL_TRANSPARENT_BLUE_VALUE_ARB 0x2039\r
-#define WGL_TRANSPARENT_ALPHA_VALUE_ARB 0x203A\r
-#define WGL_TRANSPARENT_INDEX_VALUE_ARB 0x203B\r
-\r
-typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);\r
-typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, FLOAT *pfValues);\r
-typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVARBPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int* piAttributes, int *piValues);\r
-\r
-#define wglChoosePixelFormatARB WGLEW_GET_FUN(__wglewChoosePixelFormatARB)\r
-#define wglGetPixelFormatAttribfvARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvARB)\r
-#define wglGetPixelFormatAttribivARB WGLEW_GET_FUN(__wglewGetPixelFormatAttribivARB)\r
-\r
-#define WGLEW_ARB_pixel_format WGLEW_GET_VAR(__WGLEW_ARB_pixel_format)\r
-\r
-#endif /* WGL_ARB_pixel_format */\r
-\r
-/* ----------------------- WGL_ARB_pixel_format_float ---------------------- */\r
-\r
-#ifndef WGL_ARB_pixel_format_float\r
-#define WGL_ARB_pixel_format_float 1\r
-\r
-#define WGL_TYPE_RGBA_FLOAT_ARB 0x21A0\r
-\r
-#define WGLEW_ARB_pixel_format_float WGLEW_GET_VAR(__WGLEW_ARB_pixel_format_float)\r
-\r
-#endif /* WGL_ARB_pixel_format_float */\r
-\r
-/* ------------------------- WGL_ARB_render_texture ------------------------ */\r
-\r
-#ifndef WGL_ARB_render_texture\r
-#define WGL_ARB_render_texture 1\r
-\r
-#define WGL_BIND_TO_TEXTURE_RGB_ARB 0x2070\r
-#define WGL_BIND_TO_TEXTURE_RGBA_ARB 0x2071\r
-#define WGL_TEXTURE_FORMAT_ARB 0x2072\r
-#define WGL_TEXTURE_TARGET_ARB 0x2073\r
-#define WGL_MIPMAP_TEXTURE_ARB 0x2074\r
-#define WGL_TEXTURE_RGB_ARB 0x2075\r
-#define WGL_TEXTURE_RGBA_ARB 0x2076\r
-#define WGL_NO_TEXTURE_ARB 0x2077\r
-#define WGL_TEXTURE_CUBE_MAP_ARB 0x2078\r
-#define WGL_TEXTURE_1D_ARB 0x2079\r
-#define WGL_TEXTURE_2D_ARB 0x207A\r
-#define WGL_MIPMAP_LEVEL_ARB 0x207B\r
-#define WGL_CUBE_MAP_FACE_ARB 0x207C\r
-#define WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB 0x207D\r
-#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB 0x207E\r
-#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB 0x207F\r
-#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB 0x2080\r
-#define WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB 0x2081\r
-#define WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB 0x2082\r
-#define WGL_FRONT_LEFT_ARB 0x2083\r
-#define WGL_FRONT_RIGHT_ARB 0x2084\r
-#define WGL_BACK_LEFT_ARB 0x2085\r
-#define WGL_BACK_RIGHT_ARB 0x2086\r
-#define WGL_AUX0_ARB 0x2087\r
-#define WGL_AUX1_ARB 0x2088\r
-#define WGL_AUX2_ARB 0x2089\r
-#define WGL_AUX3_ARB 0x208A\r
-#define WGL_AUX4_ARB 0x208B\r
-#define WGL_AUX5_ARB 0x208C\r
-#define WGL_AUX6_ARB 0x208D\r
-#define WGL_AUX7_ARB 0x208E\r
-#define WGL_AUX8_ARB 0x208F\r
-#define WGL_AUX9_ARB 0x2090\r
-\r
-typedef BOOL (WINAPI * PFNWGLBINDTEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);\r
-typedef BOOL (WINAPI * PFNWGLRELEASETEXIMAGEARBPROC) (HPBUFFERARB hPbuffer, int iBuffer);\r
-typedef BOOL (WINAPI * PFNWGLSETPBUFFERATTRIBARBPROC) (HPBUFFERARB hPbuffer, const int* piAttribList);\r
-\r
-#define wglBindTexImageARB WGLEW_GET_FUN(__wglewBindTexImageARB)\r
-#define wglReleaseTexImageARB WGLEW_GET_FUN(__wglewReleaseTexImageARB)\r
-#define wglSetPbufferAttribARB WGLEW_GET_FUN(__wglewSetPbufferAttribARB)\r
-\r
-#define WGLEW_ARB_render_texture WGLEW_GET_VAR(__WGLEW_ARB_render_texture)\r
-\r
-#endif /* WGL_ARB_render_texture */\r
-\r
-/* ----------------------- WGL_ATI_pixel_format_float ---------------------- */\r
-\r
-#ifndef WGL_ATI_pixel_format_float\r
-#define WGL_ATI_pixel_format_float 1\r
-\r
-#define WGL_TYPE_RGBA_FLOAT_ATI 0x21A0\r
-#define GL_RGBA_FLOAT_MODE_ATI 0x8820\r
-#define GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI 0x8835\r
-\r
-#define WGLEW_ATI_pixel_format_float WGLEW_GET_VAR(__WGLEW_ATI_pixel_format_float)\r
-\r
-#endif /* WGL_ATI_pixel_format_float */\r
-\r
-/* -------------------- WGL_ATI_render_texture_rectangle ------------------- */\r
-\r
-#ifndef WGL_ATI_render_texture_rectangle\r
-#define WGL_ATI_render_texture_rectangle 1\r
-\r
-#define WGL_TEXTURE_RECTANGLE_ATI 0x21A5\r
-\r
-#define WGLEW_ATI_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_ATI_render_texture_rectangle)\r
-\r
-#endif /* WGL_ATI_render_texture_rectangle */\r
-\r
-/* ------------------- WGL_EXT_create_context_es2_profile ------------------ */\r
-\r
-#ifndef WGL_EXT_create_context_es2_profile\r
-#define WGL_EXT_create_context_es2_profile 1\r
-\r
-#define WGL_CONTEXT_ES2_PROFILE_BIT_EXT 0x00000004\r
-\r
-#define WGLEW_EXT_create_context_es2_profile WGLEW_GET_VAR(__WGLEW_EXT_create_context_es2_profile)\r
-\r
-#endif /* WGL_EXT_create_context_es2_profile */\r
-\r
-/* -------------------------- WGL_EXT_depth_float -------------------------- */\r
-\r
-#ifndef WGL_EXT_depth_float\r
-#define WGL_EXT_depth_float 1\r
-\r
-#define WGL_DEPTH_FLOAT_EXT 0x2040\r
-\r
-#define WGLEW_EXT_depth_float WGLEW_GET_VAR(__WGLEW_EXT_depth_float)\r
-\r
-#endif /* WGL_EXT_depth_float */\r
-\r
-/* ---------------------- WGL_EXT_display_color_table ---------------------- */\r
-\r
-#ifndef WGL_EXT_display_color_table\r
-#define WGL_EXT_display_color_table 1\r
-\r
-typedef GLboolean (WINAPI * PFNWGLBINDDISPLAYCOLORTABLEEXTPROC) (GLushort id);\r
-typedef GLboolean (WINAPI * PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC) (GLushort id);\r
-typedef void (WINAPI * PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC) (GLushort id);\r
-typedef GLboolean (WINAPI * PFNWGLLOADDISPLAYCOLORTABLEEXTPROC) (GLushort* table, GLuint length);\r
-\r
-#define wglBindDisplayColorTableEXT WGLEW_GET_FUN(__wglewBindDisplayColorTableEXT)\r
-#define wglCreateDisplayColorTableEXT WGLEW_GET_FUN(__wglewCreateDisplayColorTableEXT)\r
-#define wglDestroyDisplayColorTableEXT WGLEW_GET_FUN(__wglewDestroyDisplayColorTableEXT)\r
-#define wglLoadDisplayColorTableEXT WGLEW_GET_FUN(__wglewLoadDisplayColorTableEXT)\r
-\r
-#define WGLEW_EXT_display_color_table WGLEW_GET_VAR(__WGLEW_EXT_display_color_table)\r
-\r
-#endif /* WGL_EXT_display_color_table */\r
-\r
-/* ----------------------- WGL_EXT_extensions_string ----------------------- */\r
-\r
-#ifndef WGL_EXT_extensions_string\r
-#define WGL_EXT_extensions_string 1\r
-\r
-typedef const char* (WINAPI * PFNWGLGETEXTENSIONSSTRINGEXTPROC) (void);\r
-\r
-#define wglGetExtensionsStringEXT WGLEW_GET_FUN(__wglewGetExtensionsStringEXT)\r
-\r
-#define WGLEW_EXT_extensions_string WGLEW_GET_VAR(__WGLEW_EXT_extensions_string)\r
-\r
-#endif /* WGL_EXT_extensions_string */\r
-\r
-/* ------------------------ WGL_EXT_framebuffer_sRGB ----------------------- */\r
-\r
-#ifndef WGL_EXT_framebuffer_sRGB\r
-#define WGL_EXT_framebuffer_sRGB 1\r
-\r
-#define WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT 0x20A9\r
-\r
-#define WGLEW_EXT_framebuffer_sRGB WGLEW_GET_VAR(__WGLEW_EXT_framebuffer_sRGB)\r
-\r
-#endif /* WGL_EXT_framebuffer_sRGB */\r
-\r
-/* ----------------------- WGL_EXT_make_current_read ----------------------- */\r
-\r
-#ifndef WGL_EXT_make_current_read\r
-#define WGL_EXT_make_current_read 1\r
-\r
-#define ERROR_INVALID_PIXEL_TYPE_EXT 0x2043\r
-\r
-typedef HDC (WINAPI * PFNWGLGETCURRENTREADDCEXTPROC) (VOID);\r
-typedef BOOL (WINAPI * PFNWGLMAKECONTEXTCURRENTEXTPROC) (HDC hDrawDC, HDC hReadDC, HGLRC hglrc);\r
-\r
-#define wglGetCurrentReadDCEXT WGLEW_GET_FUN(__wglewGetCurrentReadDCEXT)\r
-#define wglMakeContextCurrentEXT WGLEW_GET_FUN(__wglewMakeContextCurrentEXT)\r
-\r
-#define WGLEW_EXT_make_current_read WGLEW_GET_VAR(__WGLEW_EXT_make_current_read)\r
-\r
-#endif /* WGL_EXT_make_current_read */\r
-\r
-/* -------------------------- WGL_EXT_multisample -------------------------- */\r
-\r
-#ifndef WGL_EXT_multisample\r
-#define WGL_EXT_multisample 1\r
-\r
-#define WGL_SAMPLE_BUFFERS_EXT 0x2041\r
-#define WGL_SAMPLES_EXT 0x2042\r
-\r
-#define WGLEW_EXT_multisample WGLEW_GET_VAR(__WGLEW_EXT_multisample)\r
-\r
-#endif /* WGL_EXT_multisample */\r
-\r
-/* ---------------------------- WGL_EXT_pbuffer ---------------------------- */\r
-\r
-#ifndef WGL_EXT_pbuffer\r
-#define WGL_EXT_pbuffer 1\r
-\r
-#define WGL_DRAW_TO_PBUFFER_EXT 0x202D\r
-#define WGL_MAX_PBUFFER_PIXELS_EXT 0x202E\r
-#define WGL_MAX_PBUFFER_WIDTH_EXT 0x202F\r
-#define WGL_MAX_PBUFFER_HEIGHT_EXT 0x2030\r
-#define WGL_OPTIMAL_PBUFFER_WIDTH_EXT 0x2031\r
-#define WGL_OPTIMAL_PBUFFER_HEIGHT_EXT 0x2032\r
-#define WGL_PBUFFER_LARGEST_EXT 0x2033\r
-#define WGL_PBUFFER_WIDTH_EXT 0x2034\r
-#define WGL_PBUFFER_HEIGHT_EXT 0x2035\r
-\r
-DECLARE_HANDLE(HPBUFFEREXT);\r
-\r
-typedef HPBUFFEREXT (WINAPI * PFNWGLCREATEPBUFFEREXTPROC) (HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int* piAttribList);\r
-typedef BOOL (WINAPI * PFNWGLDESTROYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer);\r
-typedef HDC (WINAPI * PFNWGLGETPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer);\r
-typedef BOOL (WINAPI * PFNWGLQUERYPBUFFEREXTPROC) (HPBUFFEREXT hPbuffer, int iAttribute, int* piValue);\r
-typedef int (WINAPI * PFNWGLRELEASEPBUFFERDCEXTPROC) (HPBUFFEREXT hPbuffer, HDC hDC);\r
-\r
-#define wglCreatePbufferEXT WGLEW_GET_FUN(__wglewCreatePbufferEXT)\r
-#define wglDestroyPbufferEXT WGLEW_GET_FUN(__wglewDestroyPbufferEXT)\r
-#define wglGetPbufferDCEXT WGLEW_GET_FUN(__wglewGetPbufferDCEXT)\r
-#define wglQueryPbufferEXT WGLEW_GET_FUN(__wglewQueryPbufferEXT)\r
-#define wglReleasePbufferDCEXT WGLEW_GET_FUN(__wglewReleasePbufferDCEXT)\r
-\r
-#define WGLEW_EXT_pbuffer WGLEW_GET_VAR(__WGLEW_EXT_pbuffer)\r
-\r
-#endif /* WGL_EXT_pbuffer */\r
-\r
-/* -------------------------- WGL_EXT_pixel_format ------------------------- */\r
-\r
-#ifndef WGL_EXT_pixel_format\r
-#define WGL_EXT_pixel_format 1\r
-\r
-#define WGL_NUMBER_PIXEL_FORMATS_EXT 0x2000\r
-#define WGL_DRAW_TO_WINDOW_EXT 0x2001\r
-#define WGL_DRAW_TO_BITMAP_EXT 0x2002\r
-#define WGL_ACCELERATION_EXT 0x2003\r
-#define WGL_NEED_PALETTE_EXT 0x2004\r
-#define WGL_NEED_SYSTEM_PALETTE_EXT 0x2005\r
-#define WGL_SWAP_LAYER_BUFFERS_EXT 0x2006\r
-#define WGL_SWAP_METHOD_EXT 0x2007\r
-#define WGL_NUMBER_OVERLAYS_EXT 0x2008\r
-#define WGL_NUMBER_UNDERLAYS_EXT 0x2009\r
-#define WGL_TRANSPARENT_EXT 0x200A\r
-#define WGL_TRANSPARENT_VALUE_EXT 0x200B\r
-#define WGL_SHARE_DEPTH_EXT 0x200C\r
-#define WGL_SHARE_STENCIL_EXT 0x200D\r
-#define WGL_SHARE_ACCUM_EXT 0x200E\r
-#define WGL_SUPPORT_GDI_EXT 0x200F\r
-#define WGL_SUPPORT_OPENGL_EXT 0x2010\r
-#define WGL_DOUBLE_BUFFER_EXT 0x2011\r
-#define WGL_STEREO_EXT 0x2012\r
-#define WGL_PIXEL_TYPE_EXT 0x2013\r
-#define WGL_COLOR_BITS_EXT 0x2014\r
-#define WGL_RED_BITS_EXT 0x2015\r
-#define WGL_RED_SHIFT_EXT 0x2016\r
-#define WGL_GREEN_BITS_EXT 0x2017\r
-#define WGL_GREEN_SHIFT_EXT 0x2018\r
-#define WGL_BLUE_BITS_EXT 0x2019\r
-#define WGL_BLUE_SHIFT_EXT 0x201A\r
-#define WGL_ALPHA_BITS_EXT 0x201B\r
-#define WGL_ALPHA_SHIFT_EXT 0x201C\r
-#define WGL_ACCUM_BITS_EXT 0x201D\r
-#define WGL_ACCUM_RED_BITS_EXT 0x201E\r
-#define WGL_ACCUM_GREEN_BITS_EXT 0x201F\r
-#define WGL_ACCUM_BLUE_BITS_EXT 0x2020\r
-#define WGL_ACCUM_ALPHA_BITS_EXT 0x2021\r
-#define WGL_DEPTH_BITS_EXT 0x2022\r
-#define WGL_STENCIL_BITS_EXT 0x2023\r
-#define WGL_AUX_BUFFERS_EXT 0x2024\r
-#define WGL_NO_ACCELERATION_EXT 0x2025\r
-#define WGL_GENERIC_ACCELERATION_EXT 0x2026\r
-#define WGL_FULL_ACCELERATION_EXT 0x2027\r
-#define WGL_SWAP_EXCHANGE_EXT 0x2028\r
-#define WGL_SWAP_COPY_EXT 0x2029\r
-#define WGL_SWAP_UNDEFINED_EXT 0x202A\r
-#define WGL_TYPE_RGBA_EXT 0x202B\r
-#define WGL_TYPE_COLORINDEX_EXT 0x202C\r
-\r
-typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATEXTPROC) (HDC hdc, const int* piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);\r
-typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBFVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, FLOAT *pfValues);\r
-typedef BOOL (WINAPI * PFNWGLGETPIXELFORMATATTRIBIVEXTPROC) (HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, int* piAttributes, int *piValues);\r
-\r
-#define wglChoosePixelFormatEXT WGLEW_GET_FUN(__wglewChoosePixelFormatEXT)\r
-#define wglGetPixelFormatAttribfvEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribfvEXT)\r
-#define wglGetPixelFormatAttribivEXT WGLEW_GET_FUN(__wglewGetPixelFormatAttribivEXT)\r
-\r
-#define WGLEW_EXT_pixel_format WGLEW_GET_VAR(__WGLEW_EXT_pixel_format)\r
-\r
-#endif /* WGL_EXT_pixel_format */\r
-\r
-/* ------------------- WGL_EXT_pixel_format_packed_float ------------------- */\r
-\r
-#ifndef WGL_EXT_pixel_format_packed_float\r
-#define WGL_EXT_pixel_format_packed_float 1\r
-\r
-#define WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT 0x20A8\r
-\r
-#define WGLEW_EXT_pixel_format_packed_float WGLEW_GET_VAR(__WGLEW_EXT_pixel_format_packed_float)\r
-\r
-#endif /* WGL_EXT_pixel_format_packed_float */\r
-\r
-/* -------------------------- WGL_EXT_swap_control ------------------------- */\r
-\r
-#ifndef WGL_EXT_swap_control\r
-#define WGL_EXT_swap_control 1\r
-\r
-typedef int (WINAPI * PFNWGLGETSWAPINTERVALEXTPROC) (void);\r
-typedef BOOL (WINAPI * PFNWGLSWAPINTERVALEXTPROC) (int interval);\r
-\r
-#define wglGetSwapIntervalEXT WGLEW_GET_FUN(__wglewGetSwapIntervalEXT)\r
-#define wglSwapIntervalEXT WGLEW_GET_FUN(__wglewSwapIntervalEXT)\r
-\r
-#define WGLEW_EXT_swap_control WGLEW_GET_VAR(__WGLEW_EXT_swap_control)\r
-\r
-#endif /* WGL_EXT_swap_control */\r
-\r
-/* --------------------- WGL_I3D_digital_video_control --------------------- */\r
-\r
-#ifndef WGL_I3D_digital_video_control\r
-#define WGL_I3D_digital_video_control 1\r
-\r
-#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D 0x2050\r
-#define WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D 0x2051\r
-#define WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D 0x2052\r
-#define WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D 0x2053\r
-\r
-typedef BOOL (WINAPI * PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);\r
-typedef BOOL (WINAPI * PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);\r
-\r
-#define wglGetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewGetDigitalVideoParametersI3D)\r
-#define wglSetDigitalVideoParametersI3D WGLEW_GET_FUN(__wglewSetDigitalVideoParametersI3D)\r
-\r
-#define WGLEW_I3D_digital_video_control WGLEW_GET_VAR(__WGLEW_I3D_digital_video_control)\r
-\r
-#endif /* WGL_I3D_digital_video_control */\r
-\r
-/* ----------------------------- WGL_I3D_gamma ----------------------------- */\r
-\r
-#ifndef WGL_I3D_gamma\r
-#define WGL_I3D_gamma 1\r
-\r
-#define WGL_GAMMA_TABLE_SIZE_I3D 0x204E\r
-#define WGL_GAMMA_EXCLUDE_DESKTOP_I3D 0x204F\r
-\r
-typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, USHORT* puRed, USHORT *puGreen, USHORT *puBlue);\r
-typedef BOOL (WINAPI * PFNWGLGETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, int* piValue);\r
-typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEI3DPROC) (HDC hDC, int iEntries, const USHORT* puRed, const USHORT *puGreen, const USHORT *puBlue);\r
-typedef BOOL (WINAPI * PFNWGLSETGAMMATABLEPARAMETERSI3DPROC) (HDC hDC, int iAttribute, const int* piValue);\r
-\r
-#define wglGetGammaTableI3D WGLEW_GET_FUN(__wglewGetGammaTableI3D)\r
-#define wglGetGammaTableParametersI3D WGLEW_GET_FUN(__wglewGetGammaTableParametersI3D)\r
-#define wglSetGammaTableI3D WGLEW_GET_FUN(__wglewSetGammaTableI3D)\r
-#define wglSetGammaTableParametersI3D WGLEW_GET_FUN(__wglewSetGammaTableParametersI3D)\r
-\r
-#define WGLEW_I3D_gamma WGLEW_GET_VAR(__WGLEW_I3D_gamma)\r
-\r
-#endif /* WGL_I3D_gamma */\r
-\r
-/* ---------------------------- WGL_I3D_genlock ---------------------------- */\r
-\r
-#ifndef WGL_I3D_genlock\r
-#define WGL_I3D_genlock 1\r
-\r
-#define WGL_GENLOCK_SOURCE_MULTIVIEW_I3D 0x2044\r
-#define WGL_GENLOCK_SOURCE_EXTERNAL_SYNC_I3D 0x2045\r
-#define WGL_GENLOCK_SOURCE_EXTERNAL_FIELD_I3D 0x2046\r
-#define WGL_GENLOCK_SOURCE_EXTERNAL_TTL_I3D 0x2047\r
-#define WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D 0x2048\r
-#define WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D 0x2049\r
-#define WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D 0x204A\r
-#define WGL_GENLOCK_SOURCE_EDGE_RISING_I3D 0x204B\r
-#define WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D 0x204C\r
-\r
-typedef BOOL (WINAPI * PFNWGLDISABLEGENLOCKI3DPROC) (HDC hDC);\r
-typedef BOOL (WINAPI * PFNWGLENABLEGENLOCKI3DPROC) (HDC hDC);\r
-typedef BOOL (WINAPI * PFNWGLGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT uRate);\r
-typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT uDelay);\r
-typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT uEdge);\r
-typedef BOOL (WINAPI * PFNWGLGENLOCKSOURCEI3DPROC) (HDC hDC, UINT uSource);\r
-typedef BOOL (WINAPI * PFNWGLGETGENLOCKSAMPLERATEI3DPROC) (HDC hDC, UINT* uRate);\r
-typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEDELAYI3DPROC) (HDC hDC, UINT* uDelay);\r
-typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEEDGEI3DPROC) (HDC hDC, UINT* uEdge);\r
-typedef BOOL (WINAPI * PFNWGLGETGENLOCKSOURCEI3DPROC) (HDC hDC, UINT* uSource);\r
-typedef BOOL (WINAPI * PFNWGLISENABLEDGENLOCKI3DPROC) (HDC hDC, BOOL* pFlag);\r
-typedef BOOL (WINAPI * PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC) (HDC hDC, UINT* uMaxLineDelay, UINT *uMaxPixelDelay);\r
-\r
-#define wglDisableGenlockI3D WGLEW_GET_FUN(__wglewDisableGenlockI3D)\r
-#define wglEnableGenlockI3D WGLEW_GET_FUN(__wglewEnableGenlockI3D)\r
-#define wglGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGenlockSampleRateI3D)\r
-#define wglGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGenlockSourceDelayI3D)\r
-#define wglGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGenlockSourceEdgeI3D)\r
-#define wglGenlockSourceI3D WGLEW_GET_FUN(__wglewGenlockSourceI3D)\r
-#define wglGetGenlockSampleRateI3D WGLEW_GET_FUN(__wglewGetGenlockSampleRateI3D)\r
-#define wglGetGenlockSourceDelayI3D WGLEW_GET_FUN(__wglewGetGenlockSourceDelayI3D)\r
-#define wglGetGenlockSourceEdgeI3D WGLEW_GET_FUN(__wglewGetGenlockSourceEdgeI3D)\r
-#define wglGetGenlockSourceI3D WGLEW_GET_FUN(__wglewGetGenlockSourceI3D)\r
-#define wglIsEnabledGenlockI3D WGLEW_GET_FUN(__wglewIsEnabledGenlockI3D)\r
-#define wglQueryGenlockMaxSourceDelayI3D WGLEW_GET_FUN(__wglewQueryGenlockMaxSourceDelayI3D)\r
-\r
-#define WGLEW_I3D_genlock WGLEW_GET_VAR(__WGLEW_I3D_genlock)\r
-\r
-#endif /* WGL_I3D_genlock */\r
-\r
-/* -------------------------- WGL_I3D_image_buffer ------------------------- */\r
-\r
-#ifndef WGL_I3D_image_buffer\r
-#define WGL_I3D_image_buffer 1\r
-\r
-#define WGL_IMAGE_BUFFER_MIN_ACCESS_I3D 0x00000001\r
-#define WGL_IMAGE_BUFFER_LOCK_I3D 0x00000002\r
-\r
-typedef BOOL (WINAPI * PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, HANDLE* pEvent, LPVOID *pAddress, DWORD *pSize, UINT count);\r
-typedef LPVOID (WINAPI * PFNWGLCREATEIMAGEBUFFERI3DPROC) (HDC hDC, DWORD dwSize, UINT uFlags);\r
-typedef BOOL (WINAPI * PFNWGLDESTROYIMAGEBUFFERI3DPROC) (HDC hDC, LPVOID pAddress);\r
-typedef BOOL (WINAPI * PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC) (HDC hdc, LPVOID* pAddress, UINT count);\r
-\r
-#define wglAssociateImageBufferEventsI3D WGLEW_GET_FUN(__wglewAssociateImageBufferEventsI3D)\r
-#define wglCreateImageBufferI3D WGLEW_GET_FUN(__wglewCreateImageBufferI3D)\r
-#define wglDestroyImageBufferI3D WGLEW_GET_FUN(__wglewDestroyImageBufferI3D)\r
-#define wglReleaseImageBufferEventsI3D WGLEW_GET_FUN(__wglewReleaseImageBufferEventsI3D)\r
-\r
-#define WGLEW_I3D_image_buffer WGLEW_GET_VAR(__WGLEW_I3D_image_buffer)\r
-\r
-#endif /* WGL_I3D_image_buffer */\r
-\r
-/* ------------------------ WGL_I3D_swap_frame_lock ------------------------ */\r
-\r
-#ifndef WGL_I3D_swap_frame_lock\r
-#define WGL_I3D_swap_frame_lock 1\r
-\r
-typedef BOOL (WINAPI * PFNWGLDISABLEFRAMELOCKI3DPROC) (VOID);\r
-typedef BOOL (WINAPI * PFNWGLENABLEFRAMELOCKI3DPROC) (VOID);\r
-typedef BOOL (WINAPI * PFNWGLISENABLEDFRAMELOCKI3DPROC) (BOOL* pFlag);\r
-typedef BOOL (WINAPI * PFNWGLQUERYFRAMELOCKMASTERI3DPROC) (BOOL* pFlag);\r
-\r
-#define wglDisableFrameLockI3D WGLEW_GET_FUN(__wglewDisableFrameLockI3D)\r
-#define wglEnableFrameLockI3D WGLEW_GET_FUN(__wglewEnableFrameLockI3D)\r
-#define wglIsEnabledFrameLockI3D WGLEW_GET_FUN(__wglewIsEnabledFrameLockI3D)\r
-#define wglQueryFrameLockMasterI3D WGLEW_GET_FUN(__wglewQueryFrameLockMasterI3D)\r
-\r
-#define WGLEW_I3D_swap_frame_lock WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_lock)\r
-\r
-#endif /* WGL_I3D_swap_frame_lock */\r
-\r
-/* ------------------------ WGL_I3D_swap_frame_usage ----------------------- */\r
-\r
-#ifndef WGL_I3D_swap_frame_usage\r
-#define WGL_I3D_swap_frame_usage 1\r
-\r
-typedef BOOL (WINAPI * PFNWGLBEGINFRAMETRACKINGI3DPROC) (void);\r
-typedef BOOL (WINAPI * PFNWGLENDFRAMETRACKINGI3DPROC) (void);\r
-typedef BOOL (WINAPI * PFNWGLGETFRAMEUSAGEI3DPROC) (float* pUsage);\r
-typedef BOOL (WINAPI * PFNWGLQUERYFRAMETRACKINGI3DPROC) (DWORD* pFrameCount, DWORD *pMissedFrames, float *pLastMissedUsage);\r
-\r
-#define wglBeginFrameTrackingI3D WGLEW_GET_FUN(__wglewBeginFrameTrackingI3D)\r
-#define wglEndFrameTrackingI3D WGLEW_GET_FUN(__wglewEndFrameTrackingI3D)\r
-#define wglGetFrameUsageI3D WGLEW_GET_FUN(__wglewGetFrameUsageI3D)\r
-#define wglQueryFrameTrackingI3D WGLEW_GET_FUN(__wglewQueryFrameTrackingI3D)\r
-\r
-#define WGLEW_I3D_swap_frame_usage WGLEW_GET_VAR(__WGLEW_I3D_swap_frame_usage)\r
-\r
-#endif /* WGL_I3D_swap_frame_usage */\r
-\r
-/* --------------------------- WGL_NV_DX_interop --------------------------- */\r
-\r
-#ifndef WGL_NV_DX_interop\r
-#define WGL_NV_DX_interop 1\r
-\r
-#define WGL_ACCESS_READ_ONLY_NV 0x0000\r
-#define WGL_ACCESS_READ_WRITE_NV 0x0001\r
-#define WGL_ACCESS_WRITE_DISCARD_NV 0x0002\r
-\r
-typedef BOOL (WINAPI * PFNWGLDXCLOSEDEVICENVPROC) (HANDLE hDevice);\r
-typedef BOOL (WINAPI * PFNWGLDXLOCKOBJECTSNVPROC) (HANDLE hDevice, GLint count, HANDLE* hObjects);\r
-typedef BOOL (WINAPI * PFNWGLDXOBJECTACCESSNVPROC) (HANDLE hObject, GLenum access);\r
-typedef HANDLE (WINAPI * PFNWGLDXOPENDEVICENVPROC) (void* dxDevice);\r
-typedef HANDLE (WINAPI * PFNWGLDXREGISTEROBJECTNVPROC) (HANDLE hDevice, void* dxObject, GLuint name, GLenum type, GLenum access);\r
-typedef BOOL (WINAPI * PFNWGLDXSETRESOURCESHAREHANDLENVPROC) (void* dxObject, HANDLE shareHandle);\r
-typedef BOOL (WINAPI * PFNWGLDXUNLOCKOBJECTSNVPROC) (HANDLE hDevice, GLint count, HANDLE* hObjects);\r
-typedef BOOL (WINAPI * PFNWGLDXUNREGISTEROBJECTNVPROC) (HANDLE hDevice, HANDLE hObject);\r
-\r
-#define wglDXCloseDeviceNV WGLEW_GET_FUN(__wglewDXCloseDeviceNV)\r
-#define wglDXLockObjectsNV WGLEW_GET_FUN(__wglewDXLockObjectsNV)\r
-#define wglDXObjectAccessNV WGLEW_GET_FUN(__wglewDXObjectAccessNV)\r
-#define wglDXOpenDeviceNV WGLEW_GET_FUN(__wglewDXOpenDeviceNV)\r
-#define wglDXRegisterObjectNV WGLEW_GET_FUN(__wglewDXRegisterObjectNV)\r
-#define wglDXSetResourceShareHandleNV WGLEW_GET_FUN(__wglewDXSetResourceShareHandleNV)\r
-#define wglDXUnlockObjectsNV WGLEW_GET_FUN(__wglewDXUnlockObjectsNV)\r
-#define wglDXUnregisterObjectNV WGLEW_GET_FUN(__wglewDXUnregisterObjectNV)\r
-\r
-#define WGLEW_NV_DX_interop WGLEW_GET_VAR(__WGLEW_NV_DX_interop)\r
-\r
-#endif /* WGL_NV_DX_interop */\r
-\r
-/* --------------------------- WGL_NV_copy_image --------------------------- */\r
-\r
-#ifndef WGL_NV_copy_image\r
-#define WGL_NV_copy_image 1\r
-\r
-typedef BOOL (WINAPI * PFNWGLCOPYIMAGESUBDATANVPROC) (HGLRC hSrcRC, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, HGLRC hDstRC, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);\r
-\r
-#define wglCopyImageSubDataNV WGLEW_GET_FUN(__wglewCopyImageSubDataNV)\r
-\r
-#define WGLEW_NV_copy_image WGLEW_GET_VAR(__WGLEW_NV_copy_image)\r
-\r
-#endif /* WGL_NV_copy_image */\r
-\r
-/* -------------------------- WGL_NV_float_buffer -------------------------- */\r
-\r
-#ifndef WGL_NV_float_buffer\r
-#define WGL_NV_float_buffer 1\r
-\r
-#define WGL_FLOAT_COMPONENTS_NV 0x20B0\r
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV 0x20B1\r
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV 0x20B2\r
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV 0x20B3\r
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV 0x20B4\r
-#define WGL_TEXTURE_FLOAT_R_NV 0x20B5\r
-#define WGL_TEXTURE_FLOAT_RG_NV 0x20B6\r
-#define WGL_TEXTURE_FLOAT_RGB_NV 0x20B7\r
-#define WGL_TEXTURE_FLOAT_RGBA_NV 0x20B8\r
-\r
-#define WGLEW_NV_float_buffer WGLEW_GET_VAR(__WGLEW_NV_float_buffer)\r
-\r
-#endif /* WGL_NV_float_buffer */\r
-\r
-/* -------------------------- WGL_NV_gpu_affinity -------------------------- */\r
-\r
-#ifndef WGL_NV_gpu_affinity\r
-#define WGL_NV_gpu_affinity 1\r
-\r
-#define WGL_ERROR_INCOMPATIBLE_AFFINITY_MASKS_NV 0x20D0\r
-#define WGL_ERROR_MISSING_AFFINITY_MASK_NV 0x20D1\r
-\r
-DECLARE_HANDLE(HGPUNV);\r
-typedef struct _GPU_DEVICE {\r
-  DWORD cb; \r
-  CHAR DeviceName[32]; \r
-  CHAR DeviceString[128]; \r
-  DWORD Flags; \r
-  RECT rcVirtualScreen; \r
-} GPU_DEVICE, *PGPU_DEVICE;\r
-\r
-typedef HDC (WINAPI * PFNWGLCREATEAFFINITYDCNVPROC) (const HGPUNV *phGpuList);\r
-typedef BOOL (WINAPI * PFNWGLDELETEDCNVPROC) (HDC hdc);\r
-typedef BOOL (WINAPI * PFNWGLENUMGPUDEVICESNVPROC) (HGPUNV hGpu, UINT iDeviceIndex, PGPU_DEVICE lpGpuDevice);\r
-typedef BOOL (WINAPI * PFNWGLENUMGPUSFROMAFFINITYDCNVPROC) (HDC hAffinityDC, UINT iGpuIndex, HGPUNV *hGpu);\r
-typedef BOOL (WINAPI * PFNWGLENUMGPUSNVPROC) (UINT iGpuIndex, HGPUNV *phGpu);\r
-\r
-#define wglCreateAffinityDCNV WGLEW_GET_FUN(__wglewCreateAffinityDCNV)\r
-#define wglDeleteDCNV WGLEW_GET_FUN(__wglewDeleteDCNV)\r
-#define wglEnumGpuDevicesNV WGLEW_GET_FUN(__wglewEnumGpuDevicesNV)\r
-#define wglEnumGpusFromAffinityDCNV WGLEW_GET_FUN(__wglewEnumGpusFromAffinityDCNV)\r
-#define wglEnumGpusNV WGLEW_GET_FUN(__wglewEnumGpusNV)\r
-\r
-#define WGLEW_NV_gpu_affinity WGLEW_GET_VAR(__WGLEW_NV_gpu_affinity)\r
-\r
-#endif /* WGL_NV_gpu_affinity */\r
-\r
-/* ---------------------- WGL_NV_multisample_coverage ---------------------- */\r
-\r
-#ifndef WGL_NV_multisample_coverage\r
-#define WGL_NV_multisample_coverage 1\r
-\r
-#define WGL_COVERAGE_SAMPLES_NV 0x2042\r
-#define WGL_COLOR_SAMPLES_NV 0x20B9\r
-\r
-#define WGLEW_NV_multisample_coverage WGLEW_GET_VAR(__WGLEW_NV_multisample_coverage)\r
-\r
-#endif /* WGL_NV_multisample_coverage */\r
-\r
-/* -------------------------- WGL_NV_present_video ------------------------- */\r
-\r
-#ifndef WGL_NV_present_video\r
-#define WGL_NV_present_video 1\r
-\r
-#define WGL_NUM_VIDEO_SLOTS_NV 0x20F0\r
-\r
-DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);\r
-\r
-typedef BOOL (WINAPI * PFNWGLBINDVIDEODEVICENVPROC) (HDC hDc, unsigned int uVideoSlot, HVIDEOOUTPUTDEVICENV hVideoDevice, const int* piAttribList);\r
-typedef int (WINAPI * PFNWGLENUMERATEVIDEODEVICESNVPROC) (HDC hDc, HVIDEOOUTPUTDEVICENV* phDeviceList);\r
-typedef BOOL (WINAPI * PFNWGLQUERYCURRENTCONTEXTNVPROC) (int iAttribute, int* piValue);\r
-\r
-#define wglBindVideoDeviceNV WGLEW_GET_FUN(__wglewBindVideoDeviceNV)\r
-#define wglEnumerateVideoDevicesNV WGLEW_GET_FUN(__wglewEnumerateVideoDevicesNV)\r
-#define wglQueryCurrentContextNV WGLEW_GET_FUN(__wglewQueryCurrentContextNV)\r
-\r
-#define WGLEW_NV_present_video WGLEW_GET_VAR(__WGLEW_NV_present_video)\r
-\r
-#endif /* WGL_NV_present_video */\r
-\r
-/* ---------------------- WGL_NV_render_depth_texture ---------------------- */\r
-\r
-#ifndef WGL_NV_render_depth_texture\r
-#define WGL_NV_render_depth_texture 1\r
-\r
-#define WGL_NO_TEXTURE_ARB 0x2077\r
-#define WGL_BIND_TO_TEXTURE_DEPTH_NV 0x20A3\r
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV 0x20A4\r
-#define WGL_DEPTH_TEXTURE_FORMAT_NV 0x20A5\r
-#define WGL_TEXTURE_DEPTH_COMPONENT_NV 0x20A6\r
-#define WGL_DEPTH_COMPONENT_NV 0x20A7\r
-\r
-#define WGLEW_NV_render_depth_texture WGLEW_GET_VAR(__WGLEW_NV_render_depth_texture)\r
-\r
-#endif /* WGL_NV_render_depth_texture */\r
-\r
-/* -------------------- WGL_NV_render_texture_rectangle -------------------- */\r
-\r
-#ifndef WGL_NV_render_texture_rectangle\r
-#define WGL_NV_render_texture_rectangle 1\r
-\r
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV 0x20A0\r
-#define WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV 0x20A1\r
-#define WGL_TEXTURE_RECTANGLE_NV 0x20A2\r
-\r
-#define WGLEW_NV_render_texture_rectangle WGLEW_GET_VAR(__WGLEW_NV_render_texture_rectangle)\r
-\r
-#endif /* WGL_NV_render_texture_rectangle */\r
-\r
-/* --------------------------- WGL_NV_swap_group --------------------------- */\r
-\r
-#ifndef WGL_NV_swap_group\r
-#define WGL_NV_swap_group 1\r
-\r
-typedef BOOL (WINAPI * PFNWGLBINDSWAPBARRIERNVPROC) (GLuint group, GLuint barrier);\r
-typedef BOOL (WINAPI * PFNWGLJOINSWAPGROUPNVPROC) (HDC hDC, GLuint group);\r
-typedef BOOL (WINAPI * PFNWGLQUERYFRAMECOUNTNVPROC) (HDC hDC, GLuint* count);\r
-typedef BOOL (WINAPI * PFNWGLQUERYMAXSWAPGROUPSNVPROC) (HDC hDC, GLuint* maxGroups, GLuint *maxBarriers);\r
-typedef BOOL (WINAPI * PFNWGLQUERYSWAPGROUPNVPROC) (HDC hDC, GLuint* group, GLuint *barrier);\r
-typedef BOOL (WINAPI * PFNWGLRESETFRAMECOUNTNVPROC) (HDC hDC);\r
-\r
-#define wglBindSwapBarrierNV WGLEW_GET_FUN(__wglewBindSwapBarrierNV)\r
-#define wglJoinSwapGroupNV WGLEW_GET_FUN(__wglewJoinSwapGroupNV)\r
-#define wglQueryFrameCountNV WGLEW_GET_FUN(__wglewQueryFrameCountNV)\r
-#define wglQueryMaxSwapGroupsNV WGLEW_GET_FUN(__wglewQueryMaxSwapGroupsNV)\r
-#define wglQuerySwapGroupNV WGLEW_GET_FUN(__wglewQuerySwapGroupNV)\r
-#define wglResetFrameCountNV WGLEW_GET_FUN(__wglewResetFrameCountNV)\r
-\r
-#define WGLEW_NV_swap_group WGLEW_GET_VAR(__WGLEW_NV_swap_group)\r
-\r
-#endif /* WGL_NV_swap_group */\r
-\r
-/* ----------------------- WGL_NV_vertex_array_range ----------------------- */\r
-\r
-#ifndef WGL_NV_vertex_array_range\r
-#define WGL_NV_vertex_array_range 1\r
-\r
-typedef void * (WINAPI * PFNWGLALLOCATEMEMORYNVPROC) (GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority);\r
-typedef void (WINAPI * PFNWGLFREEMEMORYNVPROC) (void *pointer);\r
-\r
-#define wglAllocateMemoryNV WGLEW_GET_FUN(__wglewAllocateMemoryNV)\r
-#define wglFreeMemoryNV WGLEW_GET_FUN(__wglewFreeMemoryNV)\r
-\r
-#define WGLEW_NV_vertex_array_range WGLEW_GET_VAR(__WGLEW_NV_vertex_array_range)\r
-\r
-#endif /* WGL_NV_vertex_array_range */\r
-\r
-/* -------------------------- WGL_NV_video_capture ------------------------- */\r
-\r
-#ifndef WGL_NV_video_capture\r
-#define WGL_NV_video_capture 1\r
-\r
-#define WGL_UNIQUE_ID_NV 0x20CE\r
-#define WGL_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF\r
-\r
-DECLARE_HANDLE(HVIDEOINPUTDEVICENV);\r
-\r
-typedef BOOL (WINAPI * PFNWGLBINDVIDEOCAPTUREDEVICENVPROC) (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);\r
-typedef UINT (WINAPI * PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC) (HDC hDc, HVIDEOINPUTDEVICENV* phDeviceList);\r
-typedef BOOL (WINAPI * PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);\r
-typedef BOOL (WINAPI * PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int* piValue);\r
-typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);\r
-\r
-#define wglBindVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewBindVideoCaptureDeviceNV)\r
-#define wglEnumerateVideoCaptureDevicesNV WGLEW_GET_FUN(__wglewEnumerateVideoCaptureDevicesNV)\r
-#define wglLockVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewLockVideoCaptureDeviceNV)\r
-#define wglQueryVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewQueryVideoCaptureDeviceNV)\r
-#define wglReleaseVideoCaptureDeviceNV WGLEW_GET_FUN(__wglewReleaseVideoCaptureDeviceNV)\r
-\r
-#define WGLEW_NV_video_capture WGLEW_GET_VAR(__WGLEW_NV_video_capture)\r
-\r
-#endif /* WGL_NV_video_capture */\r
-\r
-/* -------------------------- WGL_NV_video_output -------------------------- */\r
-\r
-#ifndef WGL_NV_video_output\r
-#define WGL_NV_video_output 1\r
-\r
-#define WGL_BIND_TO_VIDEO_RGB_NV 0x20C0\r
-#define WGL_BIND_TO_VIDEO_RGBA_NV 0x20C1\r
-#define WGL_BIND_TO_VIDEO_RGB_AND_DEPTH_NV 0x20C2\r
-#define WGL_VIDEO_OUT_COLOR_NV 0x20C3\r
-#define WGL_VIDEO_OUT_ALPHA_NV 0x20C4\r
-#define WGL_VIDEO_OUT_DEPTH_NV 0x20C5\r
-#define WGL_VIDEO_OUT_COLOR_AND_ALPHA_NV 0x20C6\r
-#define WGL_VIDEO_OUT_COLOR_AND_DEPTH_NV 0x20C7\r
-#define WGL_VIDEO_OUT_FRAME 0x20C8\r
-#define WGL_VIDEO_OUT_FIELD_1 0x20C9\r
-#define WGL_VIDEO_OUT_FIELD_2 0x20CA\r
-#define WGL_VIDEO_OUT_STACKED_FIELDS_1_2 0x20CB\r
-#define WGL_VIDEO_OUT_STACKED_FIELDS_2_1 0x20CC\r
-\r
-DECLARE_HANDLE(HPVIDEODEV);\r
-\r
-typedef BOOL (WINAPI * PFNWGLBINDVIDEOIMAGENVPROC) (HPVIDEODEV hVideoDevice, HPBUFFERARB hPbuffer, int iVideoBuffer);\r
-typedef BOOL (WINAPI * PFNWGLGETVIDEODEVICENVPROC) (HDC hDC, int numDevices, HPVIDEODEV* hVideoDevice);\r
-typedef BOOL (WINAPI * PFNWGLGETVIDEOINFONVPROC) (HPVIDEODEV hpVideoDevice, unsigned long* pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);\r
-typedef BOOL (WINAPI * PFNWGLRELEASEVIDEODEVICENVPROC) (HPVIDEODEV hVideoDevice);\r
-typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOIMAGENVPROC) (HPBUFFERARB hPbuffer, int iVideoBuffer);\r
-typedef BOOL (WINAPI * PFNWGLSENDPBUFFERTOVIDEONVPROC) (HPBUFFERARB hPbuffer, int iBufferType, unsigned long* pulCounterPbuffer, BOOL bBlock);\r
-\r
-#define wglBindVideoImageNV WGLEW_GET_FUN(__wglewBindVideoImageNV)\r
-#define wglGetVideoDeviceNV WGLEW_GET_FUN(__wglewGetVideoDeviceNV)\r
-#define wglGetVideoInfoNV WGLEW_GET_FUN(__wglewGetVideoInfoNV)\r
-#define wglReleaseVideoDeviceNV WGLEW_GET_FUN(__wglewReleaseVideoDeviceNV)\r
-#define wglReleaseVideoImageNV WGLEW_GET_FUN(__wglewReleaseVideoImageNV)\r
-#define wglSendPbufferToVideoNV WGLEW_GET_FUN(__wglewSendPbufferToVideoNV)\r
-\r
-#define WGLEW_NV_video_output WGLEW_GET_VAR(__WGLEW_NV_video_output)\r
-\r
-#endif /* WGL_NV_video_output */\r
-\r
-/* -------------------------- WGL_OML_sync_control ------------------------- */\r
-\r
-#ifndef WGL_OML_sync_control\r
-#define WGL_OML_sync_control 1\r
-\r
-typedef BOOL (WINAPI * PFNWGLGETMSCRATEOMLPROC) (HDC hdc, INT32* numerator, INT32 *denominator);\r
-typedef BOOL (WINAPI * PFNWGLGETSYNCVALUESOMLPROC) (HDC hdc, INT64* ust, INT64 *msc, INT64 *sbc);\r
-typedef INT64 (WINAPI * PFNWGLSWAPBUFFERSMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder);\r
-typedef INT64 (WINAPI * PFNWGLSWAPLAYERBUFFERSMSCOMLPROC) (HDC hdc, INT fuPlanes, INT64 target_msc, INT64 divisor, INT64 remainder);\r
-typedef BOOL (WINAPI * PFNWGLWAITFORMSCOMLPROC) (HDC hdc, INT64 target_msc, INT64 divisor, INT64 remainder, INT64* ust, INT64 *msc, INT64 *sbc);\r
-typedef BOOL (WINAPI * PFNWGLWAITFORSBCOMLPROC) (HDC hdc, INT64 target_sbc, INT64* ust, INT64 *msc, INT64 *sbc);\r
-\r
-#define wglGetMscRateOML WGLEW_GET_FUN(__wglewGetMscRateOML)\r
-#define wglGetSyncValuesOML WGLEW_GET_FUN(__wglewGetSyncValuesOML)\r
-#define wglSwapBuffersMscOML WGLEW_GET_FUN(__wglewSwapBuffersMscOML)\r
-#define wglSwapLayerBuffersMscOML WGLEW_GET_FUN(__wglewSwapLayerBuffersMscOML)\r
-#define wglWaitForMscOML WGLEW_GET_FUN(__wglewWaitForMscOML)\r
-#define wglWaitForSbcOML WGLEW_GET_FUN(__wglewWaitForSbcOML)\r
-\r
-#define WGLEW_OML_sync_control WGLEW_GET_VAR(__WGLEW_OML_sync_control)\r
-\r
-#endif /* WGL_OML_sync_control */\r
-\r
-/* ------------------------------------------------------------------------- */\r
-\r
-#ifdef GLEW_MX\r
-#define WGLEW_EXPORT\r
-#else\r
-#define WGLEW_EXPORT GLEWAPI\r
-#endif /* GLEW_MX */\r
-\r
-#ifdef GLEW_MX\r
-struct WGLEWContextStruct\r
-{\r
-#endif /* GLEW_MX */\r
-\r
-WGLEW_EXPORT PFNWGLSETSTEREOEMITTERSTATE3DLPROC __wglewSetStereoEmitterState3DL;\r
-\r
-WGLEW_EXPORT PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC __wglewBlitContextFramebufferAMD;\r
-WGLEW_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTAMDPROC __wglewCreateAssociatedContextAMD;\r
-WGLEW_EXPORT PFNWGLCREATEASSOCIATEDCONTEXTATTRIBSAMDPROC __wglewCreateAssociatedContextAttribsAMD;\r
-WGLEW_EXPORT PFNWGLDELETEASSOCIATEDCONTEXTAMDPROC __wglewDeleteAssociatedContextAMD;\r
-WGLEW_EXPORT PFNWGLGETCONTEXTGPUIDAMDPROC __wglewGetContextGPUIDAMD;\r
-WGLEW_EXPORT PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC __wglewGetCurrentAssociatedContextAMD;\r
-WGLEW_EXPORT PFNWGLGETGPUIDSAMDPROC __wglewGetGPUIDsAMD;\r
-WGLEW_EXPORT PFNWGLGETGPUINFOAMDPROC __wglewGetGPUInfoAMD;\r
-WGLEW_EXPORT PFNWGLMAKEASSOCIATEDCONTEXTCURRENTAMDPROC __wglewMakeAssociatedContextCurrentAMD;\r
-\r
-WGLEW_EXPORT PFNWGLCREATEBUFFERREGIONARBPROC __wglewCreateBufferRegionARB;\r
-WGLEW_EXPORT PFNWGLDELETEBUFFERREGIONARBPROC __wglewDeleteBufferRegionARB;\r
-WGLEW_EXPORT PFNWGLRESTOREBUFFERREGIONARBPROC __wglewRestoreBufferRegionARB;\r
-WGLEW_EXPORT PFNWGLSAVEBUFFERREGIONARBPROC __wglewSaveBufferRegionARB;\r
-\r
-WGLEW_EXPORT PFNWGLCREATECONTEXTATTRIBSARBPROC __wglewCreateContextAttribsARB;\r
-\r
-WGLEW_EXPORT PFNWGLGETEXTENSIONSSTRINGARBPROC __wglewGetExtensionsStringARB;\r
-\r
-WGLEW_EXPORT PFNWGLGETCURRENTREADDCARBPROC __wglewGetCurrentReadDCARB;\r
-WGLEW_EXPORT PFNWGLMAKECONTEXTCURRENTARBPROC __wglewMakeContextCurrentARB;\r
-\r
-WGLEW_EXPORT PFNWGLCREATEPBUFFERARBPROC __wglewCreatePbufferARB;\r
-WGLEW_EXPORT PFNWGLDESTROYPBUFFERARBPROC __wglewDestroyPbufferARB;\r
-WGLEW_EXPORT PFNWGLGETPBUFFERDCARBPROC __wglewGetPbufferDCARB;\r
-WGLEW_EXPORT PFNWGLQUERYPBUFFERARBPROC __wglewQueryPbufferARB;\r
-WGLEW_EXPORT PFNWGLRELEASEPBUFFERDCARBPROC __wglewReleasePbufferDCARB;\r
-\r
-WGLEW_EXPORT PFNWGLCHOOSEPIXELFORMATARBPROC __wglewChoosePixelFormatARB;\r
-WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBFVARBPROC __wglewGetPixelFormatAttribfvARB;\r
-WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBIVARBPROC __wglewGetPixelFormatAttribivARB;\r
-\r
-WGLEW_EXPORT PFNWGLBINDTEXIMAGEARBPROC __wglewBindTexImageARB;\r
-WGLEW_EXPORT PFNWGLRELEASETEXIMAGEARBPROC __wglewReleaseTexImageARB;\r
-WGLEW_EXPORT PFNWGLSETPBUFFERATTRIBARBPROC __wglewSetPbufferAttribARB;\r
-\r
-WGLEW_EXPORT PFNWGLBINDDISPLAYCOLORTABLEEXTPROC __wglewBindDisplayColorTableEXT;\r
-WGLEW_EXPORT PFNWGLCREATEDISPLAYCOLORTABLEEXTPROC __wglewCreateDisplayColorTableEXT;\r
-WGLEW_EXPORT PFNWGLDESTROYDISPLAYCOLORTABLEEXTPROC __wglewDestroyDisplayColorTableEXT;\r
-WGLEW_EXPORT PFNWGLLOADDISPLAYCOLORTABLEEXTPROC __wglewLoadDisplayColorTableEXT;\r
-\r
-WGLEW_EXPORT PFNWGLGETEXTENSIONSSTRINGEXTPROC __wglewGetExtensionsStringEXT;\r
-\r
-WGLEW_EXPORT PFNWGLGETCURRENTREADDCEXTPROC __wglewGetCurrentReadDCEXT;\r
-WGLEW_EXPORT PFNWGLMAKECONTEXTCURRENTEXTPROC __wglewMakeContextCurrentEXT;\r
-\r
-WGLEW_EXPORT PFNWGLCREATEPBUFFEREXTPROC __wglewCreatePbufferEXT;\r
-WGLEW_EXPORT PFNWGLDESTROYPBUFFEREXTPROC __wglewDestroyPbufferEXT;\r
-WGLEW_EXPORT PFNWGLGETPBUFFERDCEXTPROC __wglewGetPbufferDCEXT;\r
-WGLEW_EXPORT PFNWGLQUERYPBUFFEREXTPROC __wglewQueryPbufferEXT;\r
-WGLEW_EXPORT PFNWGLRELEASEPBUFFERDCEXTPROC __wglewReleasePbufferDCEXT;\r
-\r
-WGLEW_EXPORT PFNWGLCHOOSEPIXELFORMATEXTPROC __wglewChoosePixelFormatEXT;\r
-WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBFVEXTPROC __wglewGetPixelFormatAttribfvEXT;\r
-WGLEW_EXPORT PFNWGLGETPIXELFORMATATTRIBIVEXTPROC __wglewGetPixelFormatAttribivEXT;\r
-\r
-WGLEW_EXPORT PFNWGLGETSWAPINTERVALEXTPROC __wglewGetSwapIntervalEXT;\r
-WGLEW_EXPORT PFNWGLSWAPINTERVALEXTPROC __wglewSwapIntervalEXT;\r
-\r
-WGLEW_EXPORT PFNWGLGETDIGITALVIDEOPARAMETERSI3DPROC __wglewGetDigitalVideoParametersI3D;\r
-WGLEW_EXPORT PFNWGLSETDIGITALVIDEOPARAMETERSI3DPROC __wglewSetDigitalVideoParametersI3D;\r
-\r
-WGLEW_EXPORT PFNWGLGETGAMMATABLEI3DPROC __wglewGetGammaTableI3D;\r
-WGLEW_EXPORT PFNWGLGETGAMMATABLEPARAMETERSI3DPROC __wglewGetGammaTableParametersI3D;\r
-WGLEW_EXPORT PFNWGLSETGAMMATABLEI3DPROC __wglewSetGammaTableI3D;\r
-WGLEW_EXPORT PFNWGLSETGAMMATABLEPARAMETERSI3DPROC __wglewSetGammaTableParametersI3D;\r
-\r
-WGLEW_EXPORT PFNWGLDISABLEGENLOCKI3DPROC __wglewDisableGenlockI3D;\r
-WGLEW_EXPORT PFNWGLENABLEGENLOCKI3DPROC __wglewEnableGenlockI3D;\r
-WGLEW_EXPORT PFNWGLGENLOCKSAMPLERATEI3DPROC __wglewGenlockSampleRateI3D;\r
-WGLEW_EXPORT PFNWGLGENLOCKSOURCEDELAYI3DPROC __wglewGenlockSourceDelayI3D;\r
-WGLEW_EXPORT PFNWGLGENLOCKSOURCEEDGEI3DPROC __wglewGenlockSourceEdgeI3D;\r
-WGLEW_EXPORT PFNWGLGENLOCKSOURCEI3DPROC __wglewGenlockSourceI3D;\r
-WGLEW_EXPORT PFNWGLGETGENLOCKSAMPLERATEI3DPROC __wglewGetGenlockSampleRateI3D;\r
-WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEDELAYI3DPROC __wglewGetGenlockSourceDelayI3D;\r
-WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEEDGEI3DPROC __wglewGetGenlockSourceEdgeI3D;\r
-WGLEW_EXPORT PFNWGLGETGENLOCKSOURCEI3DPROC __wglewGetGenlockSourceI3D;\r
-WGLEW_EXPORT PFNWGLISENABLEDGENLOCKI3DPROC __wglewIsEnabledGenlockI3D;\r
-WGLEW_EXPORT PFNWGLQUERYGENLOCKMAXSOURCEDELAYI3DPROC __wglewQueryGenlockMaxSourceDelayI3D;\r
-\r
-WGLEW_EXPORT PFNWGLASSOCIATEIMAGEBUFFEREVENTSI3DPROC __wglewAssociateImageBufferEventsI3D;\r
-WGLEW_EXPORT PFNWGLCREATEIMAGEBUFFERI3DPROC __wglewCreateImageBufferI3D;\r
-WGLEW_EXPORT PFNWGLDESTROYIMAGEBUFFERI3DPROC __wglewDestroyImageBufferI3D;\r
-WGLEW_EXPORT PFNWGLRELEASEIMAGEBUFFEREVENTSI3DPROC __wglewReleaseImageBufferEventsI3D;\r
-\r
-WGLEW_EXPORT PFNWGLDISABLEFRAMELOCKI3DPROC __wglewDisableFrameLockI3D;\r
-WGLEW_EXPORT PFNWGLENABLEFRAMELOCKI3DPROC __wglewEnableFrameLockI3D;\r
-WGLEW_EXPORT PFNWGLISENABLEDFRAMELOCKI3DPROC __wglewIsEnabledFrameLockI3D;\r
-WGLEW_EXPORT PFNWGLQUERYFRAMELOCKMASTERI3DPROC __wglewQueryFrameLockMasterI3D;\r
-\r
-WGLEW_EXPORT PFNWGLBEGINFRAMETRACKINGI3DPROC __wglewBeginFrameTrackingI3D;\r
-WGLEW_EXPORT PFNWGLENDFRAMETRACKINGI3DPROC __wglewEndFrameTrackingI3D;\r
-WGLEW_EXPORT PFNWGLGETFRAMEUSAGEI3DPROC __wglewGetFrameUsageI3D;\r
-WGLEW_EXPORT PFNWGLQUERYFRAMETRACKINGI3DPROC __wglewQueryFrameTrackingI3D;\r
-\r
-WGLEW_EXPORT PFNWGLDXCLOSEDEVICENVPROC __wglewDXCloseDeviceNV;\r
-WGLEW_EXPORT PFNWGLDXLOCKOBJECTSNVPROC __wglewDXLockObjectsNV;\r
-WGLEW_EXPORT PFNWGLDXOBJECTACCESSNVPROC __wglewDXObjectAccessNV;\r
-WGLEW_EXPORT PFNWGLDXOPENDEVICENVPROC __wglewDXOpenDeviceNV;\r
-WGLEW_EXPORT PFNWGLDXREGISTEROBJECTNVPROC __wglewDXRegisterObjectNV;\r
-WGLEW_EXPORT PFNWGLDXSETRESOURCESHAREHANDLENVPROC __wglewDXSetResourceShareHandleNV;\r
-WGLEW_EXPORT PFNWGLDXUNLOCKOBJECTSNVPROC __wglewDXUnlockObjectsNV;\r
-WGLEW_EXPORT PFNWGLDXUNREGISTEROBJECTNVPROC __wglewDXUnregisterObjectNV;\r
-\r
-WGLEW_EXPORT PFNWGLCOPYIMAGESUBDATANVPROC __wglewCopyImageSubDataNV;\r
-\r
-WGLEW_EXPORT PFNWGLCREATEAFFINITYDCNVPROC __wglewCreateAffinityDCNV;\r
-WGLEW_EXPORT PFNWGLDELETEDCNVPROC __wglewDeleteDCNV;\r
-WGLEW_EXPORT PFNWGLENUMGPUDEVICESNVPROC __wglewEnumGpuDevicesNV;\r
-WGLEW_EXPORT PFNWGLENUMGPUSFROMAFFINITYDCNVPROC __wglewEnumGpusFromAffinityDCNV;\r
-WGLEW_EXPORT PFNWGLENUMGPUSNVPROC __wglewEnumGpusNV;\r
-\r
-WGLEW_EXPORT PFNWGLBINDVIDEODEVICENVPROC __wglewBindVideoDeviceNV;\r
-WGLEW_EXPORT PFNWGLENUMERATEVIDEODEVICESNVPROC __wglewEnumerateVideoDevicesNV;\r
-WGLEW_EXPORT PFNWGLQUERYCURRENTCONTEXTNVPROC __wglewQueryCurrentContextNV;\r
-\r
-WGLEW_EXPORT PFNWGLBINDSWAPBARRIERNVPROC __wglewBindSwapBarrierNV;\r
-WGLEW_EXPORT PFNWGLJOINSWAPGROUPNVPROC __wglewJoinSwapGroupNV;\r
-WGLEW_EXPORT PFNWGLQUERYFRAMECOUNTNVPROC __wglewQueryFrameCountNV;\r
-WGLEW_EXPORT PFNWGLQUERYMAXSWAPGROUPSNVPROC __wglewQueryMaxSwapGroupsNV;\r
-WGLEW_EXPORT PFNWGLQUERYSWAPGROUPNVPROC __wglewQuerySwapGroupNV;\r
-WGLEW_EXPORT PFNWGLRESETFRAMECOUNTNVPROC __wglewResetFrameCountNV;\r
-\r
-WGLEW_EXPORT PFNWGLALLOCATEMEMORYNVPROC __wglewAllocateMemoryNV;\r
-WGLEW_EXPORT PFNWGLFREEMEMORYNVPROC __wglewFreeMemoryNV;\r
-\r
-WGLEW_EXPORT PFNWGLBINDVIDEOCAPTUREDEVICENVPROC __wglewBindVideoCaptureDeviceNV;\r
-WGLEW_EXPORT PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC __wglewEnumerateVideoCaptureDevicesNV;\r
-WGLEW_EXPORT PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC __wglewLockVideoCaptureDeviceNV;\r
-WGLEW_EXPORT PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC __wglewQueryVideoCaptureDeviceNV;\r
-WGLEW_EXPORT PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC __wglewReleaseVideoCaptureDeviceNV;\r
-\r
-WGLEW_EXPORT PFNWGLBINDVIDEOIMAGENVPROC __wglewBindVideoImageNV;\r
-WGLEW_EXPORT PFNWGLGETVIDEODEVICENVPROC __wglewGetVideoDeviceNV;\r
-WGLEW_EXPORT PFNWGLGETVIDEOINFONVPROC __wglewGetVideoInfoNV;\r
-WGLEW_EXPORT PFNWGLRELEASEVIDEODEVICENVPROC __wglewReleaseVideoDeviceNV;\r
-WGLEW_EXPORT PFNWGLRELEASEVIDEOIMAGENVPROC __wglewReleaseVideoImageNV;\r
-WGLEW_EXPORT PFNWGLSENDPBUFFERTOVIDEONVPROC __wglewSendPbufferToVideoNV;\r
-\r
-WGLEW_EXPORT PFNWGLGETMSCRATEOMLPROC __wglewGetMscRateOML;\r
-WGLEW_EXPORT PFNWGLGETSYNCVALUESOMLPROC __wglewGetSyncValuesOML;\r
-WGLEW_EXPORT PFNWGLSWAPBUFFERSMSCOMLPROC __wglewSwapBuffersMscOML;\r
-WGLEW_EXPORT PFNWGLSWAPLAYERBUFFERSMSCOMLPROC __wglewSwapLayerBuffersMscOML;\r
-WGLEW_EXPORT PFNWGLWAITFORMSCOMLPROC __wglewWaitForMscOML;\r
-WGLEW_EXPORT PFNWGLWAITFORSBCOMLPROC __wglewWaitForSbcOML;\r
-WGLEW_EXPORT GLboolean __WGLEW_3DFX_multisample;\r
-WGLEW_EXPORT GLboolean __WGLEW_3DL_stereo_control;\r
-WGLEW_EXPORT GLboolean __WGLEW_AMD_gpu_association;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_buffer_region;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_create_context;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_create_context_profile;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_create_context_robustness;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_extensions_string;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_framebuffer_sRGB;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_make_current_read;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_multisample;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_pbuffer;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_pixel_format;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_pixel_format_float;\r
-WGLEW_EXPORT GLboolean __WGLEW_ARB_render_texture;\r
-WGLEW_EXPORT GLboolean __WGLEW_ATI_pixel_format_float;\r
-WGLEW_EXPORT GLboolean __WGLEW_ATI_render_texture_rectangle;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_create_context_es2_profile;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_depth_float;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_display_color_table;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_extensions_string;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_framebuffer_sRGB;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_make_current_read;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_multisample;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_pbuffer;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_pixel_format;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_pixel_format_packed_float;\r
-WGLEW_EXPORT GLboolean __WGLEW_EXT_swap_control;\r
-WGLEW_EXPORT GLboolean __WGLEW_I3D_digital_video_control;\r
-WGLEW_EXPORT GLboolean __WGLEW_I3D_gamma;\r
-WGLEW_EXPORT GLboolean __WGLEW_I3D_genlock;\r
-WGLEW_EXPORT GLboolean __WGLEW_I3D_image_buffer;\r
-WGLEW_EXPORT GLboolean __WGLEW_I3D_swap_frame_lock;\r
-WGLEW_EXPORT GLboolean __WGLEW_I3D_swap_frame_usage;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_DX_interop;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_copy_image;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_float_buffer;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_gpu_affinity;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_multisample_coverage;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_present_video;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_render_depth_texture;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_render_texture_rectangle;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_swap_group;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_vertex_array_range;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_video_capture;\r
-WGLEW_EXPORT GLboolean __WGLEW_NV_video_output;\r
-WGLEW_EXPORT GLboolean __WGLEW_OML_sync_control;\r
-\r
-#ifdef GLEW_MX\r
-}; /* WGLEWContextStruct */\r
-#endif /* GLEW_MX */\r
-\r
-/* ------------------------------------------------------------------------- */\r
-\r
-#ifdef GLEW_MX\r
-\r
-typedef struct WGLEWContextStruct WGLEWContext;\r
-GLEWAPI GLenum wglewContextInit (WGLEWContext* ctx);\r
-GLEWAPI GLboolean wglewContextIsSupported (const WGLEWContext* ctx, const char* name);\r
-\r
-#define wglewInit() wglewContextInit(wglewGetContext())\r
-#define wglewIsSupported(x) wglewContextIsSupported(wglewGetContext(), x)\r
-\r
-#define WGLEW_GET_VAR(x) (*(const GLboolean*)&(wglewGetContext()->x))\r
-#define WGLEW_GET_FUN(x) wglewGetContext()->x\r
-\r
-#else /* GLEW_MX */\r
-\r
-#define WGLEW_GET_VAR(x) (*(const GLboolean*)&x)\r
-#define WGLEW_GET_FUN(x) x\r
-\r
-GLEWAPI GLboolean wglewIsSupported (const char* name);\r
-\r
-#endif /* GLEW_MX */\r
-\r
-GLEWAPI GLboolean wglewGetExtension (const char* name);\r
-\r
-#ifdef __cplusplus\r
-}\r
-#endif\r
-\r
-#undef GLEWAPI\r
-\r
-#endif /* __wglew_h__ */\r
diff --git a/dependencies64/glew/lib/glew32.lib b/dependencies64/glew/lib/glew32.lib
deleted file mode 100644 (file)
index 82c4956..0000000
Binary files a/dependencies64/glew/lib/glew32.lib and /dev/null differ
diff --git a/dependencies64/glew/lib/glew32mx.lib b/dependencies64/glew/lib/glew32mx.lib
deleted file mode 100644 (file)
index ff0789d..0000000
Binary files a/dependencies64/glew/lib/glew32mx.lib and /dev/null differ
diff --git a/dependencies64/glew/lib/glew32mxs.lib b/dependencies64/glew/lib/glew32mxs.lib
deleted file mode 100644 (file)
index cd528f8..0000000
Binary files a/dependencies64/glew/lib/glew32mxs.lib and /dev/null differ
diff --git a/dependencies64/glew/lib/glew32s.lib b/dependencies64/glew/lib/glew32s.lib
deleted file mode 100644 (file)
index e9b15a6..0000000
Binary files a/dependencies64/glew/lib/glew32s.lib and /dev/null differ
diff --git a/dependencies64/sfml/bin/sfml-system-d.dll b/dependencies64/sfml/bin/sfml-system-d.dll
deleted file mode 100644 (file)
index b3f4d8e..0000000
Binary files a/dependencies64/sfml/bin/sfml-system-d.dll and /dev/null differ
diff --git a/dependencies64/sfml/bin/sfml-window-d.dll b/dependencies64/sfml/bin/sfml-window-d.dll
deleted file mode 100644 (file)
index b6def82..0000000
Binary files a/dependencies64/sfml/bin/sfml-window-d.dll and /dev/null differ
diff --git a/dependencies64/sfml/extlibs/bin/libsndfile-1.dll b/dependencies64/sfml/extlibs/bin/libsndfile-1.dll
deleted file mode 100644 (file)
index f112de2..0000000
Binary files a/dependencies64/sfml/extlibs/bin/libsndfile-1.dll and /dev/null differ
diff --git a/dependencies64/sfml/extlibs/bin/openal32.dll b/dependencies64/sfml/extlibs/bin/openal32.dll
deleted file mode 100644 (file)
index 28eb8e5..0000000
Binary files a/dependencies64/sfml/extlibs/bin/openal32.dll and /dev/null differ
diff --git a/dependencies64/sfml/extlibs/headers/AL/al.h b/dependencies64/sfml/extlibs/headers/AL/al.h
deleted file mode 100644 (file)
index 630b6ad..0000000
+++ /dev/null
@@ -1,724 +0,0 @@
-#ifndef AL_AL_H
-#define AL_AL_H
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-#if defined(_WIN32) && !defined(_XBOX)
- /* _OPENAL32LIB is deprecated */
- #if defined(AL_BUILD_LIBRARY) || defined (_OPENAL32LIB)
-  #define AL_API __declspec(dllexport)
- #else
-  #define AL_API __declspec(dllimport)
- #endif
-#else
- #if defined(AL_BUILD_LIBRARY) && defined(HAVE_GCC_VISIBILITY)
-  #define AL_API __attribute__((visibility("default")))
- #else
-  #define AL_API extern
- #endif
-#endif
-
-#if defined(_WIN32)
- #define AL_APIENTRY __cdecl
-#else
- #define AL_APIENTRY
-#endif
-
-#if defined(TARGET_OS_MAC) && TARGET_OS_MAC
- #pragma export on
-#endif
-
-/*
- * The OPENAL, ALAPI, ALAPIENTRY, AL_INVALID, AL_ILLEGAL_ENUM, and
- * AL_ILLEGAL_COMMAND macros are deprecated, but are included for
- * applications porting code from AL 1.0
- */
-#define OPENAL
-#define ALAPI AL_API
-#define ALAPIENTRY AL_APIENTRY
-#define AL_INVALID                                (-1)
-#define AL_ILLEGAL_ENUM                           AL_INVALID_ENUM
-#define AL_ILLEGAL_COMMAND                        AL_INVALID_OPERATION
-
-#define AL_VERSION_1_0
-#define AL_VERSION_1_1
-
-
-/** 8-bit boolean */
-typedef char ALboolean;
-
-/** character */
-typedef char ALchar;
-
-/** signed 8-bit 2's complement integer */
-typedef char ALbyte;
-
-/** unsigned 8-bit integer */
-typedef unsigned char ALubyte;
-
-/** signed 16-bit 2's complement integer */
-typedef short ALshort;
-
-/** unsigned 16-bit integer */
-typedef unsigned short ALushort;
-
-/** signed 32-bit 2's complement integer */
-typedef int ALint;
-
-/** unsigned 32-bit integer */
-typedef unsigned int ALuint;
-
-/** non-negative 32-bit binary integer size */
-typedef int ALsizei;
-
-/** enumerated 32-bit value */
-typedef int ALenum;
-
-/** 32-bit IEEE754 floating-point */
-typedef float ALfloat;
-
-/** 64-bit IEEE754 floating-point */
-typedef double ALdouble;
-
-/** void type (for opaque pointers only) */
-typedef void ALvoid;
-
-
-/* Enumerant values begin at column 50. No tabs. */
-
-/* "no distance model" or "no buffer" */
-#define AL_NONE                                   0
-
-/* Boolean False. */
-#define AL_FALSE                                  0
-
-/** Boolean True. */
-#define AL_TRUE                                   1
-
-/** Indicate Source has relative coordinates. */
-#define AL_SOURCE_RELATIVE                        0x202
-
-
-
-/**
- * Directional source, inner cone angle, in degrees.
- * Range:    [0-360] 
- * Default:  360
- */
-#define AL_CONE_INNER_ANGLE                       0x1001
-
-/**
- * Directional source, outer cone angle, in degrees.
- * Range:    [0-360] 
- * Default:  360
- */
-#define AL_CONE_OUTER_ANGLE                       0x1002
-
-/**
- * Specify the pitch to be applied, either at source,
- *  or on mixer results, at listener.
- * Range:   [0.5-2.0]
- * Default: 1.0
- */
-#define AL_PITCH                                  0x1003
-  
-/** 
- * Specify the current location in three dimensional space.
- * OpenAL, like OpenGL, uses a right handed coordinate system,
- *  where in a frontal default view X (thumb) points right, 
- *  Y points up (index finger), and Z points towards the
- *  viewer/camera (middle finger). 
- * To switch from a left handed coordinate system, flip the
- *  sign on the Z coordinate.
- * Listener position is always in the world coordinate system.
- */ 
-#define AL_POSITION                               0x1004
-  
-/** Specify the current direction. */
-#define AL_DIRECTION                              0x1005
-  
-/** Specify the current velocity in three dimensional space. */
-#define AL_VELOCITY                               0x1006
-
-/**
- * Indicate whether source is looping.
- * Type: ALboolean?
- * Range:   [AL_TRUE, AL_FALSE]
- * Default: FALSE.
- */
-#define AL_LOOPING                                0x1007
-
-/**
- * Indicate the buffer to provide sound samples. 
- * Type: ALuint.
- * Range: any valid Buffer id.
- */
-#define AL_BUFFER                                 0x1009
-  
-/**
- * Indicate the gain (volume amplification) applied. 
- * Type:   ALfloat.
- * Range:  ]0.0-  ]
- * A value of 1.0 means un-attenuated/unchanged.
- * Each division by 2 equals an attenuation of -6dB.
- * Each multiplicaton with 2 equals an amplification of +6dB.
- * A value of 0.0 is meaningless with respect to a logarithmic
- *  scale; it is interpreted as zero volume - the channel
- *  is effectively disabled.
- */
-#define AL_GAIN                                   0x100A
-
-/*
- * Indicate minimum source attenuation
- * Type: ALfloat
- * Range:  [0.0 - 1.0]
- *
- * Logarthmic
- */
-#define AL_MIN_GAIN                               0x100D
-
-/**
- * Indicate maximum source attenuation
- * Type: ALfloat
- * Range:  [0.0 - 1.0]
- *
- * Logarthmic
- */
-#define AL_MAX_GAIN                               0x100E
-
-/**
- * Indicate listener orientation.
- *
- * at/up 
- */
-#define AL_ORIENTATION                            0x100F
-
-/**
- * Source state information.
- */
-#define AL_SOURCE_STATE                           0x1010
-#define AL_INITIAL                                0x1011
-#define AL_PLAYING                                0x1012
-#define AL_PAUSED                                 0x1013
-#define AL_STOPPED                                0x1014
-
-/**
- * Buffer Queue params
- */
-#define AL_BUFFERS_QUEUED                         0x1015
-#define AL_BUFFERS_PROCESSED                      0x1016
-
-/**
- * Source buffer position information
- */
-#define AL_SEC_OFFSET                             0x1024
-#define AL_SAMPLE_OFFSET                          0x1025
-#define AL_BYTE_OFFSET                            0x1026
-
-/*
- * Source type (Static, Streaming or undetermined)
- * Source is Static if a Buffer has been attached using AL_BUFFER
- * Source is Streaming if one or more Buffers have been attached using alSourceQueueBuffers
- * Source is undetermined when it has the NULL buffer attached
- */
-#define AL_SOURCE_TYPE                            0x1027
-#define AL_STATIC                                 0x1028
-#define AL_STREAMING                              0x1029
-#define AL_UNDETERMINED                           0x1030
-
-/** Sound samples: format specifier. */
-#define AL_FORMAT_MONO8                           0x1100
-#define AL_FORMAT_MONO16                          0x1101
-#define AL_FORMAT_STEREO8                         0x1102
-#define AL_FORMAT_STEREO16                        0x1103
-
-/**
- * source specific reference distance
- * Type: ALfloat
- * Range:  0.0 - +inf
- *
- * At 0.0, no distance attenuation occurs.  Default is
- * 1.0.
- */
-#define AL_REFERENCE_DISTANCE                     0x1020
-
-/**
- * source specific rolloff factor
- * Type: ALfloat
- * Range:  0.0 - +inf
- *
- */
-#define AL_ROLLOFF_FACTOR                         0x1021
-
-/**
- * Directional source, outer cone gain.
- *
- * Default:  0.0
- * Range:    [0.0 - 1.0]
- * Logarithmic
- */
-#define AL_CONE_OUTER_GAIN                        0x1022
-
-/**
- * Indicate distance above which sources are not
- * attenuated using the inverse clamped distance model.
- *
- * Default: +inf
- * Type: ALfloat
- * Range:  0.0 - +inf
- */
-#define AL_MAX_DISTANCE                           0x1023
-
-/** 
- * Sound samples: frequency, in units of Hertz [Hz].
- * This is the number of samples per second. Half of the
- *  sample frequency marks the maximum significant
- *  frequency component.
- */
-#define AL_FREQUENCY                              0x2001
-#define AL_BITS                                   0x2002
-#define AL_CHANNELS                               0x2003
-#define AL_SIZE                                   0x2004
-
-/**
- * Buffer state.
- *
- * Not supported for public use (yet).
- */
-#define AL_UNUSED                                 0x2010
-#define AL_PENDING                                0x2011
-#define AL_PROCESSED                              0x2012
-
-
-/** Errors: No Error. */
-#define AL_NO_ERROR                               AL_FALSE
-
-/** 
- * Invalid Name paramater passed to AL call.
- */
-#define AL_INVALID_NAME                           0xA001
-
-/** 
- * Invalid parameter passed to AL call.
- */
-#define AL_INVALID_ENUM                           0xA002
-
-/** 
- * Invalid enum parameter value.
- */
-#define AL_INVALID_VALUE                          0xA003
-
-/** 
- * Illegal call.
- */
-#define AL_INVALID_OPERATION                      0xA004
-
-  
-/**
- * No mojo.
- */
-#define AL_OUT_OF_MEMORY                          0xA005
-
-
-/** Context strings: Vendor Name. */
-#define AL_VENDOR                                 0xB001
-#define AL_VERSION                                0xB002
-#define AL_RENDERER                               0xB003
-#define AL_EXTENSIONS                             0xB004
-
-/** Global tweakage. */
-
-/**
- * Doppler scale.  Default 1.0
- */
-#define AL_DOPPLER_FACTOR                         0xC000
-
-/**
- * Tweaks speed of propagation.
- */
-#define AL_DOPPLER_VELOCITY                       0xC001
-
-/**
- * Speed of Sound in units per second
- */
-#define AL_SPEED_OF_SOUND                         0xC003
-
-/**
- * Distance models
- *
- * used in conjunction with DistanceModel
- *
- * implicit: NONE, which disances distance attenuation.
- */
-#define AL_DISTANCE_MODEL                         0xD000
-#define AL_INVERSE_DISTANCE                       0xD001
-#define AL_INVERSE_DISTANCE_CLAMPED               0xD002
-#define AL_LINEAR_DISTANCE                        0xD003
-#define AL_LINEAR_DISTANCE_CLAMPED                0xD004
-#define AL_EXPONENT_DISTANCE                      0xD005
-#define AL_EXPONENT_DISTANCE_CLAMPED              0xD006
-
-/*
- * Renderer State management
- */
-AL_API void AL_APIENTRY alEnable( ALenum capability );
-
-AL_API void AL_APIENTRY alDisable( ALenum capability ); 
-
-AL_API ALboolean AL_APIENTRY alIsEnabled( ALenum capability ); 
-
-
-/*
- * State retrieval
- */
-AL_API const ALchar* AL_APIENTRY alGetString( ALenum param );
-
-AL_API void AL_APIENTRY alGetBooleanv( ALenum param, ALboolean* data );
-
-AL_API void AL_APIENTRY alGetIntegerv( ALenum param, ALint* data );
-
-AL_API void AL_APIENTRY alGetFloatv( ALenum param, ALfloat* data );
-
-AL_API void AL_APIENTRY alGetDoublev( ALenum param, ALdouble* data );
-
-AL_API ALboolean AL_APIENTRY alGetBoolean( ALenum param );
-
-AL_API ALint AL_APIENTRY alGetInteger( ALenum param );
-
-AL_API ALfloat AL_APIENTRY alGetFloat( ALenum param );
-
-AL_API ALdouble AL_APIENTRY alGetDouble( ALenum param );
-
-
-/*
- * Error support.
- * Obtain the most recent error generated in the AL state machine.
- */
-AL_API ALenum AL_APIENTRY alGetError( void );
-
-
-/* 
- * Extension support.
- * Query for the presence of an extension, and obtain any appropriate
- * function pointers and enum values.
- */
-AL_API ALboolean AL_APIENTRY alIsExtensionPresent( const ALchar* extname );
-
-AL_API void* AL_APIENTRY alGetProcAddress( const ALchar* fname );
-
-AL_API ALenum AL_APIENTRY alGetEnumValue( const ALchar* ename );
-
-
-/*
- * LISTENER
- * Listener represents the location and orientation of the
- * 'user' in 3D-space.
- *
- * Properties include: -
- *
- * Gain         AL_GAIN         ALfloat
- * Position     AL_POSITION     ALfloat[3]
- * Velocity     AL_VELOCITY     ALfloat[3]
- * Orientation  AL_ORIENTATION  ALfloat[6] (Forward then Up vectors)
-*/
-
-/*
- * Set Listener parameters
- */
-AL_API void AL_APIENTRY alListenerf( ALenum param, ALfloat value );
-
-AL_API void AL_APIENTRY alListener3f( ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 );
-
-AL_API void AL_APIENTRY alListenerfv( ALenum param, const ALfloat* values ); 
-
-AL_API void AL_APIENTRY alListeneri( ALenum param, ALint value );
-
-AL_API void AL_APIENTRY alListener3i( ALenum param, ALint value1, ALint value2, ALint value3 );
-
-AL_API void AL_APIENTRY alListeneriv( ALenum param, const ALint* values );
-
-/*
- * Get Listener parameters
- */
-AL_API void AL_APIENTRY alGetListenerf( ALenum param, ALfloat* value );
-
-AL_API void AL_APIENTRY alGetListener3f( ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3 );
-
-AL_API void AL_APIENTRY alGetListenerfv( ALenum param, ALfloat* values );
-
-AL_API void AL_APIENTRY alGetListeneri( ALenum param, ALint* value );
-
-AL_API void AL_APIENTRY alGetListener3i( ALenum param, ALint *value1, ALint *value2, ALint *value3 );
-
-AL_API void AL_APIENTRY alGetListeneriv( ALenum param, ALint* values );
-
-
-/**
- * SOURCE
- * Sources represent individual sound objects in 3D-space.
- * Sources take the PCM data provided in the specified Buffer,
- * apply Source-specific modifications, and then
- * submit them to be mixed according to spatial arrangement etc.
- * 
- * Properties include: -
- *
- * Gain                              AL_GAIN                 ALfloat
- * Min Gain                          AL_MIN_GAIN             ALfloat
- * Max Gain                          AL_MAX_GAIN             ALfloat
- * Position                          AL_POSITION             ALfloat[3]
- * Velocity                          AL_VELOCITY             ALfloat[3]
- * Direction                         AL_DIRECTION            ALfloat[3]
- * Head Relative Mode                AL_SOURCE_RELATIVE      ALint (AL_TRUE or AL_FALSE)
- * Reference Distance                AL_REFERENCE_DISTANCE   ALfloat
- * Max Distance                      AL_MAX_DISTANCE         ALfloat
- * RollOff Factor                    AL_ROLLOFF_FACTOR       ALfloat
- * Inner Angle                       AL_CONE_INNER_ANGLE     ALint or ALfloat
- * Outer Angle                       AL_CONE_OUTER_ANGLE     ALint or ALfloat
- * Cone Outer Gain                   AL_CONE_OUTER_GAIN      ALint or ALfloat
- * Pitch                             AL_PITCH                ALfloat
- * Looping                           AL_LOOPING              ALint (AL_TRUE or AL_FALSE)
- * MS Offset                         AL_MSEC_OFFSET          ALint or ALfloat
- * Byte Offset                       AL_BYTE_OFFSET          ALint or ALfloat
- * Sample Offset                     AL_SAMPLE_OFFSET        ALint or ALfloat
- * Attached Buffer                   AL_BUFFER               ALint
- * State (Query only)                AL_SOURCE_STATE         ALint
- * Buffers Queued (Query only)       AL_BUFFERS_QUEUED       ALint
- * Buffers Processed (Query only)    AL_BUFFERS_PROCESSED    ALint
- */
-
-/* Create Source objects */
-AL_API void AL_APIENTRY alGenSources( ALsizei n, ALuint* sources ); 
-
-/* Delete Source objects */
-AL_API void AL_APIENTRY alDeleteSources( ALsizei n, const ALuint* sources );
-
-/* Verify a handle is a valid Source */ 
-AL_API ALboolean AL_APIENTRY alIsSource( ALuint sid ); 
-
-/*
- * Set Source parameters
- */
-AL_API void AL_APIENTRY alSourcef( ALuint sid, ALenum param, ALfloat value ); 
-
-AL_API void AL_APIENTRY alSource3f( ALuint sid, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 );
-
-AL_API void AL_APIENTRY alSourcefv( ALuint sid, ALenum param, const ALfloat* values ); 
-
-AL_API void AL_APIENTRY alSourcei( ALuint sid, ALenum param, ALint value ); 
-
-AL_API void AL_APIENTRY alSource3i( ALuint sid, ALenum param, ALint value1, ALint value2, ALint value3 );
-
-AL_API void AL_APIENTRY alSourceiv( ALuint sid, ALenum param, const ALint* values );
-
-/*
- * Get Source parameters
- */
-AL_API void AL_APIENTRY alGetSourcef( ALuint sid, ALenum param, ALfloat* value );
-
-AL_API void AL_APIENTRY alGetSource3f( ALuint sid, ALenum param, ALfloat* value1, ALfloat* value2, ALfloat* value3);
-
-AL_API void AL_APIENTRY alGetSourcefv( ALuint sid, ALenum param, ALfloat* values );
-
-AL_API void AL_APIENTRY alGetSourcei( ALuint sid,  ALenum param, ALint* value );
-
-AL_API void AL_APIENTRY alGetSource3i( ALuint sid, ALenum param, ALint* value1, ALint* value2, ALint* value3);
-
-AL_API void AL_APIENTRY alGetSourceiv( ALuint sid,  ALenum param, ALint* values );
-
-
-/*
- * Source vector based playback calls
- */
-
-/* Play, replay, or resume (if paused) a list of Sources */
-AL_API void AL_APIENTRY alSourcePlayv( ALsizei ns, const ALuint *sids );
-
-/* Stop a list of Sources */
-AL_API void AL_APIENTRY alSourceStopv( ALsizei ns, const ALuint *sids );
-
-/* Rewind a list of Sources */
-AL_API void AL_APIENTRY alSourceRewindv( ALsizei ns, const ALuint *sids );
-
-/* Pause a list of Sources */
-AL_API void AL_APIENTRY alSourcePausev( ALsizei ns, const ALuint *sids );
-
-/*
- * Source based playback calls
- */
-
-/* Play, replay, or resume a Source */
-AL_API void AL_APIENTRY alSourcePlay( ALuint sid );
-
-/* Stop a Source */
-AL_API void AL_APIENTRY alSourceStop( ALuint sid );
-
-/* Rewind a Source (set playback postiton to beginning) */
-AL_API void AL_APIENTRY alSourceRewind( ALuint sid );
-
-/* Pause a Source */
-AL_API void AL_APIENTRY alSourcePause( ALuint sid );
-
-/*
- * Source Queuing 
- */
-AL_API void AL_APIENTRY alSourceQueueBuffers( ALuint sid, ALsizei numEntries, const ALuint *bids );
-
-AL_API void AL_APIENTRY alSourceUnqueueBuffers( ALuint sid, ALsizei numEntries, ALuint *bids );
-
-
-/**
- * BUFFER
- * Buffer objects are storage space for sample data.
- * Buffers are referred to by Sources. One Buffer can be used
- * by multiple Sources.
- *
- * Properties include: -
- *
- * Frequency (Query only)    AL_FREQUENCY      ALint
- * Size (Query only)         AL_SIZE           ALint
- * Bits (Query only)         AL_BITS           ALint
- * Channels (Query only)     AL_CHANNELS       ALint
- */
-
-/* Create Buffer objects */
-AL_API void AL_APIENTRY alGenBuffers( ALsizei n, ALuint* buffers );
-
-/* Delete Buffer objects */
-AL_API void AL_APIENTRY alDeleteBuffers( ALsizei n, const ALuint* buffers );
-
-/* Verify a handle is a valid Buffer */
-AL_API ALboolean AL_APIENTRY alIsBuffer( ALuint bid );
-
-/* Specify the data to be copied into a buffer */
-AL_API void AL_APIENTRY alBufferData( ALuint bid, ALenum format, const ALvoid* data, ALsizei size, ALsizei freq );
-
-/*
- * Set Buffer parameters
- */
-AL_API void AL_APIENTRY alBufferf( ALuint bid, ALenum param, ALfloat value );
-
-AL_API void AL_APIENTRY alBuffer3f( ALuint bid, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 );
-
-AL_API void AL_APIENTRY alBufferfv( ALuint bid, ALenum param, const ALfloat* values );
-
-AL_API void AL_APIENTRY alBufferi( ALuint bid, ALenum param, ALint value );
-
-AL_API void AL_APIENTRY alBuffer3i( ALuint bid, ALenum param, ALint value1, ALint value2, ALint value3 );
-
-AL_API void AL_APIENTRY alBufferiv( ALuint bid, ALenum param, const ALint* values );
-
-/*
- * Get Buffer parameters
- */
-AL_API void AL_APIENTRY alGetBufferf( ALuint bid, ALenum param, ALfloat* value );
-
-AL_API void AL_APIENTRY alGetBuffer3f( ALuint bid, ALenum param, ALfloat* value1, ALfloat* value2, ALfloat* value3);
-
-AL_API void AL_APIENTRY alGetBufferfv( ALuint bid, ALenum param, ALfloat* values );
-
-AL_API void AL_APIENTRY alGetBufferi( ALuint bid, ALenum param, ALint* value );
-
-AL_API void AL_APIENTRY alGetBuffer3i( ALuint bid, ALenum param, ALint* value1, ALint* value2, ALint* value3);
-
-AL_API void AL_APIENTRY alGetBufferiv( ALuint bid, ALenum param, ALint* values );
-
-
-/*
- * Global Parameters
- */
-AL_API void AL_APIENTRY alDopplerFactor( ALfloat value );
-
-AL_API void AL_APIENTRY alDopplerVelocity( ALfloat value );
-
-AL_API void AL_APIENTRY alSpeedOfSound( ALfloat value );
-
-AL_API void AL_APIENTRY alDistanceModel( ALenum distanceModel );
-
-/*
- * Pointer-to-function types, useful for dynamically getting AL entry points.
- */
-typedef void           (AL_APIENTRY *LPALENABLE)( ALenum capability );
-typedef void           (AL_APIENTRY *LPALDISABLE)( ALenum capability ); 
-typedef ALboolean      (AL_APIENTRY *LPALISENABLED)( ALenum capability ); 
-typedef const ALchar*  (AL_APIENTRY *LPALGETSTRING)( ALenum param );
-typedef void           (AL_APIENTRY *LPALGETBOOLEANV)( ALenum param, ALboolean* data );
-typedef void           (AL_APIENTRY *LPALGETINTEGERV)( ALenum param, ALint* data );
-typedef void           (AL_APIENTRY *LPALGETFLOATV)( ALenum param, ALfloat* data );
-typedef void           (AL_APIENTRY *LPALGETDOUBLEV)( ALenum param, ALdouble* data );
-typedef ALboolean      (AL_APIENTRY *LPALGETBOOLEAN)( ALenum param );
-typedef ALint          (AL_APIENTRY *LPALGETINTEGER)( ALenum param );
-typedef ALfloat        (AL_APIENTRY *LPALGETFLOAT)( ALenum param );
-typedef ALdouble       (AL_APIENTRY *LPALGETDOUBLE)( ALenum param );
-typedef ALenum         (AL_APIENTRY *LPALGETERROR)( void );
-typedef ALboolean      (AL_APIENTRY *LPALISEXTENSIONPRESENT)(const ALchar* extname );
-typedef void*          (AL_APIENTRY *LPALGETPROCADDRESS)( const ALchar* fname );
-typedef ALenum         (AL_APIENTRY *LPALGETENUMVALUE)( const ALchar* ename );
-typedef void           (AL_APIENTRY *LPALLISTENERF)( ALenum param, ALfloat value );
-typedef void           (AL_APIENTRY *LPALLISTENER3F)( ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 );
-typedef void           (AL_APIENTRY *LPALLISTENERFV)( ALenum param, const ALfloat* values );
-typedef void           (AL_APIENTRY *LPALLISTENERI)( ALenum param, ALint value );
-typedef void           (AL_APIENTRY *LPALLISTENER3I)( ALenum param, ALint value1, ALint value2, ALint value3 );
-typedef void           (AL_APIENTRY *LPALLISTENERIV)( ALenum param, const ALint* values );
-typedef void           (AL_APIENTRY *LPALGETLISTENERF)( ALenum param, ALfloat* value );
-typedef void           (AL_APIENTRY *LPALGETLISTENER3F)( ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3 );
-typedef void           (AL_APIENTRY *LPALGETLISTENERFV)( ALenum param, ALfloat* values );
-typedef void           (AL_APIENTRY *LPALGETLISTENERI)( ALenum param, ALint* value );
-typedef void           (AL_APIENTRY *LPALGETLISTENER3I)( ALenum param, ALint *value1, ALint *value2, ALint *value3 );
-typedef void           (AL_APIENTRY *LPALGETLISTENERIV)( ALenum param, ALint* values );
-typedef void           (AL_APIENTRY *LPALGENSOURCES)( ALsizei n, ALuint* sources ); 
-typedef void           (AL_APIENTRY *LPALDELETESOURCES)( ALsizei n, const ALuint* sources );
-typedef ALboolean      (AL_APIENTRY *LPALISSOURCE)( ALuint sid ); 
-typedef void           (AL_APIENTRY *LPALSOURCEF)( ALuint sid, ALenum param, ALfloat value); 
-typedef void           (AL_APIENTRY *LPALSOURCE3F)( ALuint sid, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 );
-typedef void           (AL_APIENTRY *LPALSOURCEFV)( ALuint sid, ALenum param, const ALfloat* values );
-typedef void           (AL_APIENTRY *LPALSOURCEI)( ALuint sid, ALenum param, ALint value); 
-typedef void           (AL_APIENTRY *LPALSOURCE3I)( ALuint sid, ALenum param, ALint value1, ALint value2, ALint value3 );
-typedef void           (AL_APIENTRY *LPALSOURCEIV)( ALuint sid, ALenum param, const ALint* values );
-typedef void           (AL_APIENTRY *LPALGETSOURCEF)( ALuint sid, ALenum param, ALfloat* value );
-typedef void           (AL_APIENTRY *LPALGETSOURCE3F)( ALuint sid, ALenum param, ALfloat* value1, ALfloat* value2, ALfloat* value3);
-typedef void           (AL_APIENTRY *LPALGETSOURCEFV)( ALuint sid, ALenum param, ALfloat* values );
-typedef void           (AL_APIENTRY *LPALGETSOURCEI)( ALuint sid, ALenum param, ALint* value );
-typedef void           (AL_APIENTRY *LPALGETSOURCE3I)( ALuint sid, ALenum param, ALint* value1, ALint* value2, ALint* value3);
-typedef void           (AL_APIENTRY *LPALGETSOURCEIV)( ALuint sid, ALenum param, ALint* values );
-typedef void           (AL_APIENTRY *LPALSOURCEPLAYV)( ALsizei ns, const ALuint *sids );
-typedef void           (AL_APIENTRY *LPALSOURCESTOPV)( ALsizei ns, const ALuint *sids );
-typedef void           (AL_APIENTRY *LPALSOURCEREWINDV)( ALsizei ns, const ALuint *sids );
-typedef void           (AL_APIENTRY *LPALSOURCEPAUSEV)( ALsizei ns, const ALuint *sids );
-typedef void           (AL_APIENTRY *LPALSOURCEPLAY)( ALuint sid );
-typedef void           (AL_APIENTRY *LPALSOURCESTOP)( ALuint sid );
-typedef void           (AL_APIENTRY *LPALSOURCEREWIND)( ALuint sid );
-typedef void           (AL_APIENTRY *LPALSOURCEPAUSE)( ALuint sid );
-typedef void           (AL_APIENTRY *LPALSOURCEQUEUEBUFFERS)(ALuint sid, ALsizei numEntries, const ALuint *bids );
-typedef void           (AL_APIENTRY *LPALSOURCEUNQUEUEBUFFERS)(ALuint sid, ALsizei numEntries, ALuint *bids );
-typedef void           (AL_APIENTRY *LPALGENBUFFERS)( ALsizei n, ALuint* buffers );
-typedef void           (AL_APIENTRY *LPALDELETEBUFFERS)( ALsizei n, const ALuint* buffers );
-typedef ALboolean      (AL_APIENTRY *LPALISBUFFER)( ALuint bid );
-typedef void           (AL_APIENTRY *LPALBUFFERDATA)( ALuint bid, ALenum format, const ALvoid* data, ALsizei size, ALsizei freq );
-typedef void           (AL_APIENTRY *LPALBUFFERF)( ALuint bid, ALenum param, ALfloat value);
-typedef void           (AL_APIENTRY *LPALBUFFER3F)( ALuint bid, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 );
-typedef void           (AL_APIENTRY *LPALBUFFERFV)( ALuint bid, ALenum param, const ALfloat* values );
-typedef void           (AL_APIENTRY *LPALBUFFERI)( ALuint bid, ALenum param, ALint value);
-typedef void           (AL_APIENTRY *LPALBUFFER3I)( ALuint bid, ALenum param, ALint value1, ALint value2, ALint value3 );
-typedef void           (AL_APIENTRY *LPALBUFFERIV)( ALuint bid, ALenum param, const ALint* values );
-typedef void           (AL_APIENTRY *LPALGETBUFFERF)( ALuint bid, ALenum param, ALfloat* value );
-typedef void           (AL_APIENTRY *LPALGETBUFFER3F)( ALuint bid, ALenum param, ALfloat* value1, ALfloat* value2, ALfloat* value3);
-typedef void           (AL_APIENTRY *LPALGETBUFFERFV)( ALuint bid, ALenum param, ALfloat* values );
-typedef void           (AL_APIENTRY *LPALGETBUFFERI)( ALuint bid, ALenum param, ALint* value );
-typedef void           (AL_APIENTRY *LPALGETBUFFER3I)( ALuint bid, ALenum param, ALint* value1, ALint* value2, ALint* value3);
-typedef void           (AL_APIENTRY *LPALGETBUFFERIV)( ALuint bid, ALenum param, ALint* values );
-typedef void           (AL_APIENTRY *LPALDOPPLERFACTOR)( ALfloat value );
-typedef void           (AL_APIENTRY *LPALDOPPLERVELOCITY)( ALfloat value );
-typedef void           (AL_APIENTRY *LPALSPEEDOFSOUND)( ALfloat value );
-typedef void           (AL_APIENTRY *LPALDISTANCEMODEL)( ALenum distanceModel );
-
-#if defined(TARGET_OS_MAC) && TARGET_OS_MAC
- #pragma export off
-#endif
-
-#if defined(__cplusplus)
-}  /* extern "C" */
-#endif
-
-#endif /* AL_AL_H */
diff --git a/dependencies64/sfml/extlibs/headers/AL/alc.h b/dependencies64/sfml/extlibs/headers/AL/alc.h
deleted file mode 100644 (file)
index b0bbfbe..0000000
+++ /dev/null
@@ -1,281 +0,0 @@
-#ifndef AL_ALC_H
-#define AL_ALC_H
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-#if defined(_WIN32) && !defined(_XBOX)
- /* _OPENAL32LIB is deprecated */
- #if defined(AL_BUILD_LIBRARY) || defined (_OPENAL32LIB)
-  #define ALC_API __declspec(dllexport)
- #else
-  #define ALC_API __declspec(dllimport)
- #endif
-#else
- #if defined(AL_BUILD_LIBRARY) && defined(HAVE_GCC_VISIBILITY)
-  #define ALC_API __attribute__((visibility("default")))
- #else
-  #define ALC_API extern
- #endif
-#endif
-
-#if defined(_WIN32)
- #define ALC_APIENTRY __cdecl
-#else
- #define ALC_APIENTRY
-#endif
-
-#if defined(TARGET_OS_MAC) && TARGET_OS_MAC
- #pragma export on
-#endif
-
-/*
- * The ALCAPI, ALCAPIENTRY, and ALC_INVALID macros are deprecated, but are
- * included for applications porting code from AL 1.0
- */
-#define ALCAPI ALC_API
-#define ALCAPIENTRY ALC_APIENTRY
-#define ALC_INVALID 0
-
-
-#define ALC_VERSION_0_1         1
-
-typedef struct ALCdevice_struct ALCdevice;
-typedef struct ALCcontext_struct ALCcontext;
-
-
-/** 8-bit boolean */
-typedef char ALCboolean;
-
-/** character */
-typedef char ALCchar;
-
-/** signed 8-bit 2's complement integer */
-typedef char ALCbyte;
-
-/** unsigned 8-bit integer */
-typedef unsigned char ALCubyte;
-
-/** signed 16-bit 2's complement integer */
-typedef short ALCshort;
-
-/** unsigned 16-bit integer */
-typedef unsigned short ALCushort;
-
-/** signed 32-bit 2's complement integer */
-typedef int ALCint;
-
-/** unsigned 32-bit integer */
-typedef unsigned int ALCuint;
-
-/** non-negative 32-bit binary integer size */
-typedef int ALCsizei;
-
-/** enumerated 32-bit value */
-typedef int ALCenum;
-
-/** 32-bit IEEE754 floating-point */
-typedef float ALCfloat;
-
-/** 64-bit IEEE754 floating-point */
-typedef double ALCdouble;
-
-/** void type (for opaque pointers only) */
-typedef void ALCvoid;
-
-
-/* Enumerant values begin at column 50. No tabs. */
-
-/* Boolean False. */
-#define ALC_FALSE                                0
-
-/* Boolean True. */
-#define ALC_TRUE                                 1
-
-/**
- * followed by <int> Hz
- */
-#define ALC_FREQUENCY                            0x1007
-
-/**
- * followed by <int> Hz
- */
-#define ALC_REFRESH                              0x1008
-
-/**
- * followed by AL_TRUE, AL_FALSE
- */
-#define ALC_SYNC                                 0x1009
-
-/**
- * followed by <int> Num of requested Mono (3D) Sources
- */
-#define ALC_MONO_SOURCES                         0x1010
-
-/**
- * followed by <int> Num of requested Stereo Sources
- */
-#define ALC_STEREO_SOURCES                       0x1011
-
-/**
- * errors
- */
-
-/**
- * No error
- */
-#define ALC_NO_ERROR                             ALC_FALSE
-
-/**
- * No device
- */
-#define ALC_INVALID_DEVICE                       0xA001
-
-/**
- * invalid context ID
- */
-#define ALC_INVALID_CONTEXT                      0xA002
-
-/**
- * bad enum
- */
-#define ALC_INVALID_ENUM                         0xA003
-
-/**
- * bad value
- */
-#define ALC_INVALID_VALUE                        0xA004
-
-/**
- * Out of memory.
- */
-#define ALC_OUT_OF_MEMORY                        0xA005
-
-
-/**
- * The Specifier string for default device
- */
-#define ALC_DEFAULT_DEVICE_SPECIFIER             0x1004
-#define ALC_DEVICE_SPECIFIER                     0x1005
-#define ALC_EXTENSIONS                           0x1006
-
-#define ALC_MAJOR_VERSION                        0x1000
-#define ALC_MINOR_VERSION                        0x1001
-
-#define ALC_ATTRIBUTES_SIZE                      0x1002
-#define ALC_ALL_ATTRIBUTES                       0x1003
-
-/**
- * ALC_ENUMERATE_ALL_EXT enums
- */
-#define ALC_DEFAULT_ALL_DEVICES_SPECIFIER        0x1012
-#define ALC_ALL_DEVICES_SPECIFIER                0x1013
-
-/**
- * Capture extension
- */
-#define ALC_CAPTURE_DEVICE_SPECIFIER             0x310
-#define ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER     0x311
-#define ALC_CAPTURE_SAMPLES                      0x312
-
-
-/*
- * Context Management
- */
-ALC_API ALCcontext *    ALC_APIENTRY alcCreateContext( ALCdevice *device, const ALCint* attrlist );
-
-ALC_API ALCboolean      ALC_APIENTRY alcMakeContextCurrent( ALCcontext *context );
-
-ALC_API void            ALC_APIENTRY alcProcessContext( ALCcontext *context );
-
-ALC_API void            ALC_APIENTRY alcSuspendContext( ALCcontext *context );
-
-ALC_API void            ALC_APIENTRY alcDestroyContext( ALCcontext *context );
-
-ALC_API ALCcontext *    ALC_APIENTRY alcGetCurrentContext( void );
-
-ALC_API ALCdevice*      ALC_APIENTRY alcGetContextsDevice( ALCcontext *context );
-
-
-/*
- * Device Management
- */
-ALC_API ALCdevice *     ALC_APIENTRY alcOpenDevice( const ALCchar *devicename );
-
-ALC_API ALCboolean      ALC_APIENTRY alcCloseDevice( ALCdevice *device );
-
-
-/*
- * Error support.
- * Obtain the most recent Context error
- */
-ALC_API ALCenum         ALC_APIENTRY alcGetError( ALCdevice *device );
-
-
-/* 
- * Extension support.
- * Query for the presence of an extension, and obtain any appropriate
- * function pointers and enum values.
- */
-ALC_API ALCboolean      ALC_APIENTRY alcIsExtensionPresent( ALCdevice *device, const ALCchar *extname );
-
-ALC_API void  *         ALC_APIENTRY alcGetProcAddress( ALCdevice *device, const ALCchar *funcname );
-
-ALC_API ALCenum         ALC_APIENTRY alcGetEnumValue( ALCdevice *device, const ALCchar *enumname );
-
-
-/*
- * Query functions
- */
-ALC_API const ALCchar * ALC_APIENTRY alcGetString( ALCdevice *device, ALCenum param );
-
-ALC_API void            ALC_APIENTRY alcGetIntegerv( ALCdevice *device, ALCenum param, ALCsizei size, ALCint *data );
-
-
-/*
- * Capture functions
- */
-ALC_API ALCdevice*      ALC_APIENTRY alcCaptureOpenDevice( const ALCchar *devicename, ALCuint frequency, ALCenum format, ALCsizei buffersize );
-
-ALC_API ALCboolean      ALC_APIENTRY alcCaptureCloseDevice( ALCdevice *device );
-
-ALC_API void            ALC_APIENTRY alcCaptureStart( ALCdevice *device );
-
-ALC_API void            ALC_APIENTRY alcCaptureStop( ALCdevice *device );
-
-ALC_API void            ALC_APIENTRY alcCaptureSamples( ALCdevice *device, ALCvoid *buffer, ALCsizei samples );
-
-/*
- * Pointer-to-function types, useful for dynamically getting ALC entry points.
- */
-typedef ALCcontext *   (ALC_APIENTRY *LPALCCREATECONTEXT) (ALCdevice *device, const ALCint *attrlist);
-typedef ALCboolean     (ALC_APIENTRY *LPALCMAKECONTEXTCURRENT)( ALCcontext *context );
-typedef void           (ALC_APIENTRY *LPALCPROCESSCONTEXT)( ALCcontext *context );
-typedef void           (ALC_APIENTRY *LPALCSUSPENDCONTEXT)( ALCcontext *context );
-typedef void           (ALC_APIENTRY *LPALCDESTROYCONTEXT)( ALCcontext *context );
-typedef ALCcontext *   (ALC_APIENTRY *LPALCGETCURRENTCONTEXT)( void );
-typedef ALCdevice *    (ALC_APIENTRY *LPALCGETCONTEXTSDEVICE)( ALCcontext *context );
-typedef ALCdevice *    (ALC_APIENTRY *LPALCOPENDEVICE)( const ALCchar *devicename );
-typedef ALCboolean     (ALC_APIENTRY *LPALCCLOSEDEVICE)( ALCdevice *device );
-typedef ALCenum        (ALC_APIENTRY *LPALCGETERROR)( ALCdevice *device );
-typedef ALCboolean     (ALC_APIENTRY *LPALCISEXTENSIONPRESENT)( ALCdevice *device, const ALCchar *extname );
-typedef void *         (ALC_APIENTRY *LPALCGETPROCADDRESS)(ALCdevice *device, const ALCchar *funcname );
-typedef ALCenum        (ALC_APIENTRY *LPALCGETENUMVALUE)(ALCdevice *device, const ALCchar *enumname );
-typedef const ALCchar* (ALC_APIENTRY *LPALCGETSTRING)( ALCdevice *device, ALCenum param );
-typedef void           (ALC_APIENTRY *LPALCGETINTEGERV)( ALCdevice *device, ALCenum param, ALCsizei size, ALCint *dest );
-typedef ALCdevice *    (ALC_APIENTRY *LPALCCAPTUREOPENDEVICE)( const ALCchar *devicename, ALCuint frequency, ALCenum format, ALCsizei buffersize );
-typedef ALCboolean     (ALC_APIENTRY *LPALCCAPTURECLOSEDEVICE)( ALCdevice *device );
-typedef void           (ALC_APIENTRY *LPALCCAPTURESTART)( ALCdevice *device );
-typedef void           (ALC_APIENTRY *LPALCCAPTURESTOP)( ALCdevice *device );
-typedef void           (ALC_APIENTRY *LPALCCAPTURESAMPLES)( ALCdevice *device, ALCvoid *buffer, ALCsizei samples );
-
-#if defined(TARGET_OS_MAC) && TARGET_OS_MAC
- #pragma export off
-#endif
-
-#if defined(__cplusplus)
-}
-#endif
-
-#endif /* AL_ALC_H */
diff --git a/dependencies64/sfml/extlibs/headers/AL/alext.h b/dependencies64/sfml/extlibs/headers/AL/alext.h
deleted file mode 100644 (file)
index 2c72d9c..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/**
- * OpenAL cross platform audio library
- * Copyright (C) 2008 by authors.
- * This library is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Library General Public
- *  License as published by the Free Software Foundation; either
- *  version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- *  Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- *  License along with this library; if not, write to the
- *  Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- *  Boston, MA  02111-1307, USA.
- * Or go to http://www.gnu.org/copyleft/lgpl.html
- */
-
-#ifndef AL_ALEXT_H
-#define AL_ALEXT_H
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#ifndef AL_EXT_float32
-#define AL_EXT_float32 1
-#define AL_FORMAT_MONO_FLOAT32                   0x10010
-#define AL_FORMAT_STEREO_FLOAT32                 0x10011
-#endif
-
-#ifndef AL_LOKI_quadriphonic
-#define AL_LOKI_quadriphonic 1
-#define AL_FORMAT_QUAD8_LOKI                     0x10004
-#define AL_FORMAT_QUAD16_LOKI                    0x10005
-#endif
-
-#ifndef AL_EXT_MCFORMATS
-#define AL_EXT_MCFORMATS 1
-#define AL_FORMAT_QUAD8                          0x1204
-#define AL_FORMAT_QUAD16                         0x1205
-#define AL_FORMAT_QUAD32                         0x1206
-#define AL_FORMAT_REAR8                          0x1207
-#define AL_FORMAT_REAR16                         0x1208
-#define AL_FORMAT_REAR32                         0x1209
-#define AL_FORMAT_51CHN8                         0x120A
-#define AL_FORMAT_51CHN16                        0x120B
-#define AL_FORMAT_51CHN32                        0x120C
-#define AL_FORMAT_61CHN8                         0x120D
-#define AL_FORMAT_61CHN16                        0x120E
-#define AL_FORMAT_61CHN32                        0x120F
-#define AL_FORMAT_71CHN8                         0x1210
-#define AL_FORMAT_71CHN16                        0x1211
-#define AL_FORMAT_71CHN32                        0x1212
-#endif
-
-#ifndef AL_EXT_IMA4
-#define AL_EXT_IMA4 1
-#define AL_FORMAT_MONO_IMA4                      0x1300
-#define AL_FORMAT_STEREO_IMA4                    0x1301
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/dependencies64/sfml/extlibs/headers/freetype/cache/ftccache.h b/dependencies64/sfml/extlibs/headers/freetype/cache/ftccache.h
deleted file mode 100644 (file)
index f2e1028..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftccache.h                                                             */
-/*                                                                         */
-/*    FreeType internal cache interface (specification).                   */
-/*                                                                         */
-/*  Copyright 2000-2001, 2002, 2003, 2004, 2005 by                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTCCACHE_H__
-#define __FTCCACHE_H__
-
-
-#include FT_CACHE_INTERNAL_MRU_H
-
-FT_BEGIN_HEADER
-
-  /* handle to cache object */
-  typedef struct FTC_CacheRec_*  FTC_Cache;
-
-  /* handle to cache class */
-  typedef const struct FTC_CacheClassRec_*  FTC_CacheClass;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                   CACHE NODE DEFINITIONS                      *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Each cache controls one or more cache nodes.  Each node is part of    */
-  /* the global_lru list of the manager.  Its `data' field however is used */
-  /* as a reference count for now.                                         */
-  /*                                                                       */
-  /* A node can be anything, depending on the type of information held by  */
-  /* the cache.  It can be an individual glyph image, a set of bitmaps     */
-  /* glyphs for a given size, some metrics, etc.                           */
-  /*                                                                       */
-  /*************************************************************************/
-
-  /* structure size should be 20 bytes on 32-bits machines */
-  typedef struct  FTC_NodeRec_
-  {
-    FTC_MruNodeRec  mru;          /* circular mru list pointer           */
-    FTC_Node        link;         /* used for hashing                    */
-    FT_UInt32       hash;         /* used for hashing too                */
-    FT_UShort       cache_index;  /* index of cache the node belongs to  */
-    FT_Short        ref_count;    /* reference count for this node       */
-
-  } FTC_NodeRec;
-
-
-#define FTC_NODE( x )    ( (FTC_Node)(x) )
-#define FTC_NODE_P( x )  ( (FTC_Node*)(x) )
-
-#define FTC_NODE__NEXT(x)  FTC_NODE( (x)->mru.next )
-#define FTC_NODE__PREV(x)  FTC_NODE( (x)->mru.prev )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* These functions are exported so that they can be called from          */
-  /* user-provided cache classes; otherwise, they are really part of the   */
-  /* cache sub-system internals.                                           */
-  /*                                                                       */
-
-  /* reserved for manager's use */
-  FT_EXPORT( void )
-  ftc_node_destroy( FTC_Node     node,
-                    FTC_Manager  manager );
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                       CACHE DEFINITIONS                       *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /* initialize a new cache node */
-  typedef FT_Error
-  (*FTC_Node_NewFunc)( FTC_Node    *pnode,
-                       FT_Pointer   query,
-                       FTC_Cache    cache );
-
-  typedef FT_ULong
-  (*FTC_Node_WeightFunc)( FTC_Node   node,
-                          FTC_Cache  cache );
-
-  /* compare a node to a given key pair */
-  typedef FT_Bool
-  (*FTC_Node_CompareFunc)( FTC_Node    node,
-                           FT_Pointer  key,
-                           FTC_Cache   cache );
-
-
-  typedef void
-  (*FTC_Node_FreeFunc)( FTC_Node   node,
-                        FTC_Cache  cache );
-
-  typedef FT_Error
-  (*FTC_Cache_InitFunc)( FTC_Cache  cache );
-
-  typedef void
-  (*FTC_Cache_DoneFunc)( FTC_Cache  cache );
-
-
-  typedef struct  FTC_CacheClassRec_
-  {
-    FTC_Node_NewFunc      node_new;
-    FTC_Node_WeightFunc   node_weight;
-    FTC_Node_CompareFunc  node_compare;
-    FTC_Node_CompareFunc  node_remove_faceid;
-    FTC_Node_FreeFunc     node_free;
-
-    FT_UInt               cache_size;
-    FTC_Cache_InitFunc    cache_init;
-    FTC_Cache_DoneFunc    cache_done;
-
-  } FTC_CacheClassRec;
-
-
-  /* each cache really implements a dynamic hash table to manage its nodes */
-  typedef struct  FTC_CacheRec_
-  {
-    FT_UFast           p;
-    FT_UFast           mask;
-    FT_Long            slack;
-    FTC_Node*          buckets;
-
-    FTC_CacheClassRec  clazz;       /* local copy, for speed  */
-
-    FTC_Manager        manager;
-    FT_Memory          memory;
-    FT_UInt            index;       /* in manager's table     */
-
-    FTC_CacheClass     org_class;   /* original class pointer */
-
-  } FTC_CacheRec;
-
-
-#define FTC_CACHE( x )    ( (FTC_Cache)(x) )
-#define FTC_CACHE_P( x )  ( (FTC_Cache*)(x) )
-
-
-  /* default cache initialize */
-  FT_EXPORT( FT_Error )
-  FTC_Cache_Init( FTC_Cache  cache );
-
-  /* default cache finalizer */
-  FT_EXPORT( void )
-  FTC_Cache_Done( FTC_Cache  cache );
-
-  /* Call this function to lookup the cache.  If no corresponding
-   * node is found, a new one is automatically created.  This function
-   * is capable of flushing the cache adequately to make room for the
-   * new cache object.
-   */
-  FT_EXPORT( FT_Error )
-  FTC_Cache_Lookup( FTC_Cache   cache,
-                    FT_UInt32   hash,
-                    FT_Pointer  query,
-                    FTC_Node   *anode );
-
-  FT_EXPORT( FT_Error )
-  FTC_Cache_NewNode( FTC_Cache   cache,
-                     FT_UInt32   hash,
-                     FT_Pointer  query,
-                     FTC_Node   *anode );
-
-  /* Remove all nodes that relate to a given face_id.  This is useful
-   * when un-installing fonts.  Note that if a cache node relates to
-   * the face_id, but is locked (i.e., has 'ref_count > 0'), the node
-   * will _not_ be destroyed, but its internal face_id reference will
-   * be modified.
-   *
-   * The final result will be that the node will never come back
-   * in further lookup requests, and will be flushed on demand from
-   * the cache normally when its reference count reaches 0.
-   */
-  FT_EXPORT( void )
-  FTC_Cache_RemoveFaceID( FTC_Cache   cache,
-                          FTC_FaceID  face_id );
-
-
-#ifdef FTC_INLINE
-
-#define FTC_CACHE_LOOKUP_CMP( cache, nodecmp, hash, query, node, error ) \
-  FT_BEGIN_STMNT                                                         \
-    FTC_Node             *_bucket, *_pnode, _node;                       \
-    FTC_Cache             _cache   = FTC_CACHE(cache);                   \
-    FT_UInt32             _hash    = (FT_UInt32)(hash);                  \
-    FTC_Node_CompareFunc  _nodcomp = (FTC_Node_CompareFunc)(nodecmp);    \
-    FT_UInt               _idx;                                          \
-                                                                         \
-                                                                         \
-    error = 0;                                                           \
-    node  = NULL;                                                        \
-    _idx  = _hash & _cache->mask;                                        \
-    if ( _idx < _cache->p )                                              \
-      _idx = _hash & ( _cache->mask*2 + 1 );                             \
-                                                                         \
-    _bucket = _pnode = _cache->buckets + _idx;                           \
-    for (;;)                                                             \
-    {                                                                    \
-      _node = *_pnode;                                                   \
-      if ( _node == NULL )                                               \
-        goto _NewNode;                                                   \
-                                                                         \
-      if ( _node->hash == _hash && _nodcomp( _node, query, _cache ) )    \
-        break;                                                           \
-                                                                         \
-      _pnode = &_node->link;                                             \
-    }                                                                    \
-                                                                         \
-    if ( _node != *_bucket )                                             \
-    {                                                                    \
-      *_pnode     = _node->link;                                         \
-      _node->link = *_bucket;                                            \
-      *_bucket    = _node;                                               \
-    }                                                                    \
-                                                                         \
-    {                                                                    \
-      FTC_Manager  _manager = _cache->manager;                           \
-                                                                         \
-                                                                         \
-      if ( _node != _manager->nodes_list )                               \
-        FTC_MruNode_Up( (FTC_MruNode*)&_manager->nodes_list,             \
-                        (FTC_MruNode)_node );                            \
-    }                                                                    \
-    goto _Ok;                                                            \
-                                                                         \
-  _NewNode:                                                              \
-    error = FTC_Cache_NewNode( _cache, _hash, query, &_node );           \
-                                                                         \
-  _Ok:                                                                   \
-    _pnode = (FTC_Node*)(void*)&(node);                                  \
-    *_pnode = _node;                                                     \
-  FT_END_STMNT
-
-#else /* !FTC_INLINE */
-
-#define FTC_CACHE_LOOKUP_CMP( cache, nodecmp, hash, query, node, error ) \
-  FT_BEGIN_STMNT                                                         \
-    error = FTC_Cache_Lookup( FTC_CACHE( cache ), hash, query,           \
-                              (FTC_Node*)&(node) );                      \
-  FT_END_STMNT
-
-#endif /* !FTC_INLINE */
-
-
-  /*
-   * This macro, together with FTC_CACHE_TRYLOOP_END, defines a retry
-   * loop to flush the cache repeatedly in case of memory overflows.
-   *
-   * It is used when creating a new cache node, or within a lookup
-   * that needs to allocate data (e.g., the sbit cache lookup).
-   * 
-   * Example:
-   *
-   *   {
-   *     FTC_CACHE_TRYLOOP( cache )
-   *       error = load_data( ... );
-   *     FTC_CACHE_TRYLOOP_END()
-   *   }
-   *
-   */
-#define FTC_CACHE_TRYLOOP( cache )                           \
-  {                                                          \
-    FTC_Manager  _try_manager = FTC_CACHE( cache )->manager; \
-    FT_UInt      _try_count   = 4;                           \
-                                                             \
-                                                             \
-    for (;;)                                                 \
-    {                                                        \
-      FT_UInt  _try_done;
-
-
-#define FTC_CACHE_TRYLOOP_END()                                   \
-      if ( !error || error != FT_Err_Out_Of_Memory )              \
-        break;                                                    \
-                                                                  \
-      _try_done = FTC_Manager_FlushN( _try_manager, _try_count ); \
-      if ( _try_done == 0 )                                       \
-        break;                                                    \
-                                                                  \
-      if ( _try_done == _try_count )                              \
-      {                                                           \
-        _try_count *= 2;                                          \
-        if ( _try_count < _try_done              ||               \
-            _try_count > _try_manager->num_nodes )                \
-          _try_count = _try_manager->num_nodes;                   \
-      }                                                           \
-    }                                                             \
-  }
-
- /* */
-
-FT_END_HEADER
-
-
-#endif /* __FTCCACHE_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/cache/ftccmap.h b/dependencies64/sfml/extlibs/headers/freetype/cache/ftccmap.h
deleted file mode 100644 (file)
index a41989b..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftccmap.h                                                              */
-/*                                                                         */
-/*    FreeType charmap cache (specification).                              */
-/*                                                                         */
-/*  Copyright 2000-2001, 2003 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTCCMAP_H__
-#define __FTCCMAP_H__
-
-#include <ft2build.h>
-#include FT_CACHE_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    cache_subsystem                                                    */
-  /*                                                                       */
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @type:                                                                */
-  /*    FTC_CMapCache                                                      */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    An opaque handle used to manager a charmap cache.  This cache is   */
-  /*    to hold character codes -> glyph indices mappings.                 */
-  /*                                                                       */
-  typedef struct FTC_CMapCacheRec_*  FTC_CMapCache;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @type:                                                                */
-  /*    FTC_CMapDesc                                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A handle to an @FTC_CMapDescRec structure used to describe a given */
-  /*    charmap in a charmap cache.                                        */
-  /*                                                                       */
-  /*    Each @FTC_CMapDesc describes which charmap (of which @FTC_FaceID)  */
-  /*    we want to use in @FTC_CMapCache_Lookup.                           */
-  /*                                                                       */
-  typedef struct FTC_CMapDescRec_*  FTC_CMapDesc;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @enum:                                                                */
-  /*    FTC_CMapType                                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    The list of valid @FTC_CMapDesc types.  They indicate how we want  */
-  /*    to address a charmap within an @FTC_FaceID.                        */
-  /*                                                                       */
-  /* @values:                                                              */
-  /*    FTC_CMAP_BY_INDEX ::                                               */
-  /*      Address a charmap by its index in the corresponding @FT_Face.    */
-  /*                                                                       */
-  /*    FTC_CMAP_BY_ENCODING ::                                            */
-  /*      Use a @FT_Face charmap that corresponds to a given encoding.     */
-  /*                                                                       */
-  /*    FTC_CMAP_BY_ID ::                                                  */
-  /*      Use an @FT_Face charmap that corresponds to a given              */
-  /*      (platform,encoding) ID.  See @FTC_CMapIdRec.                     */
-  /*                                                                       */
-  typedef enum  FTC_CMapType_
-  {
-    FTC_CMAP_BY_INDEX    = 0,
-    FTC_CMAP_BY_ENCODING = 1,
-    FTC_CMAP_BY_ID       = 2
-
-  } FTC_CMapType;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @struct:                                                              */
-  /*    FTC_CMapIdRec                                                      */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A short structure to identify a charmap by a (platform,encoding)   */
-  /*    pair of values.                                                    */
-  /*                                                                       */
-  /* @fields:                                                              */
-  /*    platform :: The platform ID.                                       */
-  /*                                                                       */
-  /*    encoding :: The encoding ID.                                       */
-  /*                                                                       */
-  typedef struct  FTC_CMapIdRec_
-  {
-    FT_UInt  platform;
-    FT_UInt  encoding;
-
-  } FTC_CMapIdRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @struct:                                                              */
-  /*    FTC_CMapDescRec                                                    */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A structure to describe a given charmap to @FTC_CMapCache.         */
-  /*                                                                       */
-  /* @fields:                                                              */
-  /*    face_id    :: @FTC_FaceID of the face this charmap belongs to.     */
-  /*                                                                       */
-  /*    type       :: The type of charmap, see @FTC_CMapType.              */
-  /*                                                                       */
-  /*    u.index    :: For @FTC_CMAP_BY_INDEX types, this is the charmap    */
-  /*                  index (within a @FT_Face) we want to use.            */
-  /*                                                                       */
-  /*    u.encoding :: For @FTC_CMAP_BY_ENCODING types, this is the charmap */
-  /*                  encoding we want to use. see @FT_Encoding.           */
-  /*                                                                       */
-  /*    u.id       :: For @FTC_CMAP_BY_ID types, this is the               */
-  /*                  (platform,encoding) pair we want to use. see         */
-  /*                  @FTC_CMapIdRec and @FT_CharMapRec.                   */
-  /*                                                                       */
-  typedef struct  FTC_CMapDescRec_
-  {
-    FTC_FaceID    face_id;
-    FTC_CMapType  type;
-
-    union
-    {
-      FT_UInt        index;
-      FT_Encoding    encoding;
-      FTC_CMapIdRec  id;
-
-    } u;
-
-  } FTC_CMapDescRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FTC_CMapCache_New                                                  */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Creates a new charmap cache.                                       */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    manager :: A handle to the cache manager.                          */
-  /*                                                                       */
-  /* @output:                                                              */
-  /*    acache  :: A new cache handle.  NULL in case of error.             */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    Like all other caches, this one will be destroyed with the cache   */
-  /*    manager.                                                           */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FTC_CMapCache_New( FTC_Manager     manager,
-                     FTC_CMapCache  *acache );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FTC_CMapCache_Lookup                                               */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Translates a character code into a glyph index, using the charmap  */
-  /*    cache.                                                             */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    cache     :: A charmap cache handle.                               */
-  /*                                                                       */
-  /*    cmap_desc :: A charmap descriptor handle.                          */
-  /*                                                                       */
-  /*    char_code :: The character code (in the corresponding charmap).    */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    Glyph index.  0 means "no glyph".                                  */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    This function doesn't return @FTC_Node handles, since there is no  */
-  /*    real use for them with typical uses of charmaps.                   */
-  /*                                                                       */
-  FT_EXPORT( FT_UInt )
-  FTC_CMapCache_Lookup( FTC_CMapCache  cache,
-                        FTC_CMapDesc   cmap_desc,
-                        FT_UInt32      char_code );
-
-  /* */
-
-
-FT_END_HEADER
-
-
-#endif /* __FTCCMAP_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/cache/ftcglyph.h b/dependencies64/sfml/extlibs/headers/freetype/cache/ftcglyph.h
deleted file mode 100644 (file)
index 3f8301a..0000000
+++ /dev/null
@@ -1,313 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcglyph.h                                                             */
-/*                                                                         */
-/*    FreeType abstract glyph cache (specification).                       */
-/*                                                                         */
-/*  Copyright 2000-2001, 2003, 2004 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*
-   *
-   *  FTC_GCache is an _abstract_ cache object optimized to store glyph
-   *  data.  It works as follows:
-   *
-   *   - It manages FTC_GNode objects. Each one of them can hold one or more
-   *     glyph `items'.  Item types are not specified in the FTC_GCache but
-   *     in classes that extend it.
-   *
-   *   - Glyph attributes, like face ID, character size, render mode, etc.,
-   *     can be grouped into abstract `glyph families'.  This avoids storing
-   *     the attributes within the FTC_GCache, since it is likely that many
-   *     FTC_GNodes will belong to the same family in typical uses.
-   *
-   *   - Each FTC_GNode is thus an FTC_Node with two additional fields:
-   *
-   *       * gindex: A glyph index, or the first index in a glyph range.
-   *       * family: A pointer to a glyph `family'.
-   *
-   *   - Family types are not fully specific in the FTC_Family type, but
-   *     by classes that extend it.
-   *
-   *  Note that both FTC_ImageCache and FTC_SBitCache extend FTC_GCache.
-   *  They share an FTC_Family sub-class called FTC_BasicFamily which is
-   *  used to store the following data: face ID, pixel/point sizes, load
-   *  flags.  For more details see the file `src/cache/ftcbasic.c'.
-   *
-   *  Client applications can extend FTC_GNode with their own FTC_GNode
-   *  and FTC_Family sub-classes to implement more complex caches (e.g.,
-   *  handling automatic synthesis, like obliquing & emboldening, colored
-   *  glyphs, etc.).
-   *
-   *  See also the FTC_ICache & FTC_SCache classes in `ftcimage.h' and
-   *  `ftcsbits.h', which both extend FTC_GCache with additional
-   *  optimizations.
-   *
-   *  A typical FTC_GCache implementation must provide at least the
-   *  following:
-   *
-   *  - FTC_GNode sub-class, e.g. MyNode, with relevant methods:
-   *        my_node_new            (must call FTC_GNode_Init)
-   *        my_node_free           (must call FTC_GNode_Done)
-   *        my_node_compare        (must call FTC_GNode_Compare)
-   *        my_node_remove_faceid  (must call ftc_gnode_unselect in case
-   *                                of match)
-   *
-   *  - FTC_Family sub-class, e.g. MyFamily, with relevant methods:
-   *        my_family_compare
-   *        my_family_init
-   *        my_family_reset (optional)
-   *        my_family_done
-   *
-   *  - FTC_GQuery sub-class, e.g. MyQuery, to hold cache-specific query
-   *    data.
-   *
-   *  - Constant structures for a FTC_GNodeClass.
-   *
-   *  - MyCacheNew() can be implemented easily as a call to the convenience
-   *    function FTC_GCache_New.
-   *
-   *  - MyCacheLookup with a call to FTC_GCache_Lookup.  This function will
-   *    automatically:
-   *
-   *    - Search for the corresponding family in the cache, or create
-   *      a new one if necessary.  Put it in FTC_GQUERY(myquery).family
-   *
-   *    - Call FTC_Cache_Lookup.
-   *
-   *    If it returns NULL, you should create a new node, then call
-   *    ftc_cache_add as usual.
-   */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Important: The functions defined in this file are only used to        */
-  /*            implement an abstract glyph cache class.  You need to      */
-  /*            provide additional logic to implement a complete cache.    */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*********                                                       *********/
-  /*********             WARNING, THIS IS BETA CODE.               *********/
-  /*********                                                       *********/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-#ifndef __FTCGLYPH_H__
-#define __FTCGLYPH_H__
-
-
-#include <ft2build.h>
-#include FT_CACHE_INTERNAL_MANAGER_H
-
-
-FT_BEGIN_HEADER
-
-
- /*
-  *  We can group glyphs into `families'.  Each family correspond to a
-  *  given face ID, character size, transform, etc.
-  *
-  *  Families are implemented as MRU list nodes.  They are
-  *  reference-counted.
-  */
-
-  typedef struct  FTC_FamilyRec_
-  {
-    FTC_MruNodeRec    mrunode;
-    FT_UInt           num_nodes; /* current number of nodes in this family */
-    FTC_Cache         cache;
-    FTC_MruListClass  clazz;
-
-  } FTC_FamilyRec, *FTC_Family;
-
-#define  FTC_FAMILY(x)    ( (FTC_Family)(x) )
-#define  FTC_FAMILY_P(x)  ( (FTC_Family*)(x) )
-
-
-  typedef struct  FTC_GNodeRec_
-  {
-    FTC_NodeRec      node;
-    FTC_Family       family;
-    FT_UInt          gindex;
-
-  } FTC_GNodeRec, *FTC_GNode;
-
-#define FTC_GNODE( x )    ( (FTC_GNode)(x) )
-#define FTC_GNODE_P( x )  ( (FTC_GNode*)(x) )
-
-
-  typedef struct  FTC_GQueryRec_
-  {
-    FT_UInt      gindex;
-    FTC_Family   family;
-
-  } FTC_GQueryRec, *FTC_GQuery;
-
-#define FTC_GQUERY( x )  ( (FTC_GQuery)(x) )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* These functions are exported so that they can be called from          */
-  /* user-provided cache classes; otherwise, they are really part of the   */
-  /* cache sub-system internals.                                           */
-  /*                                                                       */
-
-  /* must be called by derived FTC_Node_InitFunc routines */
-  FT_EXPORT( void )
-  FTC_GNode_Init( FTC_GNode   node,
-                  FT_UInt     gindex,  /* glyph index for node */
-                  FTC_Family  family );
-
-  /* returns TRUE iff the query's glyph index correspond to the node;  */
-  /* this assumes that the "family" and "hash" fields of the query are */
-  /* already correctly set                                             */
-  FT_EXPORT( FT_Bool )
-  FTC_GNode_Compare( FTC_GNode   gnode,
-                     FTC_GQuery  gquery );
-
-  /* call this function to clear a node's family -- this is necessary */
-  /* to implement the `node_remove_faceid' cache method correctly     */
-  FT_EXPORT( void )
-  FTC_GNode_UnselectFamily( FTC_GNode  gnode,
-                            FTC_Cache  cache );
-
-  /* must be called by derived FTC_Node_DoneFunc routines */
-  FT_EXPORT( void )
-  FTC_GNode_Done( FTC_GNode  node,
-                  FTC_Cache  cache );
-
-
-  FT_EXPORT( void )
-  FTC_Family_Init( FTC_Family  family,
-                   FTC_Cache   cache );
-
-  typedef struct FTC_GCacheRec_
-  {
-    FTC_CacheRec    cache;
-    FTC_MruListRec  families;
-
-  } FTC_GCacheRec, *FTC_GCache;
-
-#define FTC_GCACHE( x )  ((FTC_GCache)(x))
-
-
-  /* can be used as @FTC_Cache_InitFunc */
-  FT_EXPORT( FT_Error )
-  FTC_GCache_Init( FTC_GCache  cache );
-
-
-  /* can be used as @FTC_Cache_DoneFunc */
-  FT_EXPORT( void )
-  FTC_GCache_Done( FTC_GCache  cache );
-
-
-  /* the glyph cache class adds fields for the family implementation */
-  typedef struct  FTC_GCacheClassRec_
-  {
-    FTC_CacheClassRec  clazz;
-    FTC_MruListClass   family_class;
-
-  } FTC_GCacheClassRec;
-
-  typedef const FTC_GCacheClassRec*   FTC_GCacheClass;
-
-#define FTC_GCACHE_CLASS( x )  ((FTC_GCacheClass)(x))
-
-#define FTC_CACHE__GCACHE_CLASS( x ) \
-          FTC_GCACHE_CLASS( FTC_CACHE(x)->org_class )
-#define FTC_CACHE__FAMILY_CLASS( x ) \
-          ( (FTC_MruListClass)FTC_CACHE__GCACHE_CLASS( x )->family_class )
-
-
-  /* convenience function; use it instead of FTC_Manager_Register_Cache */
-  FT_EXPORT( FT_Error )
-  FTC_GCache_New( FTC_Manager       manager,
-                  FTC_GCacheClass   clazz,
-                  FTC_GCache       *acache );
-
-  FT_EXPORT( FT_Error )
-  FTC_GCache_Lookup( FTC_GCache   cache,
-                     FT_UInt32    hash,
-                     FT_UInt      gindex,
-                     FTC_GQuery   query,
-                     FTC_Node    *anode );
-
-
-  /* */
-
-
-#define FTC_FAMILY_FREE( family, cache )                      \
-          FTC_MruList_Remove( &FTC_GCACHE((cache))->families, \
-                              (FTC_MruNode)(family) )
-
-
-#ifdef FTC_INLINE
-
-#define FTC_GCACHE_LOOKUP_CMP( cache, famcmp, nodecmp, hash,                \
-                               gindex, query, node, error )                 \
-  FT_BEGIN_STMNT                                                            \
-    FTC_GCache               _gcache   = FTC_GCACHE( cache );               \
-    FTC_GQuery               _gquery   = (FTC_GQuery)( query );             \
-    FTC_MruNode_CompareFunc  _fcompare = (FTC_MruNode_CompareFunc)(famcmp); \
-                                                                            \
-                                                                            \
-    _gquery->gindex = (gindex);                                             \
-                                                                            \
-    FTC_MRULIST_LOOKUP_CMP( &_gcache->families, _gquery, _fcompare,         \
-                            _gquery->family, error );                       \
-    if ( !error )                                                           \
-    {                                                                       \
-      FTC_Family  _gqfamily = _gquery->family;                              \
-                                                                            \
-                                                                            \
-      _gqfamily->num_nodes++;                                               \
-                                                                            \
-      FTC_CACHE_LOOKUP_CMP( cache, nodecmp, hash, query, node, error );     \
-                                                                            \
-      if ( --_gqfamily->num_nodes == 0 )                                    \
-        FTC_FAMILY_FREE( _gqfamily, _gcache );                              \
-    }                                                                       \
-  FT_END_STMNT
-  /* */
-
-#else /* !FTC_INLINE */
-
-#define FTC_GCACHE_LOOKUP_CMP( cache, famcmp, nodecmp, hash,               \
-                               gindex, query, node, error )                \
-   FT_BEGIN_STMNT                                                          \
-     error = FTC_GCache_Lookup( FTC_GCACHE( cache ), hash, gindex,         \
-                                FTC_GQUERY( query ), (FTC_Node*)&(node) ); \
-   FT_END_STMNT
-
-#endif /* !FTC_INLINE */
-
-
-FT_END_HEADER
-
-
-#endif /* __FTCGLYPH_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/cache/ftcimage.h b/dependencies64/sfml/extlibs/headers/freetype/cache/ftcimage.h
deleted file mode 100644 (file)
index 1bf12db..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcimage.h                                                             */
-/*                                                                         */
-/*    FreeType Generic Image cache (specification)                         */
-/*                                                                         */
-/*  Copyright 2000-2001, 2002, 2003 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
- /*
-  *  FTC_ICache is an _abstract_ cache used to store a single FT_Glyph
-  *  image per cache node.
-  *
-  *  FTC_ICache extends FTC_GCache.  For an implementation example,
-  *  see FTC_ImageCache in `src/cache/ftbasic.c'.
-  */
-  
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Each image cache really manages FT_Glyph objects.                     */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTCIMAGE_H__
-#define __FTCIMAGE_H__
-
-
-#include <ft2build.h>
-#include FT_CACHE_H
-#include FT_CACHE_INTERNAL_GLYPH_H
-
-FT_BEGIN_HEADER
-
-
-  /* the FT_Glyph image node type - we store only 1 glyph per node */
-  typedef struct  FTC_INodeRec_
-  {
-    FTC_GNodeRec  gnode;
-    FT_Glyph      glyph;
-
-  } FTC_INodeRec, *FTC_INode;
-
-#define FTC_INODE( x )         ( (FTC_INode)( x ) )
-#define FTC_INODE_GINDEX( x )  FTC_GNODE(x)->gindex
-#define FTC_INODE_FAMILY( x )  FTC_GNODE(x)->family
-
-  typedef FT_Error
-  (*FTC_IFamily_LoadGlyphFunc)( FTC_Family  family,
-                                FT_UInt     gindex,
-                                FTC_Cache   cache,
-                                FT_Glyph   *aglyph );
-
-  typedef struct  FTC_IFamilyClassRec_
-  {
-    FTC_MruListClassRec        clazz;
-    FTC_IFamily_LoadGlyphFunc  family_load_glyph;
-
-  } FTC_IFamilyClassRec;
-
-  typedef const FTC_IFamilyClassRec*  FTC_IFamilyClass;
-
-#define FTC_IFAMILY_CLASS( x )  ((FTC_IFamilyClass)(x))
-
-#define FTC_CACHE__IFAMILY_CLASS( x ) \
-          FTC_IFAMILY_CLASS( FTC_CACHE__GCACHE_CLASS(x)->family_class )
-
-
-  /* can be used as a @FTC_Node_FreeFunc */
-  FT_EXPORT( void )
-  FTC_INode_Free( FTC_INode  inode,
-                  FTC_Cache  cache );
-
-  /* Can be used as @FTC_Node_NewFunc.  `gquery.index' and `gquery.family'
-   * must be set correctly.  This function will call the `family_load_glyph'
-   * method to load the FT_Glyph into the cache node.
-   */
-  FT_EXPORT( FT_Error )
-  FTC_INode_New( FTC_INode   *pinode,
-                 FTC_GQuery   gquery,
-                 FTC_Cache    cache );
-
-  /* can be used as @FTC_Node_WeightFunc */
-  FT_EXPORT( FT_ULong )
-  FTC_INode_Weight( FTC_INode  inode );
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __FTCIMAGE_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/cache/ftcmanag.h b/dependencies64/sfml/extlibs/headers/freetype/cache/ftcmanag.h
deleted file mode 100644 (file)
index 5265848..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcmanag.h                                                             */
-/*                                                                         */
-/*    FreeType Cache Manager (specification).                              */
-/*                                                                         */
-/*  Copyright 2000-2001, 2003, 2004 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* A cache manager is in charge of the following:                        */
-  /*                                                                       */
-  /*  - Maintain a mapping between generic FTC_FaceIDs and live FT_Face    */
-  /*    objects.  The mapping itself is performed through a user-provided  */
-  /*    callback.  However, the manager maintains a small cache of FT_Face */
-  /*    and FT_Size objects in order to speed up things considerably.      */
-  /*                                                                       */
-  /*  - Manage one or more cache objects.  Each cache is in charge of      */
-  /*    holding a varying number of `cache nodes'.  Each cache node        */
-  /*    represents a minimal amount of individually accessible cached      */
-  /*    data.  For example, a cache node can be an FT_Glyph image          */
-  /*    containing a vector outline, or some glyph metrics, or anything    */
-  /*    else.                                                              */
-  /*                                                                       */
-  /*    Each cache node has a certain size in bytes that is added to the   */
-  /*    total amount of `cache memory' within the manager.                 */
-  /*                                                                       */
-  /*    All cache nodes are located in a global LRU list, where the oldest */
-  /*    node is at the tail of the list.                                   */
-  /*                                                                       */
-  /*    Each node belongs to a single cache, and includes a reference      */
-  /*    count to avoid destroying it (due to caching).                     */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*********                                                       *********/
-  /*********             WARNING, THIS IS BETA CODE.               *********/
-  /*********                                                       *********/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-#ifndef __FTCMANAG_H__
-#define __FTCMANAG_H__
-
-
-#include <ft2build.h>
-#include FT_CACHE_H
-#include FT_CACHE_INTERNAL_MRU_H
-#include FT_CACHE_INTERNAL_CACHE_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    cache_subsystem                                                    */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#define FTC_MAX_FACES_DEFAULT  2
-#define FTC_MAX_SIZES_DEFAULT  4
-#define FTC_MAX_BYTES_DEFAULT  200000L  /* ~200kByte by default */
-
-  /* maximum number of caches registered in a single manager */
-#define FTC_MAX_CACHES         16
-
-
-  typedef struct  FTC_ManagerRec_
-  {
-    FT_Library          library;
-    FT_Memory           memory;
-
-    FTC_Node            nodes_list;
-    FT_ULong            max_weight;
-    FT_ULong            cur_weight;
-    FT_UInt             num_nodes;
-
-    FTC_Cache           caches[FTC_MAX_CACHES];
-    FT_UInt             num_caches;
-
-    FTC_MruListRec      faces;
-    FTC_MruListRec      sizes;
-
-    FT_Pointer          request_data;
-    FTC_Face_Requester  request_face;
-
-  } FTC_ManagerRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_Manager_Compress                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used to check the state of the cache manager if   */
-  /*    its `num_bytes' field is greater than its `max_bytes' field.  It   */
-  /*    will flush as many old cache nodes as possible (ignoring cache     */
-  /*    nodes with a non-zero reference count).                            */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    manager :: A handle to the cache manager.                          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Client applications should not call this function directly.  It is */
-  /*    normally invoked by specific cache implementations.                */
-  /*                                                                       */
-  /*    The reason this function is exported is to allow client-specific   */
-  /*    cache classes.                                                     */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FTC_Manager_Compress( FTC_Manager  manager );
-
-
-  /* try to flush `count' old nodes from the cache; return the number
-   * of really flushed nodes
-   */
-  FT_EXPORT( FT_UInt )
-  FTC_Manager_FlushN( FTC_Manager  manager,
-                      FT_UInt      count );
-
-
-  /* this must be used internally for the moment */
-  FT_EXPORT( FT_Error )
-  FTC_Manager_RegisterCache( FTC_Manager      manager,
-                             FTC_CacheClass   clazz,
-                             FTC_Cache       *acache );
-
- /* */
-
-#define FTC_SCALER_COMPARE( a, b )                \
-    ( (a)->face_id      == (b)->face_id      &&   \
-      (a)->width        == (b)->width        &&   \
-      (a)->height       == (b)->height       &&   \
-      ((a)->pixel != 0) == ((b)->pixel != 0) &&   \
-      ( (a)->pixel ||                             \
-        ( (a)->x_res == (b)->x_res &&             \
-          (a)->y_res == (b)->y_res ) ) )
-
-#define FTC_SCALER_HASH( q )                                 \
-    ( FTC_FACE_ID_HASH( (q)->face_id ) +                     \
-      (q)->width + (q)->height*7 +                           \
-      ( (q)->pixel ? 0 : ( (q)->x_res*33 ^ (q)->y_res*61 ) ) )
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __FTCMANAG_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/cache/ftcmru.h b/dependencies64/sfml/extlibs/headers/freetype/cache/ftcmru.h
deleted file mode 100644 (file)
index ac1a1a9..0000000
+++ /dev/null
@@ -1,247 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcmru.h                                                               */
-/*                                                                         */
-/*    Simple MRU list-cache (specification).                               */
-/*                                                                         */
-/*  Copyright 2000-2001, 2003, 2004, 2005 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* An MRU is a list that cannot hold more than a certain number of       */
-  /* elements (`max_elements').  All elements in the list are sorted in    */
-  /* least-recently-used order, i.e., the `oldest' element is at the tail  */
-  /* of the list.                                                          */
-  /*                                                                       */
-  /* When doing a lookup (either through `Lookup()' or `Lookup_Node()'),   */
-  /* the list is searched for an element with the corresponding key.  If   */
-  /* it is found, the element is moved to the head of the list and is      */
-  /* returned.                                                             */
-  /*                                                                       */
-  /* If no corresponding element is found, the lookup routine will try to  */
-  /* obtain a new element with the relevant key.  If the list is already   */
-  /* full, the oldest element from the list is discarded and replaced by a */
-  /* new one; a new element is added to the list otherwise.                */
-  /*                                                                       */
-  /* Note that it is possible to pre-allocate the element list nodes.      */
-  /* This is handy if `max_elements' is sufficiently small, as it saves    */
-  /* allocations/releases during the lookup process.                       */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTCMRU_H__
-#define __FTCMRU_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-#define  xxFT_DEBUG_ERROR
-#define  FTC_INLINE
-
-FT_BEGIN_HEADER
-
-  typedef struct FTC_MruNodeRec_*  FTC_MruNode;
-
-  typedef struct  FTC_MruNodeRec_
-  {
-    FTC_MruNode  next;
-    FTC_MruNode  prev;
-
-  } FTC_MruNodeRec;
-
-
-  FT_EXPORT( void )
-  FTC_MruNode_Prepend( FTC_MruNode  *plist,
-                       FTC_MruNode   node );
-
-  FT_EXPORT( void )
-  FTC_MruNode_Up( FTC_MruNode  *plist,
-                  FTC_MruNode   node );
-
-  FT_EXPORT( void )
-  FTC_MruNode_Remove( FTC_MruNode  *plist,
-                      FTC_MruNode   node );
-
-
-  typedef struct FTC_MruListRec_*              FTC_MruList;
-
-  typedef struct FTC_MruListClassRec_ const *  FTC_MruListClass;
-
-
-  typedef FT_Bool
-  (*FTC_MruNode_CompareFunc)( FTC_MruNode  node,
-                              FT_Pointer   key );
-
-  typedef FT_Error
-  (*FTC_MruNode_InitFunc)( FTC_MruNode  node,
-                           FT_Pointer   key,
-                           FT_Pointer   data );
-
-  typedef FT_Error
-  (*FTC_MruNode_ResetFunc)( FTC_MruNode  node,
-                            FT_Pointer   key,
-                            FT_Pointer   data );
-
-  typedef void
-  (*FTC_MruNode_DoneFunc)( FTC_MruNode  node,
-                           FT_Pointer   data );
-
-
-  typedef struct  FTC_MruListClassRec_
-  {
-    FT_UInt                  node_size;
-    FTC_MruNode_CompareFunc  node_compare;
-    FTC_MruNode_InitFunc     node_init;
-    FTC_MruNode_ResetFunc    node_reset;
-    FTC_MruNode_DoneFunc     node_done;
-
-  } FTC_MruListClassRec;
-
-  typedef struct  FTC_MruListRec_
-  {
-    FT_UInt              num_nodes;
-    FT_UInt              max_nodes;
-    FTC_MruNode          nodes;
-    FT_Pointer           data;
-    FTC_MruListClassRec  clazz;
-    FT_Memory            memory;
-
-  } FTC_MruListRec;
-
-
-  FT_EXPORT( void )
-  FTC_MruList_Init( FTC_MruList       list,
-                    FTC_MruListClass  clazz,
-                    FT_UInt           max_nodes,
-                    FT_Pointer        data,
-                    FT_Memory         memory );
-
-  FT_EXPORT( void )
-  FTC_MruList_Reset( FTC_MruList  list );
-
-
-  FT_EXPORT( void )
-  FTC_MruList_Done( FTC_MruList  list );
-
-  FT_EXPORT( FTC_MruNode )
-  FTC_MruList_Find( FTC_MruList  list,
-                    FT_Pointer   key );
-
-  FT_EXPORT( FT_Error )
-  FTC_MruList_New( FTC_MruList   list,
-                   FT_Pointer    key,
-                   FTC_MruNode  *anode );
-
-  FT_EXPORT( FT_Error )
-  FTC_MruList_Lookup( FTC_MruList   list,
-                      FT_Pointer    key,
-                      FTC_MruNode  *pnode );
-
-
-  FT_EXPORT( void )
-  FTC_MruList_Remove( FTC_MruList  list,
-                      FTC_MruNode  node );
-
-  FT_EXPORT( void )
-  FTC_MruList_RemoveSelection( FTC_MruList              list,
-                               FTC_MruNode_CompareFunc  selection,
-                               FT_Pointer               key );
-
-
-#ifdef FTC_INLINE
-
-#define FTC_MRULIST_LOOKUP_CMP( list, key, compare, node, error )           \
-  FT_BEGIN_STMNT                                                            \
-    FTC_MruNode*             _pfirst  = &(list)->nodes;                     \
-    FTC_MruNode_CompareFunc  _compare = (FTC_MruNode_CompareFunc)(compare); \
-    FTC_MruNode              _first, _node, *_pnode;                        \
-                                                                            \
-                                                                            \
-    error  = 0;                                                             \
-    _first = *(_pfirst);                                                    \
-    _node  = NULL;                                                          \
-                                                                            \
-    if ( _first )                                                           \
-    {                                                                       \
-      _node = _first;                                                       \
-      do                                                                    \
-      {                                                                     \
-        if ( _compare( _node, (key) ) )                                     \
-        {                                                                   \
-          if ( _node != _first )                                            \
-            FTC_MruNode_Up( _pfirst, _node );                               \
-                                                                            \
-          _pnode = (FTC_MruNode*)(void*)&(node);                            \
-          *_pnode = _node;                                                  \
-          goto _MruOk;                                                      \
-        }                                                                   \
-        _node = _node->next;                                                \
-                                                                            \
-      } while ( _node != _first) ;                                          \
-    }                                                                       \
-                                                                            \
-    error = FTC_MruList_New( (list), (key), (FTC_MruNode*)(void*)&(node) ); \
-  _MruOk:                                                                   \
-    ;                                                                       \
-  FT_END_STMNT
-
-#define FTC_MRULIST_LOOKUP( list, key, node, error ) \
-  FTC_MRULIST_LOOKUP_CMP( list, key, (list)->clazz.node_compare, node, error )
-
-#else  /* !FTC_INLINE */
-
-#define FTC_MRULIST_LOOKUP( list, key, node, error ) \
-  error = FTC_MruList_Lookup( (list), (key), (FTC_MruNode*)&(node) )
-
-#endif /* !FTC_INLINE */
-
-
-#define FTC_MRULIST_LOOP( list, node )        \
-  FT_BEGIN_STMNT                              \
-    FTC_MruNode  _first = (list)->nodes;      \
-                                              \
-                                              \
-    if ( _first )                             \
-    {                                         \
-      FTC_MruNode  _node = _first;            \
-                                              \
-                                              \
-      do                                      \
-      {                                       \
-        *(FTC_MruNode*)&(node) = _node;
-
-
-#define FTC_MRULIST_LOOP_END()               \
-        _node = _node->next;                 \
-                                             \
-      } while ( _node != _first );           \
-    }                                        \
-  FT_END_STMNT
-
- /* */
-
-FT_END_HEADER
-
-
-#endif /* __FTCMRU_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/cache/ftcsbits.h b/dependencies64/sfml/extlibs/headers/freetype/cache/ftcsbits.h
deleted file mode 100644 (file)
index b2ef0f1..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcsbits.h                                                             */
-/*                                                                         */
-/*    A small-bitmap cache (specification).                                */
-/*                                                                         */
-/*  Copyright 2000-2001, 2002, 2003 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTCSBITS_H__
-#define __FTCSBITS_H__
-
-
-#include <ft2build.h>
-#include FT_CACHE_H
-#include FT_CACHE_INTERNAL_GLYPH_H
-
-
-FT_BEGIN_HEADER
-
-#define FTC_SBIT_ITEMS_PER_NODE  16
-
-  typedef struct  FTC_SNodeRec_
-  {
-    FTC_GNodeRec  gnode;
-    FT_UInt       count;
-    FTC_SBitRec   sbits[FTC_SBIT_ITEMS_PER_NODE];
-
-  } FTC_SNodeRec, *FTC_SNode;
-
-
-#define FTC_SNODE( x )         ( (FTC_SNode)( x ) )
-#define FTC_SNODE_GINDEX( x )  FTC_GNODE( x )->gindex
-#define FTC_SNODE_FAMILY( x )  FTC_GNODE( x )->family
-
-  typedef FT_UInt
-  (*FTC_SFamily_GetCountFunc)( FTC_Family   family,
-                               FTC_Manager  manager );
-
-  typedef FT_Error
-  (*FTC_SFamily_LoadGlyphFunc)( FTC_Family   family,
-                                FT_UInt      gindex,
-                                FTC_Manager  manager,
-                                FT_Face     *aface );
-
-  typedef struct  FTC_SFamilyClassRec_
-  {
-    FTC_MruListClassRec        clazz;
-    FTC_SFamily_GetCountFunc   family_get_count;
-    FTC_SFamily_LoadGlyphFunc  family_load_glyph;
-
-  } FTC_SFamilyClassRec;
-
-  typedef const FTC_SFamilyClassRec*  FTC_SFamilyClass;
-
-#define FTC_SFAMILY_CLASS( x )  ((FTC_SFamilyClass)(x))
-
-#define FTC_CACHE__SFAMILY_CLASS( x )  \
-          FTC_SFAMILY_CLASS( FTC_CACHE__GCACHE_CLASS( x )->family_class )
-
-
-  FT_EXPORT( void )
-  FTC_SNode_Free( FTC_SNode  snode,
-                  FTC_Cache  cache );
-
-  FT_EXPORT( FT_Error )
-  FTC_SNode_New( FTC_SNode   *psnode,
-                 FTC_GQuery   gquery,
-                 FTC_Cache    cache );
-
-  FT_EXPORT( FT_ULong )
-  FTC_SNode_Weight( FTC_SNode  inode );
-
-
-  FT_EXPORT( FT_Bool )
-  FTC_SNode_Compare( FTC_SNode   snode,
-                     FTC_GQuery  gquery,
-                     FTC_Cache   cache );
-
-  /* */
-
-FT_END_HEADER
-
-#endif /* __FTCSBITS_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/config/ftconfig.h b/dependencies64/sfml/extlibs/headers/freetype/config/ftconfig.h
deleted file mode 100644 (file)
index fe3d6c1..0000000
+++ /dev/null
@@ -1,335 +0,0 @@
-/* ftconfig.h.  Generated by configure.  */\r
-/***************************************************************************/\r
-/*                                                                         */\r
-/*  ftconfig.in                                                            */\r
-/*                                                                         */\r
-/*    UNIX-specific configuration file (specification only).               */\r
-/*                                                                         */\r
-/*  Copyright 1996-2001, 2002, 2003, 2004 by                               */\r
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */\r
-/*                                                                         */\r
-/*  This file is part of the FreeType project, and may only be used,       */\r
-/*  modified, and distributed under the terms of the FreeType project      */\r
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */\r
-/*  this file you indicate that you have read the license and              */\r
-/*  understand and accept it fully.                                        */\r
-/*                                                                         */\r
-/***************************************************************************/\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* This header file contains a number of macro definitions that are used */\r
-  /* by the rest of the engine.  Most of the macros here are automatically */\r
-  /* determined at compile time, and you should not need to change it to   */\r
-  /* port FreeType, except to compile the library with a non-ANSI          */\r
-  /* compiler.                                                             */\r
-  /*                                                                       */\r
-  /* Note however that if some specific modifications are needed, we       */\r
-  /* advise you to place a modified copy in your build directory.          */\r
-  /*                                                                       */\r
-  /* The build directory is usually `freetype/builds/<system>', and        */\r
-  /* contains system-specific files that are always included first when    */\r
-  /* building the library.                                                 */\r
-  /*                                                                       */\r
-  /*************************************************************************/\r
-\r
-\r
-#ifndef __FTCONFIG_H__\r
-#define __FTCONFIG_H__\r
-\r
-#include <ft2build.h>\r
-#include FT_CONFIG_OPTIONS_H\r
-#include FT_CONFIG_STANDARD_LIBRARY_H\r
-\r
-\r
-FT_BEGIN_HEADER\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /*               PLATFORM-SPECIFIC CONFIGURATION MACROS                  */\r
-  /*                                                                       */\r
-  /* These macros can be toggled to suit a specific system.  The current   */\r
-  /* ones are defaults used to compile FreeType in an ANSI C environment   */\r
-  /* (16bit compilers are also supported).  Copy this file to your own     */\r
-  /* `freetype/builds/<system>' directory, and edit it to port the engine. */\r
-  /*                                                                       */\r
-  /*************************************************************************/\r
-\r
-\r
-#define HAVE_UNISTD_H 1\r
-#define HAVE_FCNTL_H 1\r
-\r
-#define SIZEOF_INT 4\r
-#define SIZEOF_LONG 4\r
-\r
-\r
-#define FT_SIZEOF_INT   SIZEOF_INT\r
-#define FT_SIZEOF_LONG  SIZEOF_LONG\r
-\r
-#define FT_CHAR_BIT  CHAR_BIT\r
-\r
-  /* Preferred alignment of data */\r
-#define FT_ALIGNMENT  8\r
-\r
-\r
-  /* FT_UNUSED is a macro used to indicate that a given parameter is not  */\r
-  /* used -- this is only used to get rid of unpleasant compiler warnings */\r
-#ifndef FT_UNUSED\r
-#define FT_UNUSED( arg )  ( (arg) = (arg) )\r
-#endif\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /*                     AUTOMATIC CONFIGURATION MACROS                    */\r
-  /*                                                                       */\r
-  /* These macros are computed from the ones defined above.  Don't touch   */\r
-  /* their definition, unless you know precisely what you are doing.  No   */\r
-  /* porter should need to mess with them.                                 */\r
-  /*                                                                       */\r
-  /*************************************************************************/\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Mac support                                                           */\r
-  /*                                                                       */\r
-  /*   This is the only necessary change, so it is defined here instead    */\r
-  /*   providing a new configuration file.                                 */\r
-  /*                                                                       */\r
-#if ( defined( __APPLE__ ) && !defined( DARWIN_NO_CARBON ) ) || \\r
-    ( defined( __MWERKS__ ) && defined( macintosh )        )\r
-#define FT_MACINTOSH 1\r
-#endif\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* IntN types                                                            */\r
-  /*                                                                       */\r
-  /*   Used to guarantee the size of some specific integers.               */\r
-  /*                                                                       */\r
-  typedef signed short    FT_Int16;\r
-  typedef unsigned short  FT_UInt16;\r
-\r
-#if FT_SIZEOF_INT == 4\r
-\r
-  typedef signed int      FT_Int32;\r
-  typedef unsigned int    FT_UInt32;\r
-\r
-#elif FT_SIZEOF_LONG == 4\r
-\r
-  typedef signed long     FT_Int32;\r
-  typedef unsigned long   FT_UInt32;\r
-\r
-#else\r
-#error "no 32bit type found -- please check your configuration files"\r
-#endif\r
-\r
-\r
-  /* look up an integer type that is at least 32 bits */\r
-#if FT_SIZEOF_INT >= 4\r
-\r
-  typedef int            FT_Fast;\r
-  typedef unsigned int   FT_UFast;\r
-\r
-#elif FT_SIZEOF_LONG >= 4\r
-\r
-  typedef long           FT_Fast;\r
-  typedef unsigned long  FT_UFast;\r
-\r
-#endif\r
-\r
-\r
-  /* determine whether we have a 64-bit int type for platforms without */\r
-  /* Autoconf                                                          */\r
-#if FT_SIZEOF_LONG == 8\r
-\r
-  /* FT_LONG64 must be defined if a 64-bit type is available */\r
-#define FT_LONG64\r
-#define FT_INT64  long\r
-\r
-#elif defined( _MSC_VER ) && _MSC_VER >= 900  /* Visual C++ (and Intel C++) */\r
-\r
-  /* this compiler provides the __int64 type */\r
-#define FT_LONG64\r
-#define FT_INT64  __int64\r
-\r
-#elif defined( __BORLANDC__ )  /* Borland C++ */\r
-\r
-  /* XXXX: We should probably check the value of __BORLANDC__ in order */\r
-  /*       to test the compiler version.                               */\r
-\r
-  /* this compiler provides the __int64 type */\r
-#define FT_LONG64\r
-#define FT_INT64  __int64\r
-\r
-#elif defined( __WATCOMC__ )   /* Watcom C++ */\r
-\r
-  /* Watcom doesn't provide 64-bit data types */\r
-\r
-#elif defined( __MWERKS__ )    /* Metrowerks CodeWarrior */\r
-\r
-#define FT_LONG64\r
-#define FT_INT64  long long int\r
-\r
-#elif defined( __GNUC__ )\r
-\r
-  /* GCC provides the "long long" type */\r
-#define FT_LONG64\r
-#define FT_INT64  long long int\r
-\r
-#endif /* FT_SIZEOF_LONG == 8 */\r
-\r
-\r
-#define FT_BEGIN_STMNT  do {\r
-#define FT_END_STMNT    } while ( 0 )\r
-#define FT_DUMMY_STMNT  FT_BEGIN_STMNT FT_END_STMNT\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* A 64-bit data type will create compilation problems if you compile    */\r
-  /* in strict ANSI mode.  To avoid them, we disable their use if          */\r
-  /* __STDC__ is defined.  You can however ignore this rule by             */\r
-  /* defining the FT_CONFIG_OPTION_FORCE_INT64 configuration macro.        */\r
-  /*                                                                       */\r
-#if defined( FT_LONG64 ) && !defined( FT_CONFIG_OPTION_FORCE_INT64 )\r
-\r
-#ifdef __STDC__\r
-\r
-  /* Undefine the 64-bit macros in strict ANSI compilation mode.  */\r
-  /* Since `#undef' doesn't survive in configuration header files */\r
-  /* we use the postprocessing facility of AC_CONFIG_HEADERS to   */\r
-  /* replace the leading `/' with `#'.                            */\r
-#undef FT_LONG64\r
-#undef FT_INT64\r
-\r
-#endif /* __STDC__ */\r
-\r
-#endif /* FT_LONG64 && !FT_CONFIG_OPTION_FORCE_INT64 */\r
-\r
-\r
-#ifdef FT_MAKE_OPTION_SINGLE_OBJECT\r
-\r
-#define FT_LOCAL( x )      static  x\r
-#define FT_LOCAL_DEF( x )  static  x\r
-\r
-#else\r
-\r
-#ifdef __cplusplus\r
-#define FT_LOCAL( x )      extern "C"  x\r
-#define FT_LOCAL_DEF( x )  extern "C"  x\r
-#else\r
-#define FT_LOCAL( x )      extern  x\r
-#define FT_LOCAL_DEF( x )  x\r
-#endif\r
-\r
-#endif /* FT_MAKE_OPTION_SINGLE_OBJECT */\r
-\r
-\r
-#ifndef FT_BASE\r
-\r
-#ifdef __cplusplus\r
-#define FT_BASE( x )  extern "C"  x\r
-#else\r
-#define FT_BASE( x )  extern  x\r
-#endif\r
-\r
-#endif /* !FT_BASE */\r
-\r
-\r
-#ifndef FT_BASE_DEF\r
-\r
-#ifdef __cplusplus\r
-#define FT_BASE_DEF( x )  extern "C"  x\r
-#else\r
-#define FT_BASE_DEF( x )  extern  x\r
-#endif\r
-\r
-#endif /* !FT_BASE_DEF */\r
-\r
-\r
-#ifndef FT_EXPORT\r
-\r
-#ifdef __cplusplus\r
-#define FT_EXPORT( x )  extern "C"  x\r
-#else\r
-#define FT_EXPORT( x )  extern  x\r
-#endif\r
-\r
-#endif /* !FT_EXPORT */\r
-\r
-\r
-#ifndef FT_EXPORT_DEF\r
-\r
-#ifdef __cplusplus\r
-#define FT_EXPORT_DEF( x )  extern "C"  x\r
-#else\r
-#define FT_EXPORT_DEF( x )  extern  x\r
-#endif\r
-\r
-#endif /* !FT_EXPORT_DEF */\r
-\r
-\r
-#ifndef FT_EXPORT_VAR\r
-\r
-#ifdef __cplusplus\r
-#define FT_EXPORT_VAR( x )  extern "C"  x\r
-#else\r
-#define FT_EXPORT_VAR( x )  extern  x\r
-#endif\r
-\r
-#endif /* !FT_EXPORT_VAR */\r
-\r
-  /* The following macros are needed to compile the library with a   */\r
-  /* C++ compiler and with 16bit compilers.                          */\r
-  /*                                                                 */\r
-\r
-  /* This is special.  Within C++, you must specify `extern "C"' for */\r
-  /* functions which are used via function pointers, and you also    */\r
-  /* must do that for structures which contain function pointers to  */\r
-  /* assure C linkage -- it's not possible to have (local) anonymous */\r
-  /* functions which are accessed by (global) function pointers.     */\r
-  /*                                                                 */\r
-  /*                                                                 */\r
-  /* FT_CALLBACK_DEF is used to _define_ a callback function.        */\r
-  /*                                                                 */\r
-  /* FT_CALLBACK_TABLE is used to _declare_ a constant variable that */\r
-  /* contains pointers to callback functions.                        */\r
-  /*                                                                 */\r
-  /* FT_CALLBACK_TABLE_DEF is used to _define_ a constant variable   */\r
-  /* that contains pointers to callback functions.                   */\r
-  /*                                                                 */\r
-  /*                                                                 */\r
-  /* Some 16bit compilers have to redefine these macros to insert    */\r
-  /* the infamous `_cdecl' or `__fastcall' declarations.             */\r
-  /*                                                                 */\r
-#ifndef FT_CALLBACK_DEF\r
-#ifdef __cplusplus\r
-#define FT_CALLBACK_DEF( x )  extern "C"  x\r
-#else\r
-#define FT_CALLBACK_DEF( x )  static  x\r
-#endif\r
-#endif /* FT_CALLBACK_DEF */\r
-\r
-#ifndef FT_CALLBACK_TABLE\r
-#ifdef __cplusplus\r
-#define FT_CALLBACK_TABLE      extern "C"\r
-#define FT_CALLBACK_TABLE_DEF  extern "C"\r
-#else\r
-#define FT_CALLBACK_TABLE      extern\r
-#define FT_CALLBACK_TABLE_DEF  /* nothing */\r
-#endif\r
-#endif /* FT_CALLBACK_TABLE */\r
-\r
-\r
-FT_END_HEADER\r
-\r
-\r
-#endif /* __FTCONFIG_H__ */\r
-\r
-\r
-/* END */\r
diff --git a/dependencies64/sfml/extlibs/headers/freetype/config/ftheader.h b/dependencies64/sfml/extlibs/headers/freetype/config/ftheader.h
deleted file mode 100644 (file)
index a6df10d..0000000
+++ /dev/null
@@ -1,593 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftheader.h                                                             */
-/*                                                                         */
-/*    Build macros of the FreeType 2 library.                              */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-#ifndef __FT_HEADER_H__
-#define __FT_HEADER_H__
-
-
-  /*@***********************************************************************/
-  /*                                                                       */
-  /* <Macro>                                                               */
-  /*    FT_BEGIN_HEADER                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This macro is used in association with @FT_END_HEADER in header    */
-  /*    files to ensure that the declarations within are properly          */
-  /*    encapsulated in an `extern "C" { .. }' block when included from a  */
-  /*    C++ compiler.                                                      */
-  /*                                                                       */
-#ifdef __cplusplus
-#define FT_BEGIN_HEADER  extern "C" {
-#else
-#define FT_BEGIN_HEADER  /* nothing */
-#endif
-
-
-  /*@***********************************************************************/
-  /*                                                                       */
-  /* <Macro>                                                               */
-  /*    FT_END_HEADER                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This macro is used in association with @FT_BEGIN_HEADER in header  */
-  /*    files to ensure that the declarations within are properly          */
-  /*    encapsulated in an `extern "C" { .. }' block when included from a  */
-  /*    C++ compiler.                                                      */
-  /*                                                                       */
-#ifdef __cplusplus
-#define FT_END_HEADER  }
-#else
-#define FT_END_HEADER  /* nothing */
-#endif
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Aliases for the FreeType 2 public and configuration files.            */
-  /*                                                                       */
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    header_file_macros                                                 */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Header File Macros                                                 */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Macro definitions used to #include specific header files.          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The following macros are defined to the name of specific           */
-  /*    FreeType 2 header files.  They can be used directly in #include    */
-  /*    statements as in:                                                  */
-  /*                                                                       */
-  /*    {                                                                  */
-  /*      #include FT_FREETYPE_H                                           */
-  /*      #include FT_MULTIPLE_MASTERS_H                                   */
-  /*      #include FT_GLYPH_H                                              */
-  /*    }                                                                  */
-  /*                                                                       */
-  /*    There are several reasons why we are now using macros to name      */
-  /*    public header files.  The first one is that such macros are not    */
-  /*    limited to the infamous 8.3 naming rule required by DOS (and       */
-  /*    `FT_MULTIPLE_MASTERS_H' is a lot more meaningful than `ftmm.h').   */
-  /*                                                                       */
-  /*    The second reason is that is allows for more flexibility in the    */
-  /*    way FreeType 2 is installed on a given system.                     */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /* configuration files */
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_CONFIG_CONFIG_H                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    FreeType 2 configuration data.                                     */
-  /*                                                                       */
-#ifndef FT_CONFIG_CONFIG_H
-#define FT_CONFIG_CONFIG_H  <freetype/config/ftconfig.h>
-#endif
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_CONFIG_STANDARD_LIBRARY_H                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    FreeType 2 configuration data.                                     */
-  /*                                                                       */
-#ifndef FT_CONFIG_STANDARD_LIBRARY_H
-#define FT_CONFIG_STANDARD_LIBRARY_H  <freetype/config/ftstdlib.h>
-#endif
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_CONFIG_OPTIONS_H                                                */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    FreeType 2 project-specific configuration options.                 */
-  /*                                                                       */
-#ifndef FT_CONFIG_OPTIONS_H
-#define FT_CONFIG_OPTIONS_H  <freetype/config/ftoption.h>
-#endif
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_CONFIG_MODULES_H                                                */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the list of FreeType 2 modules that are statically linked to new   */
-  /*    library instances in @FT_Init_FreeType.                            */
-  /*                                                                       */
-#ifndef FT_CONFIG_MODULES_H
-#define FT_CONFIG_MODULES_H  <freetype/config/ftmodule.h>
-#endif
-
-
-  /* public headers */
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_FREETYPE_H                                                      */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the base FreeType 2 API.                                           */
-  /*                                                                       */
-#define FT_FREETYPE_H  <freetype/freetype.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_ERRORS_H                                                        */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the list of FreeType 2 error codes (and messages).                 */
-  /*                                                                       */
-  /*    It is included by @FT_FREETYPE_H.                                  */
-  /*                                                                       */
-#define FT_ERRORS_H  <freetype/fterrors.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_MODULE_ERRORS_H                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the list of FreeType 2 module error offsets (and messages).        */
-  /*                                                                       */
-#define FT_MODULE_ERRORS_H  <freetype/ftmoderr.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_SYSTEM_H                                                        */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the FreeType 2 interface to low-level operations (i.e. memory      */
-  /*    management and stream i/o).                                        */
-  /*                                                                       */
-  /*    It is included by @FT_FREETYPE_H.                                  */
-  /*                                                                       */
-#define FT_SYSTEM_H  <freetype/ftsystem.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_IMAGE_H                                                         */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    types definitions related to glyph images (i.e. bitmaps, outlines, */
-  /*    scan-converter parameters).                                        */
-  /*                                                                       */
-  /*    It is included by @FT_FREETYPE_H.                                  */
-  /*                                                                       */
-#define FT_IMAGE_H  <freetype/ftimage.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_TYPES_H                                                         */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the basic data types defined by FreeType 2.                        */
-  /*                                                                       */
-  /*    It is included by @FT_FREETYPE_H.                                  */
-  /*                                                                       */
-#define FT_TYPES_H  <freetype/fttypes.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_LIST_H                                                          */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the list management API of FreeType 2.                             */
-  /*                                                                       */
-  /*    (Most applications will never need to include this file.)          */
-  /*                                                                       */
-#define FT_LIST_H  <freetype/ftlist.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_OUTLINE_H                                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the scalable outline management API of FreeType 2.                 */
-  /*                                                                       */
-#define FT_OUTLINE_H  <freetype/ftoutln.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_SIZES_H                                                         */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the API used to manage multiple @FT_Size objects per face.         */
-  /*                                                                       */
-#define FT_SIZES_H  <freetype/ftsizes.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_MODULE_H                                                        */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the module management API of FreeType 2.                           */
-  /*                                                                       */
-#define FT_MODULE_H  <freetype/ftmodapi.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_RENDER_H                                                        */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the renderer module management API of FreeType 2.                  */
-  /*                                                                       */
-#define FT_RENDER_H  <freetype/ftrender.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_TYPE1_TABLES_H                                                  */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the types and API specific to the Type 1 format.                   */
-  /*                                                                       */
-#define FT_TYPE1_TABLES_H  <freetype/t1tables.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_TRUETYPE_IDS_H                                                  */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the enumeration values used to identify name strings, languages,   */
-  /*    encodings, etc.  This file really contains a _large_ set of        */
-  /*    constant macro definitions, taken from the TrueType and OpenType   */
-  /*    specifications.                                                    */
-  /*                                                                       */
-#define FT_TRUETYPE_IDS_H  <freetype/ttnameid.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_TRUETYPE_TABLES_H                                               */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the types and API specific to the TrueType (as well as OpenType)   */
-  /*    format.                                                            */
-  /*                                                                       */
-#define FT_TRUETYPE_TABLES_H  <freetype/tttables.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_TRUETYPE_TAGS_H                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the definitions of TrueType 4-byte `tags' used to identify blocks  */
-  /*    in SFNT-based font formats (i.e. TrueType and OpenType).           */
-  /*                                                                       */
-#define FT_TRUETYPE_TAGS_H  <freetype/tttags.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_BDF_H                                                           */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the definitions of an API to access BDF-specific strings from a    */
-  /*    face.                                                              */
-  /*                                                                       */
-#define FT_BDF_H  <freetype/ftbdf.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_GZIP_H                                                          */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the definitions of an API to support for gzip-compressed files.    */
-  /*                                                                       */
-#define FT_GZIP_H  <freetype/ftgzip.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_LZW_H                                                           */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the definitions of an API to support for LZW-compressed files.     */
-  /*                                                                       */
-#define FT_LZW_H  <freetype/ftlzw.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_WINFONTS_H                                                      */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the definitions of an API to support Windows .FNT files            */
-  /*                                                                       */
-#define FT_WINFONTS_H   <freetype/ftwinfnt.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_GLYPH_H                                                         */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the API of the optional glyph management component.                */
-  /*                                                                       */
-#define FT_GLYPH_H  <freetype/ftglyph.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_BITMAP_H                                                        */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the API of the optional bitmap conversion component.               */
-  /*                                                                       */
-#define FT_BITMAP_H  <freetype/ftbitmap.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_BBOX_H                                                          */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the API of the optional exact bounding box computation routines.   */
-  /*                                                                       */
-#define FT_BBOX_H  <freetype/ftbbox.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_CACHE_H                                                         */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the API of the optional FreeType 2 cache sub-system.               */
-  /*                                                                       */
-#define FT_CACHE_H  <freetype/ftcache.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_CACHE_IMAGE_H                                                   */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the `glyph image' API of the FreeType 2 cache sub-system.          */
-  /*                                                                       */
-  /*    It is used to define a cache for @FT_Glyph elements.  You can also */
-  /*    see the API defined in @FT_CACHE_SMALL_BITMAPS_H if you only need  */
-  /*    to store small glyph bitmaps, as it will use less memory.          */
-  /*                                                                       */
-  /*    This macro is deprecated.  Simply include @FT_CACHE_H to have all  */
-  /*    glyph image-related cache declarations.                            */
-  /*                                                                       */
-#define FT_CACHE_IMAGE_H  FT_CACHE_H
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_CACHE_SMALL_BITMAPS_H                                           */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the `small bitmaps' API of the FreeType 2 cache sub-system.        */
-  /*                                                                       */
-  /*    It is used to define a cache for small glyph bitmaps in a          */
-  /*    relatively memory-efficient way.  You can also use the API defined */
-  /*    in @FT_CACHE_IMAGE_H if you want to cache arbitrary glyph images,  */
-  /*    including scalable outlines.                                       */
-  /*                                                                       */
-  /*    This macro is deprecated.  Simply include @FT_CACHE_H to have all  */
-  /*    small bitmaps-related cache declarations.                          */
-  /*                                                                       */
-#define FT_CACHE_SMALL_BITMAPS_H  FT_CACHE_H
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_CACHE_CHARMAP_H                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the `charmap' API of the FreeType 2 cache sub-system.              */
-  /*                                                                       */
-  /*    This macro is deprecated.  Simply include @FT_CACHE_H to have all  */
-  /*    charmap-based cache declarations.                                  */
-  /*                                                                       */
-#define FT_CACHE_CHARMAP_H     FT_CACHE_H
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_MAC_H                                                           */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the Macintosh-specific FreeType 2 API. The latter is used to       */
-  /*    access fonts embedded in resource forks.                           */
-  /*                                                                       */
-  /*    This header file must be explicitly included by client             */
-  /*    applications compiled on the Mac (note that the base API still     */
-  /*    works though).                                                     */
-  /*                                                                       */
-#define FT_MAC_H  <freetype/ftmac.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_MULTIPLE_MASTERS_H                                              */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the optional multiple-masters management API of FreeType 2.        */
-  /*                                                                       */
-#define FT_MULTIPLE_MASTERS_H  <freetype/ftmm.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_SFNT_NAMES_H                                                    */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the optional FreeType 2 API used to access embedded `name' strings */
-  /*    in SFNT-based font formats (i.e. TrueType and OpenType).           */
-  /*                                                                       */
-#define FT_SFNT_NAMES_H  <freetype/ftsnames.h>
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_OPENTYPE_VALIDATE_H                                             */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro used in #include statements to name the file containing    */
-  /*    the optional FreeType 2 API used to validate OpenType tables       */
-  /*    (BASE, GDEF, GPOS, GSUB, JSTF).                                    */
-  /*                                                                       */
-#define FT_OPENTYPE_VALIDATE_H  <freetype/ftotval.h>
-
-
-  /* */
-
-#define FT_TRIGONOMETRY_H       <freetype/fttrigon.h>
-#define FT_STROKER_H            <freetype/ftstroke.h>
-#define FT_SYNTHESIS_H          <freetype/ftsynth.h>
-#define FT_ERROR_DEFINITIONS_H  <freetype/fterrdef.h>
-
-#define FT_CACHE_MANAGER_H  <freetype/cache/ftcmanag.h>
-
-#define FT_CACHE_INTERNAL_MRU_H      <freetype/cache/ftcmru.h>
-#define FT_CACHE_INTERNAL_MANAGER_H  <freetype/cache/ftcmanag.h>
-#define FT_CACHE_INTERNAL_CACHE_H    <freetype/cache/ftccache.h>
-#define FT_CACHE_INTERNAL_GLYPH_H    <freetype/cache/ftcglyph.h>
-#define FT_CACHE_INTERNAL_IMAGE_H    <freetype/cache/ftcimage.h>
-#define FT_CACHE_INTERNAL_SBITS_H    <freetype/cache/ftcsbits.h>
-
-
-#define FT_XFREE86_H              <freetype/ftxf86.h>
-
-#define FT_INCREMENTAL_H          <freetype/ftincrem.h>
-
-#define FT_TRUETYPE_UNPATENTED_H  <freetype/ttunpat.h>
-
-  /* now include internal headers definitions from <freetype/internal/...> */
-
-#define  FT_INTERNAL_INTERNAL_H  <freetype/internal/internal.h>
-#include FT_INTERNAL_INTERNAL_H
-
-
-#endif /* __FT2_BUILD_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/config/ftmodule.h b/dependencies64/sfml/extlibs/headers/freetype/config/ftmodule.h
deleted file mode 100644 (file)
index b8f67bb..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-FT_USE_MODULE(autofit_module_class)
-FT_USE_MODULE(tt_driver_class)
-FT_USE_MODULE(t1_driver_class)
-FT_USE_MODULE(cff_driver_class)
-FT_USE_MODULE(t1cid_driver_class)
-FT_USE_MODULE(pfr_driver_class)
-FT_USE_MODULE(t42_driver_class)
-FT_USE_MODULE(winfnt_driver_class)
-FT_USE_MODULE(pcf_driver_class)
-FT_USE_MODULE(psaux_module_class)
-FT_USE_MODULE(psnames_module_class)
-FT_USE_MODULE(pshinter_module_class)
-FT_USE_MODULE(ft_raster1_renderer_class)
-FT_USE_MODULE(sfnt_module_class)
-FT_USE_MODULE(ft_smooth_renderer_class)
-FT_USE_MODULE(ft_smooth_lcd_renderer_class)
-FT_USE_MODULE(ft_smooth_lcdv_renderer_class)
-FT_USE_MODULE(otv_module_class)
-FT_USE_MODULE(bdf_driver_class)
diff --git a/dependencies64/sfml/extlibs/headers/freetype/config/ftoption.h b/dependencies64/sfml/extlibs/headers/freetype/config/ftoption.h
deleted file mode 100644 (file)
index 0bcecf7..0000000
+++ /dev/null
@@ -1,565 +0,0 @@
-/***************************************************************************/\r
-/*                                                                         */\r
-/*  ftoption.h                                                             */\r
-/*                                                                         */\r
-/*    User-selectable configuration macros (specification only).           */\r
-/*                                                                         */\r
-/*  Copyright 1996-2001, 2002, 2003, 2004, 2005 by                         */\r
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */\r
-/*                                                                         */\r
-/*  This file is part of the FreeType project, and may only be used,       */\r
-/*  modified, and distributed under the terms of the FreeType project      */\r
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */\r
-/*  this file you indicate that you have read the license and              */\r
-/*  understand and accept it fully.                                        */\r
-/*                                                                         */\r
-/***************************************************************************/\r
-\r
-\r
-#ifndef __FTOPTION_H__\r
-#define __FTOPTION_H__\r
-\r
-\r
-#include <ft2build.h>\r
-\r
-\r
-FT_BEGIN_HEADER\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /*                 USER-SELECTABLE CONFIGURATION MACROS                  */\r
-  /*                                                                       */\r
-  /* This file contains the default configuration macro definitions for    */\r
-  /* a standard build of the FreeType library.  There are three ways to    */\r
-  /* use this file to build project-specific versions of the library:      */\r
-  /*                                                                       */\r
-  /*  - You can modify this file by hand, but this is not recommended in   */\r
-  /*    cases where you would like to build several versions of the        */\r
-  /*    library from a single source directory.                            */\r
-  /*                                                                       */\r
-  /*  - You can put a copy of this file in your build directory, more      */\r
-  /*    precisely in "$BUILD/freetype/config/ftoption.h", where "$BUILD"   */\r
-  /*    is the name of a directory that is included _before_ the FreeType  */\r
-  /*    include path during compilation.                                   */\r
-  /*                                                                       */\r
-  /*    The default FreeType Makefiles and Jamfiles use the build          */\r
-  /*    directory "builds/<system>" by default, but you can easily change  */\r
-  /*    that for your own projects.                                        */\r
-  /*                                                                       */\r
-  /*  - Copy the file <ft2build.h> to "$BUILD/ft2build.h" and modify it    */\r
-  /*    slightly to pre-define the macro FT_CONFIG_OPTIONS_H used to       */\r
-  /*    locate this file during the build.  For example,                   */\r
-  /*                                                                       */\r
-  /*      #define FT_CONFIG_OPTIONS_H  <myftoptions.h>                     */\r
-  /*      #include <freetype/config/ftheader.h>                            */\r
-  /*                                                                       */\r
-  /*    will use "$BUILD/myftoptions.h" instead of this file for macro     */\r
-  /*    definitions.                                                       */\r
-  /*                                                                       */\r
-  /*    Note also that you can similarly pre-define the macro              */\r
-  /*    FT_CONFIG_MODULES_H used to locate the file listing of the modules */\r
-  /*    that are statically linked to the library at compile time.  By     */\r
-  /*    default, this file is <freetype/config/ftmodule.h>.                */\r
-  /*                                                                       */\r
-  /*  We highly recommend using the third method whenever possible.        */\r
-  /*                                                                       */\r
-  /*************************************************************************/\r
-\r
-\r
-  /*************************************************************************/\r
-  /*************************************************************************/\r
-  /****                                                                 ****/\r
-  /**** G E N E R A L   F R E E T Y P E   2   C O N F I G U R A T I O N ****/\r
-  /****                                                                 ****/\r
-  /*************************************************************************/\r
-  /*************************************************************************/\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Many compilers provide a non-ANSI 64-bit data type that can be used   */\r
-  /* by FreeType to speed up some computations.  However, this will create */\r
-  /* some problems when compiling the library in strict ANSI mode.         */\r
-  /*                                                                       */\r
-  /* For this reason, the use of 64-bit integers is normally disabled when */\r
-  /* the __STDC__ macro is defined.  You can however disable this by       */\r
-  /* defining the macro FT_CONFIG_OPTION_FORCE_INT64 here.                 */\r
-  /*                                                                       */\r
-  /* For most compilers, this will only create compilation warnings when   */\r
-  /* building the library.                                                 */\r
-  /*                                                                       */\r
-  /* ObNote: The compiler-specific 64-bit integers are detected in the     */\r
-  /*         file "ftconfig.h" either statically or through the            */\r
-  /*         `configure' script on supported platforms.                    */\r
-  /*                                                                       */\r
-#undef  FT_CONFIG_OPTION_FORCE_INT64\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* LZW-compressed file support.                                          */\r
-  /*                                                                       */\r
-  /*   FreeType now handles font files that have been compressed with the  */\r
-  /*   'compress' program.  This is mostly used to parse many of the PCF   */\r
-  /*   files that come with various X11 distributions.  The implementation */\r
-  /*   uses NetBSD's `zopen' to partially uncompress the file on the fly   */\r
-  /*   (see src/lzw/ftgzip.c).                                             */\r
-  /*                                                                       */\r
-  /*   Define this macro if you want to enable this `feature'.             */\r
-  /*                                                                       */\r
-#define FT_CONFIG_OPTION_USE_LZW\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Gzip-compressed file support.                                         */\r
-  /*                                                                       */\r
-  /*   FreeType now handles font files that have been compressed with the  */\r
-  /*   'gzip' program.  This is mostly used to parse many of the PCF files */\r
-  /*   that come with XFree86.  The implementation uses `zlib' to          */\r
-  /*   partially uncompress the file on the fly (see src/gzip/ftgzip.c).   */\r
-  /*                                                                       */\r
-  /*   Define this macro if you want to enable this `feature'.  See also   */\r
-  /*   the macro FT_CONFIG_OPTION_SYSTEM_ZLIB below.                       */\r
-  /*                                                                       */\r
-#define FT_CONFIG_OPTION_USE_ZLIB\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* ZLib library selection                                                */\r
-  /*                                                                       */\r
-  /*   This macro is only used when FT_CONFIG_OPTION_USE_ZLIB is defined.  */\r
-  /*   It allows FreeType's `ftgzip' component to link to the system's     */\r
-  /*   installation of the ZLib library.  This is useful on systems like   */\r
-  /*   Unix or VMS where it generally is already available.                */\r
-  /*                                                                       */\r
-  /*   If you let it undefined, the component will use its own copy        */\r
-  /*   of the zlib sources instead.  These have been modified to be        */\r
-  /*   included directly within the component and *not* export external    */\r
-  /*   function names.  This allows you to link any program with FreeType  */\r
-  /*   _and_ ZLib without linking conflicts.                               */\r
-  /*                                                                       */\r
-  /*   Do not #undef this macro here since the build system might define   */\r
-  /*   it for certain configurations only.                                 */\r
-  /*                                                                       */\r
-/* #define  FT_CONFIG_OPTION_SYSTEM_ZLIB */\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* DLL export compilation                                                */\r
-  /*                                                                       */\r
-  /*   When compiling FreeType as a DLL, some systems/compilers need a     */\r
-  /*   special keyword in front OR after the return type of function       */\r
-  /*   declarations.                                                       */\r
-  /*                                                                       */\r
-  /*   Two macros are used within the FreeType source code to define       */\r
-  /*   exported library functions: FT_EXPORT and FT_EXPORT_DEF.            */\r
-  /*                                                                       */\r
-  /*     FT_EXPORT( return_type )                                          */\r
-  /*                                                                       */\r
-  /*       is used in a function declaration, as in                        */\r
-  /*                                                                       */\r
-  /*         FT_EXPORT( FT_Error )                                         */\r
-  /*         FT_Init_FreeType( FT_Library*  alibrary );                    */\r
-  /*                                                                       */\r
-  /*                                                                       */\r
-  /*     FT_EXPORT_DEF( return_type )                                      */\r
-  /*                                                                       */\r
-  /*       is used in a function definition, as in                         */\r
-  /*                                                                       */\r
-  /*         FT_EXPORT_DEF( FT_Error )                                     */\r
-  /*         FT_Init_FreeType( FT_Library*  alibrary )                     */\r
-  /*         {                                                             */\r
-  /*           ... some code ...                                           */\r
-  /*           return FT_Err_Ok;                                           */\r
-  /*         }                                                             */\r
-  /*                                                                       */\r
-  /*   You can provide your own implementation of FT_EXPORT and            */\r
-  /*   FT_EXPORT_DEF here if you want.  If you leave them undefined, they  */\r
-  /*   will be later automatically defined as `extern return_type' to      */\r
-  /*   allow normal compilation.                                           */\r
-  /*                                                                       */\r
-  /*   Do not #undef these macros here since the build system might define */\r
-  /*   them for certain configurations only.                               */\r
-  /*                                                                       */\r
-/* #define  FT_EXPORT(x)       extern x */\r
-/* #define  FT_EXPORT_DEF(x)   x */\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Glyph Postscript Names handling                                       */\r
-  /*                                                                       */\r
-  /*   By default, FreeType 2 is compiled with the `PSNames' module.  This */\r
-  /*   module is in charge of converting a glyph name string into a        */\r
-  /*   Unicode value, or return a Macintosh standard glyph name for the    */\r
-  /*   use with the TrueType `post' table.                                 */\r
-  /*                                                                       */\r
-  /*   Undefine this macro if you do not want `PSNames' compiled in your   */\r
-  /*   build of FreeType.  This has the following effects:                 */\r
-  /*                                                                       */\r
-  /*   - The TrueType driver will provide its own set of glyph names,      */\r
-  /*     if you build it to support postscript names in the TrueType       */\r
-  /*     `post' table.                                                     */\r
-  /*                                                                       */\r
-  /*   - The Type 1 driver will not be able to synthetize a Unicode        */\r
-  /*     charmap out of the glyphs found in the fonts.                     */\r
-  /*                                                                       */\r
-  /*   You would normally undefine this configuration macro when building  */\r
-  /*   a version of FreeType that doesn't contain a Type 1 or CFF driver.  */\r
-  /*                                                                       */\r
-#define FT_CONFIG_OPTION_POSTSCRIPT_NAMES\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Postscript Names to Unicode Values support                            */\r
-  /*                                                                       */\r
-  /*   By default, FreeType 2 is built with the `PSNames' module compiled  */\r
-  /*   in.  Among other things, the module is used to convert a glyph name */\r
-  /*   into a Unicode value.  This is especially useful in order to        */\r
-  /*   synthetize on the fly a Unicode charmap from the CFF/Type 1 driver  */\r
-  /*   through a big table named the `Adobe Glyph List' (AGL).             */\r
-  /*                                                                       */\r
-  /*   Undefine this macro if you do not want the Adobe Glyph List         */\r
-  /*   compiled in your `PSNames' module.  The Type 1 driver will not be   */\r
-  /*   able to synthetize a Unicode charmap out of the glyphs found in the */\r
-  /*   fonts.                                                              */\r
-  /*                                                                       */\r
-#define FT_CONFIG_OPTION_ADOBE_GLYPH_LIST\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Support for Mac fonts                                                 */\r
-  /*                                                                       */\r
-  /*   Define this macro if you want support for outline fonts in Mac      */\r
-  /*   format (mac dfont, mac resource, macbinary containing a mac         */\r
-  /*   resource) on non-Mac platforms.                                     */\r
-  /*                                                                       */\r
-  /*   Note that the `FOND' resource isn't checked.                        */\r
-  /*                                                                       */\r
-#define FT_CONFIG_OPTION_MAC_FONTS\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Guessing methods to access embedded resource forks                    */\r
-  /*                                                                       */\r
-  /*   Enable extra Mac fonts support on non-Mac platforms (e.g.           */\r
-  /*   GNU/Linux).                                                         */\r
-  /*                                                                       */\r
-  /*   Resource forks which include fonts data are stored sometimes in     */\r
-  /*   locations which users or developers don't expected.  In some cases, */\r
-  /*   resource forks start with some offset from the head of a file.  In  */\r
-  /*   other cases, the actual resource fork is stored in file different   */\r
-  /*   from what the user specifies.  If this option is activated,         */\r
-  /*   FreeType tries to guess whether such offsets or different file      */\r
-  /*   names must be used.                                                 */\r
-  /*                                                                       */\r
-  /*   Note that normal, direct access of resource forks is controlled via */\r
-  /*   the FT_CONFIG_OPTION_MAC_FONTS option.                              */\r
-  /*                                                                       */\r
-#ifdef FT_CONFIG_OPTION_MAC_FONTS\r
-#define FT_CONFIG_OPTION_GUESSING_EMBEDDED_RFORK\r
-#endif\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Allow the use of FT_Incremental_Interface to load typefaces that      */\r
-  /* contain no glyph data, but supply it via a callback function.         */\r
-  /* This allows FreeType to be used with the PostScript language, using   */\r
-  /* the GhostScript interpreter.                                          */\r
-  /*                                                                       */\r
-/* #define FT_CONFIG_OPTION_INCREMENTAL */\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* The size in bytes of the render pool used by the scan-line converter  */\r
-  /* to do all of its work.                                                */\r
-  /*                                                                       */\r
-  /* This must be greater than 4KByte.                                     */\r
-  /*                                                                       */\r
-#define FT_RENDER_POOL_SIZE  16384L\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* FT_MAX_MODULES                                                        */\r
-  /*                                                                       */\r
-  /*   The maximum number of modules that can be registered in a single    */\r
-  /*   FreeType library object.  32 is the default.                        */\r
-  /*                                                                       */\r
-#define FT_MAX_MODULES  32\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Debug level                                                           */\r
-  /*                                                                       */\r
-  /*   FreeType can be compiled in debug or trace mode.  In debug mode,    */\r
-  /*   errors are reported through the `ftdebug' component.  In trace      */\r
-  /*   mode, additional messages are sent to the standard output during    */\r
-  /*   execution.                                                          */\r
-  /*                                                                       */\r
-  /*   Define FT_DEBUG_LEVEL_ERROR to build the library in debug mode.     */\r
-  /*   Define FT_DEBUG_LEVEL_TRACE to build it in trace mode.              */\r
-  /*                                                                       */\r
-  /*   Don't define any of these macros to compile in `release' mode!      */\r
-  /*                                                                       */\r
-  /*   Do not #undef these macros here since the build system might define */\r
-  /*   them for certain configurations only.                               */\r
-  /*                                                                       */\r
-/* #define FT_DEBUG_LEVEL_ERROR */\r
-/* #define FT_DEBUG_LEVEL_TRACE */\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Memory Debugging                                                      */\r
-  /*                                                                       */\r
-  /*   FreeType now comes with an integrated memory debugger that is       */\r
-  /*   capable of detecting simple errors like memory leaks or double      */\r
-  /*   deletes.  To compile it within your build of the library, you       */\r
-  /*   should define FT_DEBUG_MEMORY here.                                 */\r
-  /*                                                                       */\r
-  /*   Note that the memory debugger is only activated at runtime when     */\r
-  /*   when the _environment_ variable "FT2_DEBUG_MEMORY" is defined also! */\r
-  /*                                                                       */\r
-  /*   Do not #undef this macro here since the build system might define   */\r
-  /*   it for certain configurations only.                                 */\r
-  /*                                                                       */\r
-/* #define FT_DEBUG_MEMORY */\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Module errors                                                         */\r
-  /*                                                                       */\r
-  /*   If this macro is set (which is _not_ the default), the higher byte  */\r
-  /*   of an error code gives the module in which the error has occurred,  */\r
-  /*   while the lower byte is the real error code.                        */\r
-  /*                                                                       */\r
-  /*   Setting this macro makes sense for debugging purposes only, since   */\r
-  /*   it would break source compatibility of certain programs that use    */\r
-  /*   FreeType 2.                                                         */\r
-  /*                                                                       */\r
-  /*   More details can be found in the files ftmoderr.h and fterrors.h.   */\r
-  /*                                                                       */\r
-#undef FT_CONFIG_OPTION_USE_MODULE_ERRORS\r
-\r
-\r
-\r
-  /*************************************************************************/\r
-  /*************************************************************************/\r
-  /****                                                                 ****/\r
-  /****        S F N T   D R I V E R    C O N F I G U R A T I O N       ****/\r
-  /****                                                                 ****/\r
-  /*************************************************************************/\r
-  /*************************************************************************/\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define TT_CONFIG_OPTION_EMBEDDED_BITMAPS if you want to support       */\r
-  /* embedded bitmaps in all formats using the SFNT module (namely         */\r
-  /* TrueType & OpenType).                                                 */\r
-  /*                                                                       */\r
-#define TT_CONFIG_OPTION_EMBEDDED_BITMAPS\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define TT_CONFIG_OPTION_POSTSCRIPT_NAMES if you want to be able to    */\r
-  /* load and enumerate the glyph Postscript names in a TrueType or        */\r
-  /* OpenType file.                                                        */\r
-  /*                                                                       */\r
-  /* Note that when you do not compile the `PSNames' module by undefining  */\r
-  /* the above FT_CONFIG_OPTION_POSTSCRIPT_NAMES, the `sfnt' module will   */\r
-  /* contain additional code used to read the PS Names table from a font.  */\r
-  /*                                                                       */\r
-  /* (By default, the module uses `PSNames' to extract glyph names.)       */\r
-  /*                                                                       */\r
-#define TT_CONFIG_OPTION_POSTSCRIPT_NAMES\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define TT_CONFIG_OPTION_SFNT_NAMES if your applications need to       */\r
-  /* access the internal name table in a SFNT-based format like TrueType   */\r
-  /* or OpenType.  The name table contains various strings used to         */\r
-  /* describe the font, like family name, copyright, version, etc.  It     */\r
-  /* does not contain any glyph name though.                               */\r
-  /*                                                                       */\r
-  /* Accessing SFNT names is done through the functions declared in        */\r
-  /* `freetype/ftnames.h'.                                                 */\r
-  /*                                                                       */\r
-#define TT_CONFIG_OPTION_SFNT_NAMES\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* TrueType CMap support                                                 */\r
-  /*                                                                       */\r
-  /*   Here you can fine-tune which TrueType CMap table format shall be    */\r
-  /*   supported.                                                          */\r
-#define TT_CONFIG_CMAP_FORMAT_0\r
-#define TT_CONFIG_CMAP_FORMAT_2\r
-#define TT_CONFIG_CMAP_FORMAT_4\r
-#define TT_CONFIG_CMAP_FORMAT_6\r
-#define TT_CONFIG_CMAP_FORMAT_8\r
-#define TT_CONFIG_CMAP_FORMAT_10\r
-#define TT_CONFIG_CMAP_FORMAT_12\r
-\r
-\r
-  /*************************************************************************/\r
-  /*************************************************************************/\r
-  /****                                                                 ****/\r
-  /****    T R U E T Y P E   D R I V E R    C O N F I G U R A T I O N   ****/\r
-  /****                                                                 ****/\r
-  /*************************************************************************/\r
-  /*************************************************************************/\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define TT_CONFIG_OPTION_BYTECODE_INTERPRETER if you want to compile   */\r
-  /* a bytecode interpreter in the TrueType driver.  Note that there are   */\r
-  /* important patent issues related to the use of the interpreter.        */\r
-  /*                                                                       */\r
-  /* By undefining this, you will only compile the code necessary to load  */\r
-  /* TrueType glyphs without hinting.                                      */\r
-  /*                                                                       */\r
-  /*   Do not #undef this macro here, since the build system might         */\r
-  /*   define it for certain configurations only.                          */\r
-  /*                                                                       */\r
-/* #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER */\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define TT_CONFIG_OPTION_UNPATENTED_HINTING (in addition to            */\r
-  /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER) to compile the unpatented      */\r
-  /* work-around hinting system.  Note that for the moment, the algorithm  */\r
-  /* is only used when selected at runtime through the parameter tag       */\r
-  /* FT_PARAM_TAG_UNPATENTED_HINTING; or when the debug hook               */\r
-  /* FT_DEBUG_HOOK_UNPATENTED_HINTING is globally activated.               */\r
-  /*                                                                       */\r
-#define TT_CONFIG_OPTION_UNPATENTED_HINTING\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define TT_CONFIG_OPTION_INTERPRETER_SWITCH to compile the TrueType    */\r
-  /* bytecode interpreter with a huge switch statement, rather than a call */\r
-  /* table.  This results in smaller and faster code for a number of       */\r
-  /* architectures.                                                        */\r
-  /*                                                                       */\r
-  /* Note however that on some compiler/processor combinations, undefining */\r
-  /* this macro will generate faster, though larger, code.                 */\r
-  /*                                                                       */\r
-#define TT_CONFIG_OPTION_INTERPRETER_SWITCH\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED to compile the        */\r
-  /* TrueType glyph loader to use Apple's definition of how to handle      */\r
-  /* component offsets in composite glyphs.                                */\r
-  /*                                                                       */\r
-  /* Apple and MS disagree on the default behavior of component offsets    */\r
-  /* in composites.  Apple says that they should be scaled by the scale    */\r
-  /* factors in the transformation matrix (roughly, it's more complex)     */\r
-  /* while MS says they should not.  OpenType defines two bits in the      */\r
-  /* composite flags array which can be used to disambiguate, but old      */\r
-  /* fonts will not have them.                                             */\r
-  /*                                                                       */\r
-  /*   http://partners.adobe.com/asn/developer/opentype/glyf.html          */\r
-  /*   http://fonts.apple.com/TTRefMan/RM06/Chap6glyf.html                 */\r
-  /*                                                                       */\r
-#undef TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define TT_CONFIG_OPTION_GX_VAR_SUPPORT if you want to include         */\r
-  /* support for Apple's distortable font technology (fvar, gvar, cvar,    */\r
-  /* and avar tables).  This has many similarities to Type 1 Multiple      */\r
-  /* Masters support.                                                      */\r
-  /*                                                                       */\r
-#define TT_CONFIG_OPTION_GX_VAR_SUPPORT\r
-\r
-\r
-  /*************************************************************************/\r
-  /*************************************************************************/\r
-  /****                                                                 ****/\r
-  /****      T Y P E 1   D R I V E R    C O N F I G U R A T I O N       ****/\r
-  /****                                                                 ****/\r
-  /*************************************************************************/\r
-  /*************************************************************************/\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* T1_MAX_DICT_DEPTH is the maximal depth of nest dictionaries and       */\r
-  /* arrays in the Type 1 stream (see t1load.c).  A minimum of 4 is        */\r
-  /* required.                                                             */\r
-  /*                                                                       */\r
-#define T1_MAX_DICT_DEPTH  5\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* T1_MAX_SUBRS_CALLS details the maximum number of nested sub-routine   */\r
-  /* calls during glyph loading.                                           */\r
-  /*                                                                       */\r
-#define T1_MAX_SUBRS_CALLS  16\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* T1_MAX_CHARSTRING_OPERANDS is the charstring stack's capacity.  A     */\r
-  /* minimum of 16 is required.                                            */\r
-  /*                                                                       */\r
-  /* The Chinese font MingTiEG-Medium (CNS 11643 character set) needs 256. */\r
-  /*                                                                       */\r
-#define T1_MAX_CHARSTRINGS_OPERANDS  256\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define this configuration macro if you want to prevent the            */\r
-  /* compilation of `t1afm', which is in charge of reading Type 1 AFM      */\r
-  /* files into an existing face.  Note that if set, the T1 driver will be */\r
-  /* unable to produce kerning distances.                                  */\r
-  /*                                                                       */\r
-#undef T1_CONFIG_OPTION_NO_AFM\r
-\r
-\r
-  /*************************************************************************/\r
-  /*                                                                       */\r
-  /* Define this configuration macro if you want to prevent the            */\r
-  /* compilation of the Multiple Masters font support in the Type 1        */\r
-  /* driver.                                                               */\r
-  /*                                                                       */\r
-#undef T1_CONFIG_OPTION_NO_MM_SUPPORT\r
-\r
- /* */\r
-\r
-/*\r
- * This temporary macro is used to control various optimizations for\r
- * reducing the heap footprint of memory-mapped TrueType files.\r
- *\r
- */\r
-/* #define  FT_OPTIMIZE_MEMORY */\r
-\r
-FT_END_HEADER\r
-\r
-\r
-#endif /* __FTOPTION_H__ */\r
-\r
-\r
-/* END */\r
diff --git a/dependencies64/sfml/extlibs/headers/freetype/config/ftstdlib.h b/dependencies64/sfml/extlibs/headers/freetype/config/ftstdlib.h
deleted file mode 100644 (file)
index 4b9b398..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftstdlib.h                                                             */
-/*                                                                         */
-/*    ANSI-specific library and header configuration file (specification   */
-/*    only).                                                               */
-/*                                                                         */
-/*  Copyright 2002, 2003, 2004 by                                          */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to group all #includes to the ANSI C library that   */
-  /* FreeType normally requires.  It also defines macros to rename the     */
-  /* standard functions within the FreeType source code.                   */
-  /*                                                                       */
-  /* Load a file which defines __FTSTDLIB_H__ before this one to override  */
-  /* it.                                                                   */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTSTDLIB_H__
-#define __FTSTDLIB_H__
-
-
-#include <stddef.h>
-
-#define ft_ptrdiff_t  ptrdiff_t
-
-
-  /**********************************************************************/
-  /*                                                                    */
-  /*                           integer limits                           */
-  /*                                                                    */
-  /* UINT_MAX and ULONG_MAX are used to automatically compute the size  */
-  /* of `int' and `long' in bytes at compile-time.  So far, this works  */
-  /* for all platforms the library has been tested on.                  */
-  /*                                                                    */
-  /* Note that on the extremely rare platforms that do not provide      */
-  /* integer types that are _exactly_ 16 and 32 bits wide (e.g. some    */
-  /* old Crays where `int' is 36 bits), we do not make any guarantee    */
-  /* about the correct behaviour of FT2 with all fonts.                 */
-  /*                                                                    */
-  /* In these case, "ftconfig.h" will refuse to compile anyway with a   */
-  /* message like "couldn't find 32-bit type" or something similar.     */
-  /*                                                                    */
-  /* IMPORTANT NOTE: We do not define aliases for heap management and   */
-  /*                 i/o routines (i.e. malloc/free/fopen/fread/...)    */
-  /*                 since these functions should all be encapsulated   */
-  /*                 by platform-specific implementations of            */
-  /*                 "ftsystem.c".                                      */
-  /*                                                                    */
-  /**********************************************************************/
-
-
-#include <limits.h>
-
-#define FT_UINT_MAX   UINT_MAX
-#define FT_INT_MAX    INT_MAX
-#define FT_ULONG_MAX  ULONG_MAX
-
-
-  /**********************************************************************/
-  /*                                                                    */
-  /*                 character and string processing                    */
-  /*                                                                    */
-  /**********************************************************************/
-
-
-#include <ctype.h>
-
-#define ft_isalnum   isalnum
-#define ft_isupper   isupper
-#define ft_islower   islower
-#define ft_isdigit   isdigit
-#define ft_isxdigit  isxdigit
-
-
-#include <string.h>
-
-#define ft_memcmp   memcmp
-#define ft_memcpy   memcpy
-#define ft_memmove  memmove
-#define ft_memset   memset
-#define ft_strcat   strcat
-#define ft_strcmp   strcmp
-#define ft_strcpy   strcpy
-#define ft_strlen   strlen
-#define ft_strncmp  strncmp
-#define ft_strncpy  strncpy
-#define ft_strrchr  strrchr
-
-
-#include <stdio.h>
-
-#define ft_sprintf  sprintf
-
-
-  /**********************************************************************/
-  /*                                                                    */
-  /*                             sorting                                */
-  /*                                                                    */
-  /**********************************************************************/
-
-
-#include <stdlib.h>
-
-#define ft_qsort  qsort
-#define ft_exit   exit    /* only used to exit from unhandled exceptions */
-
-#define ft_atol   atol
-
-
-  /**********************************************************************/
-  /*                                                                    */
-  /*                         execution control                          */
-  /*                                                                    */
-  /**********************************************************************/
-
-
-#include <setjmp.h>
-
-#define ft_jmp_buf  jmp_buf   /* note: this cannot be a typedef since */
-                              /*       jmp_buf is defined as a macro  */
-                              /*       on certain platforms           */
-
-#define ft_setjmp   setjmp    /* same thing here */
-#define ft_longjmp  longjmp   /* "               */
-
-
-  /* the following is only used for debugging purposes, i.e. when */
-  /* FT_DEBUG_LEVEL_ERROR or FT_DEBUG_LEVEL_TRACE are defined     */
-  /*                                                              */
-#include <stdarg.h>
-
-
-#endif /* __FTSTDLIB_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/freetype.h b/dependencies64/sfml/extlibs/headers/freetype/freetype.h
deleted file mode 100644 (file)
index 7b2a96c..0000000
+++ /dev/null
@@ -1,3089 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  freetype.h                                                             */
-/*                                                                         */
-/*    FreeType high-level API and common types (specification only).       */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004, 2005 by                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef FT_FREETYPE_H
-#error "`ft2build.h' hasn't been included yet!"
-#error "Please always use macros to include FreeType header files."
-#error "Example:"
-#error "  #include <ft2build.h>"
-#error "  #include FT_FREETYPE_H"
-#endif
-
-
-#ifndef __FREETYPE_H__
-#define __FREETYPE_H__
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* The `raster' component duplicates some of the declarations in         */
-  /* freetype.h for stand-alone use if _FREETYPE_ isn't defined.           */
-  /*                                                                       */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* The FREETYPE_MAJOR and FREETYPE_MINOR macros are used to version the  */
-  /* new FreeType design, which is able to host several kinds of font      */
-  /* drivers.  It starts at 2.0.                                           */
-  /*                                                                       */
-#define FREETYPE_MAJOR 2
-#define FREETYPE_MINOR 1
-#define FREETYPE_PATCH 10
-
-
-#include <ft2build.h>
-#include FT_CONFIG_CONFIG_H
-#include FT_ERRORS_H
-#include FT_TYPES_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*                                                                       */
-  /*                        B A S I C   T Y P E S                          */
-  /*                                                                       */
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    base_interface                                                     */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Base Interface                                                     */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    The FreeType 2 base font interface.                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section describes the public high-level API of FreeType 2.    */
-  /*                                                                       */
-  /* <Order>                                                               */
-  /*    FT_Library                                                         */
-  /*    FT_Face                                                            */
-  /*    FT_Size                                                            */
-  /*    FT_GlyphSlot                                                       */
-  /*    FT_CharMap                                                         */
-  /*    FT_Encoding                                                        */
-  /*                                                                       */
-  /*    FT_FaceRec                                                         */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_SCALABLE                                              */
-  /*    FT_FACE_FLAG_FIXED_SIZES                                           */
-  /*    FT_FACE_FLAG_FIXED_WIDTH                                           */
-  /*    FT_FACE_FLAG_HORIZONTAL                                            */
-  /*    FT_FACE_FLAG_VERTICAL                                              */
-  /*    FT_FACE_FLAG_SFNT                                                  */
-  /*    FT_FACE_FLAG_KERNING                                               */
-  /*    FT_FACE_FLAG_MULTIPLE_MASTERS                                      */
-  /*    FT_FACE_FLAG_GLYPH_NAMES                                           */
-  /*    FT_FACE_FLAG_EXTERNAL_STREAM                                       */
-  /*    FT_FACE_FLAG_FAST_GLYPHS                                           */
-  /*                                                                       */
-  /*    FT_STYLE_FLAG_BOLD                                                 */
-  /*    FT_STYLE_FLAG_ITALIC                                               */
-  /*                                                                       */
-  /*    FT_SizeRec                                                         */
-  /*    FT_Size_Metrics                                                    */
-  /*                                                                       */
-  /*    FT_GlyphSlotRec                                                    */
-  /*    FT_Glyph_Metrics                                                   */
-  /*    FT_SubGlyph                                                        */
-  /*                                                                       */
-  /*    FT_Bitmap_Size                                                     */
-  /*                                                                       */
-  /*    FT_Init_FreeType                                                   */
-  /*    FT_Done_FreeType                                                   */
-  /*    FT_Library_Version                                                 */
-  /*                                                                       */
-  /*    FT_New_Face                                                        */
-  /*    FT_Done_Face                                                       */
-  /*    FT_New_Memory_Face                                                 */
-  /*    FT_Open_Face                                                       */
-  /*    FT_Open_Args                                                       */
-  /*    FT_Parameter                                                       */
-  /*    FT_Attach_File                                                     */
-  /*    FT_Attach_Stream                                                   */
-  /*                                                                       */
-  /*    FT_Set_Char_Size                                                   */
-  /*    FT_Set_Pixel_Sizes                                                 */
-  /*    FT_Set_Transform                                                   */
-  /*    FT_Load_Glyph                                                      */
-  /*    FT_Get_Char_Index                                                  */
-  /*    FT_Get_Name_Index                                                  */
-  /*    FT_Load_Char                                                       */
-  /*                                                                       */
-  /*    FT_OPEN_MEMORY                                                     */
-  /*    FT_OPEN_STREAM                                                     */
-  /*    FT_OPEN_PATHNAME                                                   */
-  /*    FT_OPEN_DRIVER                                                     */
-  /*    FT_OPEN_PARAMS                                                     */
-  /*                                                                       */
-  /*    FT_LOAD_DEFAULT                                                    */
-  /*    FT_LOAD_RENDER                                                     */
-  /*    FT_LOAD_MONOCHROME                                                 */
-  /*    FT_LOAD_LINEAR_DESIGN                                              */
-  /*    FT_LOAD_NO_SCALE                                                   */
-  /*    FT_LOAD_NO_HINTING                                                 */
-  /*    FT_LOAD_NO_BITMAP                                                  */
-  /*    FT_LOAD_CROP_BITMAP                                                */
-  /*                                                                       */
-  /*    FT_LOAD_VERTICAL_LAYOUT                                            */
-  /*    FT_LOAD_IGNORE_TRANSFORM                                           */
-  /*    FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH                                */
-  /*    FT_LOAD_FORCE_AUTOHINT                                             */
-  /*    FT_LOAD_NO_RECURSE                                                 */
-  /*    FT_LOAD_PEDANTIC                                                   */
-  /*                                                                       */
-  /*    FT_LOAD_TARGET_NORMAL                                              */
-  /*    FT_LOAD_TARGET_LIGHT                                               */
-  /*    FT_LOAD_TARGET_MONO                                                */
-  /*    FT_LOAD_TARGET_LCD                                                 */
-  /*    FT_LOAD_TARGET_LCD_V                                               */
-  /*                                                                       */
-  /*    FT_Render_Glyph                                                    */
-  /*    FT_Render_Mode                                                     */
-  /*    FT_Get_Kerning                                                     */
-  /*    FT_Kerning_Mode                                                    */
-  /*    FT_Get_Glyph_Name                                                  */
-  /*    FT_Get_Postscript_Name                                             */
-  /*                                                                       */
-  /*    FT_CharMapRec                                                      */
-  /*    FT_Select_Charmap                                                  */
-  /*    FT_Set_Charmap                                                     */
-  /*    FT_Get_Charmap_Index                                               */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Glyph_Metrics                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model the metrics of a single glyph.  The      */
-  /*    values are expressed in 26.6 fractional pixel format; if the flag  */
-  /*    FT_LOAD_NO_SCALE is used, values are returned in font units        */
-  /*    instead.                                                           */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    width ::                                                           */
-  /*      The glyph's width.                                               */
-  /*                                                                       */
-  /*    height ::                                                          */
-  /*      The glyph's height.                                              */
-  /*                                                                       */
-  /*    horiBearingX ::                                                    */
-  /*      Left side bearing for horizontal layout.                         */
-  /*                                                                       */
-  /*    horiBearingY ::                                                    */
-  /*      Top side bearing for horizontal layout.                          */
-  /*                                                                       */
-  /*    horiAdvance ::                                                     */
-  /*      Advance width for horizontal layout.                             */
-  /*                                                                       */
-  /*    vertBearingX ::                                                    */
-  /*      Left side bearing for vertical layout.                           */
-  /*                                                                       */
-  /*    vertBearingY ::                                                    */
-  /*      Top side bearing for vertical layout.                            */
-  /*                                                                       */
-  /*    vertAdvance ::                                                     */
-  /*      Advance height for vertical layout.                              */
-  /*                                                                       */
-  typedef struct  FT_Glyph_Metrics_
-  {
-    FT_Pos  width;
-    FT_Pos  height;
-
-    FT_Pos  horiBearingX;
-    FT_Pos  horiBearingY;
-    FT_Pos  horiAdvance;
-
-    FT_Pos  vertBearingX;
-    FT_Pos  vertBearingY;
-    FT_Pos  vertAdvance;
-
-  } FT_Glyph_Metrics;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Bitmap_Size                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This structure models the size of a bitmap strike (i.e., a bitmap  */
-  /*    instance of the font for a given resolution) in a fixed-size font  */
-  /*    face.  It is used for the `available_sizes' field of the           */
-  /*    @FT_FaceRec structure.                                             */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    height :: The (vertical) baseline-to-baseline distance in pixels.  */
-  /*              It makes most sense to define the height of a bitmap     */
-  /*              font in this way.                                        */
-  /*                                                                       */
-  /*    width  :: The average width of the font (in pixels).  Since the    */
-  /*              algorithms to compute this value are different for the   */
-  /*              various bitmap formats, it can only give an additional   */
-  /*              hint if the `height' value isn't sufficient to select    */
-  /*              the proper font.  For monospaced fonts the average width */
-  /*              is the same as the maximum width.                        */
-  /*                                                                       */
-  /*    size   :: The point size in 26.6 fractional format this font shall */
-  /*              represent (for a given vertical resolution).             */
-  /*                                                                       */
-  /*    x_ppem :: The horizontal ppem value (in 26.6 fractional format).   */
-  /*                                                                       */
-  /*    y_ppem :: The vertical ppem value (in 26.6 fractional format).     */
-  /*              Usually, this is the `nominal' pixel height of the font. */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The values in this structure are taken from the bitmap font.  If   */
-  /*    the font doesn't provide a parameter it is set to zero to indicate */
-  /*    that the information is not available.                             */
-  /*                                                                       */
-  /*    The following formula converts from dpi to ppem:                   */
-  /*                                                                       */
-  /*      ppem = size * dpi / 72                                           */
-  /*                                                                       */
-  /*    where `size' is in points.                                         */
-  /*                                                                       */
-  /*    Windows FNT:                                                       */
-  /*      The `size' parameter is not reliable: There exist fonts (e.g.,   */
-  /*      app850.fon) which have a wrong size for some subfonts; x_ppem    */
-  /*      and y_ppem are thus set equal to pixel width and height given in */
-  /*      in the Windows FNT header.                                       */
-  /*                                                                       */
-  /*    TrueType embedded bitmaps:                                         */
-  /*      `size', `width', and `height' values are not contained in the    */
-  /*      bitmap strike itself.  They are computed from the global font    */
-  /*      parameters.                                                      */
-  /*                                                                       */
-  typedef struct  FT_Bitmap_Size_
-  {
-    FT_Short  height;
-    FT_Short  width;
-
-    FT_Pos    size;
-
-    FT_Pos    x_ppem;
-    FT_Pos    y_ppem;
-
-  } FT_Bitmap_Size;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*                                                                       */
-  /*                     O B J E C T   C L A S S E S                       */
-  /*                                                                       */
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Library                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a FreeType library instance.  Each `library' is        */
-  /*    completely independent from the others; it is the `root' of a set  */
-  /*    of objects like fonts, faces, sizes, etc.                          */
-  /*                                                                       */
-  /*    It also embeds a memory manager (see @FT_Memory), as well as a     */
-  /*    scan-line converter object (see @FT_Raster).                       */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Library objects are normally created by @FT_Init_FreeType, and     */
-  /*    destroyed with @FT_Done_FreeType.                                  */
-  /*                                                                       */
-  typedef struct FT_LibraryRec_  *FT_Library;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Module                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a given FreeType module object.  Each module can be a  */
-  /*    font driver, a renderer, or anything else that provides services   */
-  /*    to the formers.                                                    */
-  /*                                                                       */
-  typedef struct FT_ModuleRec_*  FT_Module;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Driver                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a given FreeType font driver object.  Each font driver */
-  /*    is a special module capable of creating faces from font files.     */
-  /*                                                                       */
-  typedef struct FT_DriverRec_*  FT_Driver;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Renderer                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a given FreeType renderer.  A renderer is a special    */
-  /*    module in charge of converting a glyph image to a bitmap, when     */
-  /*    necessary.  Each renderer supports a given glyph image format, and */
-  /*    one or more target surface depths.                                 */
-  /*                                                                       */
-  typedef struct FT_RendererRec_*  FT_Renderer;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Face                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a given typographic face object.  A face object models */
-  /*    a given typeface, in a given style.                                */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Each face object also owns a single @FT_GlyphSlot object, as well  */
-  /*    as one or more @FT_Size objects.                                   */
-  /*                                                                       */
-  /*    Use @FT_New_Face or @FT_Open_Face to create a new face object from */
-  /*    a given filepathname or a custom input stream.                     */
-  /*                                                                       */
-  /*    Use @FT_Done_Face to destroy it (along with its slot and sizes).   */
-  /*                                                                       */
-  /* <Also>                                                                */
-  /*    The @FT_FaceRec details the publicly accessible fields of a given  */
-  /*    face object.                                                       */
-  /*                                                                       */
-  typedef struct FT_FaceRec_*  FT_Face;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Size                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a given size object.  Such an object models the data   */
-  /*    that depends on the current _resolution_ and _character size_ in a */
-  /*    given @FT_Face.                                                    */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Each face object owns one or more sizes.  There is however a       */
-  /*    single _active_ size for the face at any time that will be used by */
-  /*    functions like @FT_Load_Glyph, @FT_Get_Kerning, etc.               */
-  /*                                                                       */
-  /*    You can use the @FT_Activate_Size API to change the current        */
-  /*    active size of any given face.                                     */
-  /*                                                                       */
-  /* <Also>                                                                */
-  /*    The @FT_SizeRec structure details the publicly accessible fields   */
-  /*    of a given face object.                                            */
-  /*                                                                       */
-  typedef struct FT_SizeRec_*  FT_Size;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_GlyphSlot                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a given `glyph slot'.  A slot is a container where it  */
-  /*    is possible to load any one of the glyphs contained in its parent  */
-  /*    face.                                                              */
-  /*                                                                       */
-  /*    In other words, each time you call @FT_Load_Glyph or               */
-  /*    @FT_Load_Char, the slot's content is erased by the new glyph data, */
-  /*    i.e. the glyph's metrics, its image (bitmap or outline), and       */
-  /*    other control information.                                         */
-  /*                                                                       */
-  /* <Also>                                                                */
-  /*    @FT_GlyphSlotRec details the publicly accessible glyph fields.     */
-  /*                                                                       */
-  typedef struct FT_GlyphSlotRec_*  FT_GlyphSlot;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_CharMap                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a given character map.  A charmap is used to translate */
-  /*    character codes in a given encoding into glyph indexes for its     */
-  /*    parent's face.  Some font formats may provide several charmaps per */
-  /*    font.                                                              */
-  /*                                                                       */
-  /*    Each face object owns zero or more charmaps, but only one of them  */
-  /*    can be "active" and used by @FT_Get_Char_Index or @FT_Load_Char.   */
-  /*                                                                       */
-  /*    The list of available charmaps in a face is available through the  */
-  /*    "face->num_charmaps" and "face->charmaps" fields of @FT_FaceRec.   */
-  /*                                                                       */
-  /*    The currently active charmap is available as "face->charmap".      */
-  /*    You should call @FT_Set_Charmap to change it.                      */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    When a new face is created (either through @FT_New_Face or         */
-  /*    @FT_Open_Face), the library looks for a Unicode charmap within     */
-  /*    the list and automatically activates it.                           */
-  /*                                                                       */
-  /* <Also>                                                                */
-  /*    The @FT_CharMapRec details the publicly accessible fields of a     */
-  /*    given character map.                                               */
-  /*                                                                       */
-  typedef struct FT_CharMapRec_*  FT_CharMap;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Macro>                                                               */
-  /*    FT_ENC_TAG                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This macro converts four letter tags into an unsigned long.  It is */
-  /*    used to define "encoding" identifiers (see @FT_Encoding).          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Since many 16bit compilers don't like 32bit enumerations, you      */
-  /*    should redefine this macro in case of problems to something like   */
-  /*    this:                                                              */
-  /*                                                                       */
-  /*      #define FT_ENC_TAG( value, a, b, c, d )  value                   */
-  /*                                                                       */
-  /*    to get a simple enumeration without assigning special numbers.     */
-  /*                                                                       */
-
-#ifndef FT_ENC_TAG
-#define FT_ENC_TAG( value, a, b, c, d )         \
-          value = ( ( (FT_UInt32)(a) << 24 ) |  \
-                    ( (FT_UInt32)(b) << 16 ) |  \
-                    ( (FT_UInt32)(c) <<  8 ) |  \
-                      (FT_UInt32)(d)         )
-
-#endif /* FT_ENC_TAG */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_Encoding                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An enumeration used to specify encodings supported by charmaps.    */
-  /*    Used in the @FT_Select_Charmap API function.                       */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Because of 32-bit charcodes defined in Unicode (i.e., surrogates), */
-  /*    all character codes must be expressed as FT_Longs.                 */
-  /*                                                                       */
-  /*    The values of this type correspond to specific character           */
-  /*    repertories (i.e. charsets), and not to text encoding methods      */
-  /*    (like UTF-8, UTF-16, GB2312_EUC, etc.).                            */
-  /*                                                                       */
-  /*    Other encodings might be defined in the future.                    */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*   FT_ENCODING_NONE ::                                                 */
-  /*     The encoding value 0 is reserved.                                 */
-  /*                                                                       */
-  /*   FT_ENCODING_UNICODE ::                                              */
-  /*     Corresponds to the Unicode character set.  This value covers      */
-  /*     all versions of the Unicode repertoire, including ASCII and       */
-  /*     Latin-1.  Most fonts include a Unicode charmap, but not all       */
-  /*     of them.                                                          */
-  /*                                                                       */
-  /*   FT_ENCODING_MS_SYMBOL ::                                            */
-  /*     Corresponds to the Microsoft Symbol encoding, used to encode      */
-  /*     mathematical symbols in the 32..255 character code range.  For    */
-  /*     more information, see `http://www.ceviz.net/symbol.htm'.          */
-  /*                                                                       */
-  /*   FT_ENCODING_SJIS ::                                                 */
-  /*     Corresponds to Japanese SJIS encoding.  More info at              */
-  /*     at `http://langsupport.japanreference.com/encoding.shtml'.        */
-  /*     See note on multi-byte encodings below.                           */
-  /*                                                                       */
-  /*   FT_ENCODING_GB2312 ::                                               */
-  /*     Corresponds to an encoding system for Simplified Chinese as used  */
-  /*     used in mainland China.                                           */
-  /*                                                                       */
-  /*   FT_ENCODING_BIG5 ::                                                 */
-  /*     Corresponds to an encoding system for Traditional Chinese as used */
-  /*     in Taiwan and Hong Kong.                                          */
-  /*                                                                       */
-  /*   FT_ENCODING_WANSUNG ::                                              */
-  /*     Corresponds to the Korean encoding system known as Wansung.       */
-  /*     For more information see                                          */
-  /*     `http://www.microsoft.com/typography/unicode/949.txt'.            */
-  /*                                                                       */
-  /*   FT_ENCODING_JOHAB ::                                                */
-  /*     The Korean standard character set (KS C-5601-1992), which         */
-  /*     corresponds to MS Windows code page 1361.  This character set     */
-  /*     includes all possible Hangeul character combinations.             */
-  /*                                                                       */
-  /*   FT_ENCODING_ADOBE_LATIN_1 ::                                        */
-  /*     Corresponds to a Latin-1 encoding as defined in a Type 1          */
-  /*     Postscript font.  It is limited to 256 character codes.           */
-  /*                                                                       */
-  /*   FT_ENCODING_ADOBE_STANDARD ::                                       */
-  /*     Corresponds to the Adobe Standard encoding, as found in Type 1,   */
-  /*     CFF, and OpenType/CFF fonts.  It is limited to 256 character      */
-  /*     codes.                                                            */
-  /*                                                                       */
-  /*   FT_ENCODING_ADOBE_EXPERT ::                                         */
-  /*     Corresponds to the Adobe Expert encoding, as found in Type 1,     */
-  /*     CFF, and OpenType/CFF fonts.  It is limited to 256 character      */
-  /*     codes.                                                            */
-  /*                                                                       */
-  /*   FT_ENCODING_ADOBE_CUSTOM ::                                         */
-  /*     Corresponds to a custom encoding, as found in Type 1, CFF, and    */
-  /*     OpenType/CFF fonts.  It is limited to 256 character codes.        */
-  /*                                                                       */
-  /*   FT_ENCODING_APPLE_ROMAN ::                                          */
-  /*     Corresponds to the 8-bit Apple roman encoding.  Many TrueType and */
-  /*     OpenType fonts contain a charmap for this encoding, since older   */
-  /*     versions of Mac OS are able to use it.                            */
-  /*                                                                       */
-  /*   FT_ENCODING_OLD_LATIN_2 ::                                          */
-  /*     This value is deprecated and was never used nor reported by       */
-  /*     FreeType.  Don't use or test for it.                              */
-  /*                                                                       */
-  /*   FT_ENCODING_MS_SJIS ::                                              */
-  /*     Same as FT_ENCODING_SJIS.  Deprecated.                            */
-  /*                                                                       */
-  /*   FT_ENCODING_MS_GB2312 ::                                            */
-  /*     Same as FT_ENCODING_GB2312.  Deprecated.                          */
-  /*                                                                       */
-  /*   FT_ENCODING_MS_BIG5 ::                                              */
-  /*     Same as FT_ENCODING_BIG5.  Deprecated.                            */
-  /*                                                                       */
-  /*   FT_ENCODING_MS_WANSUNG ::                                           */
-  /*     Same as FT_ENCODING_WANSUNG.  Deprecated.                         */
-  /*                                                                       */
-  /*   FT_ENCODING_MS_JOHAB ::                                             */
-  /*     Same as FT_ENCODING_JOHAB.  Deprecated.                           */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*   By default, FreeType automatically synthetizes a Unicode charmap    */
-  /*   for Postscript fonts, using their glyph names dictionaries.         */
-  /*   However, it will also report the encodings defined explicitly in    */
-  /*   the font file, for the cases when they are needed, with the Adobe   */
-  /*   values as well.                                                     */
-  /*                                                                       */
-  /*   FT_ENCODING_NONE is set by the BDF and PCF drivers if the charmap   */
-  /*   is neither Unicode nor ISO-8859-1 (otherwise it is set to           */
-  /*   FT_ENCODING_UNICODE).  Use `FT_Get_BDF_Charset_ID' to find out      */
-  /*   which encoding is really present.  If, for example, the             */
-  /*   `cs_registry' field is `KOI8' and the `cs_encoding' field is `R',   */
-  /*   the font is encoded in KOI8-R.                                      */
-  /*                                                                       */
-  /*   FT_ENCODING_NONE is always set (with a single exception) by the     */
-  /*   winfonts driver.  Use `FT_Get_WinFNT_Header' and examine the        */
-  /*   `charset' field of the `FT_WinFNT_HeaderRec' structure to find out  */
-  /*   which encoding is really present.  For example, FT_WinFNT_ID_CP1251 */
-  /*   (204) means Windows code page 1251 (for Russian).                   */
-  /*                                                                       */
-  /*   FT_ENCODING_NONE is set if `platform_id' is `TT_PLATFORM_MACINTOSH' */
-  /*   and `encoding_id' is not `TT_MAC_ID_ROMAN' (otherwise it is set to  */
-  /*   FT_ENCODING_APPLE_ROMAN).                                           */
-  /*                                                                       */
-  /*   If `platform_id' is `TT_PLATFORM_MACINTOSH', use the function       */
-  /*   `FT_Get_CMap_Language_ID' to query the Mac language ID which may be */
-  /*   needed to be able to distinguish Apple encoding variants.  See      */
-  /*                                                                       */
-  /*     http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/README.TXT   */
-  /*                                                                       */
-  /*   to get an idea how to do that.  Basically, if the language ID is 0, */
-  /*   dont use it, otherwise subtract 1 from the language ID.  Then       */
-  /*   examine `encoding_id'.  If, for example, `encoding_id' is           */
-  /*   `TT_MAC_ID_ROMAN' and the language ID (minus 1) is                  */
-  /*   `TT_MAC_LANGID_GREEK', it is the Greek encoding, not Roman.         */
-  /*   `TT_MAC_ID_ARABIC' with `TT_MAC_LANGID_FARSI' means the Farsi       */
-  /*   variant the Arabic encoding.                                        */
-  /*                                                                       */
-  typedef enum  FT_Encoding_
-  {
-    FT_ENC_TAG( FT_ENCODING_NONE, 0, 0, 0, 0 ),
-
-    FT_ENC_TAG( FT_ENCODING_MS_SYMBOL,  's', 'y', 'm', 'b' ),
-    FT_ENC_TAG( FT_ENCODING_UNICODE,    'u', 'n', 'i', 'c' ),
-
-    FT_ENC_TAG( FT_ENCODING_SJIS,    's', 'j', 'i', 's' ),
-    FT_ENC_TAG( FT_ENCODING_GB2312,  'g', 'b', ' ', ' ' ),
-    FT_ENC_TAG( FT_ENCODING_BIG5,    'b', 'i', 'g', '5' ),
-    FT_ENC_TAG( FT_ENCODING_WANSUNG, 'w', 'a', 'n', 's' ),
-    FT_ENC_TAG( FT_ENCODING_JOHAB,   'j', 'o', 'h', 'a' ),
-
-    /* for backwards compatibility */
-    FT_ENCODING_MS_SJIS    = FT_ENCODING_SJIS,
-    FT_ENCODING_MS_GB2312  = FT_ENCODING_GB2312,
-    FT_ENCODING_MS_BIG5    = FT_ENCODING_BIG5,
-    FT_ENCODING_MS_WANSUNG = FT_ENCODING_WANSUNG,
-    FT_ENCODING_MS_JOHAB   = FT_ENCODING_JOHAB,
-
-    FT_ENC_TAG( FT_ENCODING_ADOBE_STANDARD, 'A', 'D', 'O', 'B' ),
-    FT_ENC_TAG( FT_ENCODING_ADOBE_EXPERT,   'A', 'D', 'B', 'E' ),
-    FT_ENC_TAG( FT_ENCODING_ADOBE_CUSTOM,   'A', 'D', 'B', 'C' ),
-    FT_ENC_TAG( FT_ENCODING_ADOBE_LATIN_1,  'l', 'a', 't', '1' ),
-
-    FT_ENC_TAG( FT_ENCODING_OLD_LATIN_2, 'l', 'a', 't', '2' ),
-
-    FT_ENC_TAG( FT_ENCODING_APPLE_ROMAN, 'a', 'r', 'm', 'n' )
-
-  } FT_Encoding;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    ft_encoding_xxx                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    These constants are deprecated; use the corresponding @FT_Encoding */
-  /*    values instead.                                                    */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*   ft_encoding_none    :: see @FT_ENCODING_NONE                        */
-  /*   ft_encoding_unicode :: see @FT_ENCODING_UNICODE                     */
-  /*   ft_encoding_latin_2 :: see @FT_ENCODING_OLD_LATIN_2                 */
-  /*   ft_encoding_symbol  :: see @FT_ENCODING_MS_SYMBOL                   */
-  /*   ft_encoding_sjis    :: see @FT_ENCODING_SJIS                        */
-  /*   ft_encoding_gb2312  :: see @FT_ENCODING_GB2312                      */
-  /*   ft_encoding_big5    :: see @FT_ENCODING_BIG5                        */
-  /*   ft_encoding_wansung :: see @FT_ENCODING_WANSUNG                     */
-  /*   ft_encoding_johab   :: see @FT_ENCODING_JOHAB                       */
-  /*                                                                       */
-  /*   ft_encoding_adobe_standard :: see @FT_ENCODING_ADOBE_STANDARD       */
-  /*   ft_encoding_adobe_expert   :: see @FT_ENCODING_ADOBE_EXPERT         */
-  /*   ft_encoding_adobe_custom   :: see @FT_ENCODING_ADOBE_CUSTOM         */
-  /*   ft_encoding_latin_1        :: see @FT_ENCODING_ADOBE_LATIN_1        */
-  /*                                                                       */
-  /*   ft_encoding_apple_roman    :: see @FT_ENCODING_APPLE_ROMAN          */
-  /*                                                                       */
-#define ft_encoding_none            FT_ENCODING_NONE
-#define ft_encoding_unicode         FT_ENCODING_UNICODE
-#define ft_encoding_symbol          FT_ENCODING_MS_SYMBOL
-#define ft_encoding_latin_1         FT_ENCODING_ADOBE_LATIN_1
-#define ft_encoding_latin_2         FT_ENCODING_OLD_LATIN_2
-#define ft_encoding_sjis            FT_ENCODING_SJIS
-#define ft_encoding_gb2312          FT_ENCODING_GB2312
-#define ft_encoding_big5            FT_ENCODING_BIG5
-#define ft_encoding_wansung         FT_ENCODING_WANSUNG
-#define ft_encoding_johab           FT_ENCODING_JOHAB
-
-#define ft_encoding_adobe_standard  FT_ENCODING_ADOBE_STANDARD
-#define ft_encoding_adobe_expert    FT_ENCODING_ADOBE_EXPERT
-#define ft_encoding_adobe_custom    FT_ENCODING_ADOBE_CUSTOM
-#define ft_encoding_apple_roman     FT_ENCODING_APPLE_ROMAN
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_CharMapRec                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The base charmap structure.                                        */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    face        :: A handle to the parent face object.                 */
-  /*                                                                       */
-  /*    encoding    :: An @FT_Encoding tag identifying the charmap.  Use   */
-  /*                   this with @FT_Select_Charmap.                       */
-  /*                                                                       */
-  /*    platform_id :: An ID number describing the platform for the        */
-  /*                   following encoding ID.  This comes directly from    */
-  /*                   the TrueType specification and should be emulated   */
-  /*                   for other formats.                                  */
-  /*                                                                       */
-  /*    encoding_id :: A platform specific encoding number.  This also     */
-  /*                   comes from the TrueType specification and should be */
-  /*                   emulated similarly.                                 */
-  /*                                                                       */
-  typedef struct  FT_CharMapRec_
-  {
-    FT_Face      face;
-    FT_Encoding  encoding;
-    FT_UShort    platform_id;
-    FT_UShort    encoding_id;
-
-  } FT_CharMapRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*                                                                       */
-  /*                 B A S E   O B J E C T   C L A S S E S                 */
-  /*                                                                       */
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Face_Internal                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An opaque handle to an FT_Face_InternalRec structure, used to      */
-  /*    model private data of a given @FT_Face object.                     */
-  /*                                                                       */
-  /*    This structure might change between releases of FreeType 2 and is  */
-  /*    not generally available to client applications.                    */
-  /*                                                                       */
-  typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_FaceRec                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    FreeType root face class structure.  A face object models the      */
-  /*    resolution and point-size independent data found in a font file.   */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    num_faces           :: In the case where the face is located in a  */
-  /*                           collection (i.e., a file which embeds       */
-  /*                           several faces), this is the total number of */
-  /*                           faces found in the resource.  1 by default. */
-  /*                           Accessing non-existent face indices causes  */
-  /*                           an error.                                   */
-  /*                                                                       */
-  /*    face_index          :: The index of the face in its font file.     */
-  /*                           Usually, this is 0 for all normal font      */
-  /*                           formats.  It can be > 0 in the case of      */
-  /*                           collections (which embed several fonts in a */
-  /*                           single resource/file).                      */
-  /*                                                                       */
-  /*    face_flags          :: A set of bit flags that give important      */
-  /*                           information about the face; see the         */
-  /*                           @FT_FACE_FLAG_XXX constants for details.    */
-  /*                                                                       */
-  /*    style_flags         :: A set of bit flags indicating the style of  */
-  /*                           the face (i.e., italic, bold, underline,    */
-  /*                           etc).  See the @FT_STYLE_FLAG_XXX           */
-  /*                           constants.                                  */
-  /*                                                                       */
-  /*    num_glyphs          :: The total number of glyphs in the face.     */
-  /*                                                                       */
-  /*    family_name         :: The face's family name.  This is an ASCII   */
-  /*                           string, usually in English, which describes */
-  /*                           the typeface's family (like `Times New      */
-  /*                           Roman', `Bodoni', `Garamond', etc).  This   */
-  /*                           is a least common denominator used to list  */
-  /*                           fonts.  Some formats (TrueType & OpenType)  */
-  /*                           provide localized and Unicode versions of   */
-  /*                           this string.  Applications should use the   */
-  /*                           format specific interface to access them.   */
-  /*                                                                       */
-  /*    style_name          :: The face's style name.  This is an ASCII    */
-  /*                           string, usually in English, which describes */
-  /*                           the typeface's style (like `Italic',        */
-  /*                           `Bold', `Condensed', etc).  Not all font    */
-  /*                           formats provide a style name, so this field */
-  /*                           is optional, and can be set to NULL.  As    */
-  /*                           for `family_name', some formats provide     */
-  /*                           localized/Unicode versions of this string.  */
-  /*                           Applications should use the format specific */
-  /*                           interface to access them.                   */
-  /*                                                                       */
-  /*    num_fixed_sizes     :: The number of fixed sizes available in this */
-  /*                           face.  This should be set to 0 for scalable */
-  /*                           fonts, unless its face includes a set of    */
-  /*                           glyphs (called a `strike') for the          */
-  /*                           specified sizes.                            */
-  /*                                                                       */
-  /*    available_sizes     :: An array of sizes specifying the available  */
-  /*                           bitmap/graymap sizes that are contained in  */
-  /*                           in the font face.  Should be set to NULL if */
-  /*                           the field `num_fixed_sizes' is set to 0.    */
-  /*                                                                       */
-  /*    num_charmaps        :: The total number of character maps in the   */
-  /*                           face.                                       */
-  /*                                                                       */
-  /*    charmaps            :: A table of pointers to the face's charmaps. */
-  /*                           Used to scan the list of available charmaps */
-  /*                           -- this table might change after a call to  */
-  /*                           @FT_Attach_File or @FT_Attach_Stream (e.g.  */
-  /*                           if used to hook an additional encoding or   */
-  /*                           CMap to the face object).                   */
-  /*                                                                       */
-  /*    generic             :: A field reserved for client uses.  See the  */
-  /*                           @FT_Generic type description.               */
-  /*                                                                       */
-  /*    bbox                :: The font bounding box.  Coordinates are     */
-  /*                           expressed in font units (see units_per_EM). */
-  /*                           The box is large enough to contain any      */
-  /*                           glyph from the font.  Thus, bbox.yMax can   */
-  /*                           be seen as the `maximal ascender',          */
-  /*                           bbox.yMin as the `minimal descender', and   */
-  /*                           the maximal glyph width is given by         */
-  /*                           `bbox.xMax-bbox.xMin' (not to be confused   */
-  /*                           with the maximal _advance_width_).  Only    */
-  /*                           relevant for scalable formats.              */
-  /*                                                                       */
-  /*    units_per_EM        :: The number of font units per EM square for  */
-  /*                           this face.  This is typically 2048 for      */
-  /*                           TrueType fonts, 1000 for Type1 fonts, and   */
-  /*                           should be set to the (unrealistic) value 1  */
-  /*                           for fixed-sizes fonts.  Only relevant for   */
-  /*                           scalable formats.                           */
-  /*                                                                       */
-  /*    ascender            :: The face's ascender is the vertical         */
-  /*                           distance from the baseline to the topmost   */
-  /*                           point of any glyph in the face.  This       */
-  /*                           field's value is positive, expressed in     */
-  /*                           font units.  Some font designs use a value  */
-  /*                           different from `bbox.yMax'.  Only relevant  */
-  /*                           for scalable formats.                       */
-  /*                                                                       */
-  /*    descender           :: The face's descender is the vertical        */
-  /*                           distance from the baseline to the           */
-  /*                           bottommost point of any glyph in the face.  */
-  /*                           This field's value is *negative* for values */
-  /*                           below the baseline.  It is expressed in     */
-  /*                           font units.  Some font designs use a value  */
-  /*                           different from `bbox.yMin'.  Only relevant  */
-  /*                           for scalable formats.                       */
-  /*                                                                       */
-  /*    height              :: The face's height is the vertical distance  */
-  /*                           from one baseline to the next when writing  */
-  /*                           several lines of text.  Its value is always */
-  /*                           positive, expressed in font units.  The     */
-  /*                           value can be computed as                    */
-  /*                           `ascender+descender+line_gap' where the     */
-  /*                           value of `line_gap' is also called          */
-  /*                           `external leading'.  Only relevant for      */
-  /*                           scalable formats.                           */
-  /*                                                                       */
-  /*    max_advance_width   :: The maximal advance width, in font units,   */
-  /*                           for all glyphs in this face.  This can be   */
-  /*                           used to make word wrapping computations     */
-  /*                           faster.  Only relevant for scalable         */
-  /*                           formats.                                    */
-  /*                                                                       */
-  /*    max_advance_height  :: The maximal advance height, in font units,  */
-  /*                           for all glyphs in this face.  This is only  */
-  /*                           relevant for vertical layouts, and should   */
-  /*                           be set to the `height' for fonts that do    */
-  /*                           not provide vertical metrics.  Only         */
-  /*                           relevant for scalable formats.              */
-  /*                                                                       */
-  /*    underline_position  :: The position, in font units, of the         */
-  /*                           underline line for this face.  It's the     */
-  /*                           center of the underlining stem.  Only       */
-  /*                           relevant for scalable formats.              */
-  /*                                                                       */
-  /*    underline_thickness :: The thickness, in font units, of the        */
-  /*                           underline for this face.  Only relevant for */
-  /*                           scalable formats.                           */
-  /*                                                                       */
-  /*    glyph               :: The face's associated glyph slot(s).  This  */
-  /*                           object is created automatically with a new  */
-  /*                           face object.  However, certain kinds of     */
-  /*                           applications (mainly tools like converters) */
-  /*                           can need more than one slot to ease their   */
-  /*                           task.                                       */
-  /*                                                                       */
-  /*    size                :: The current active size for this face.      */
-  /*                                                                       */
-  /*    charmap             :: The current active charmap for this face.   */
-  /*                                                                       */
-  typedef struct  FT_FaceRec_
-  {
-    FT_Long           num_faces;
-    FT_Long           face_index;
-
-    FT_Long           face_flags;
-    FT_Long           style_flags;
-
-    FT_Long           num_glyphs;
-
-    FT_String*        family_name;
-    FT_String*        style_name;
-
-    FT_Int            num_fixed_sizes;
-    FT_Bitmap_Size*   available_sizes;
-
-    FT_Int            num_charmaps;
-    FT_CharMap*       charmaps;
-
-    FT_Generic        generic;
-
-    /*# the following are only relevant to scalable outlines */
-    FT_BBox           bbox;
-
-    FT_UShort         units_per_EM;
-    FT_Short          ascender;
-    FT_Short          descender;
-    FT_Short          height;
-
-    FT_Short          max_advance_width;
-    FT_Short          max_advance_height;
-
-    FT_Short          underline_position;
-    FT_Short          underline_thickness;
-
-    FT_GlyphSlot      glyph;
-    FT_Size           size;
-    FT_CharMap        charmap;
-
-    /*@private begin */
-
-    FT_Driver         driver;
-    FT_Memory         memory;
-    FT_Stream         stream;
-
-    FT_ListRec        sizes_list;
-
-    FT_Generic        autohint;
-    void*             extensions;
-
-    FT_Face_Internal  internal;
-
-    /*@private end */
-
-  } FT_FaceRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_FACE_FLAG_XXX                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A list of bit flags used in the `face_flags' field of the          */
-  /*    @FT_FaceRec structure.  They inform client applications of         */
-  /*    properties of the corresponding face.                              */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_FACE_FLAG_SCALABLE ::                                           */
-  /*      Indicates that the face provides vectorial outlines.  This       */
-  /*      doesn't prevent embedded bitmaps, i.e., a face can have both     */
-  /*      this bit and @FT_FACE_FLAG_FIXED_SIZES set.                      */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_FIXED_SIZES ::                                        */
-  /*      Indicates that the face contains `fixed sizes', i.e., bitmap     */
-  /*      strikes for some given pixel sizes.  See the `num_fixed_sizes'   */
-  /*      and `available_sizes' fields of @FT_FaceRec.                     */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_FIXED_WIDTH ::                                        */
-  /*      Indicates that the face contains fixed-width characters (like    */
-  /*      Courier, Lucido, MonoType, etc.).                                */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_SFNT ::                                               */
-  /*      Indicates that the face uses the `sfnt' storage scheme.  For     */
-  /*      now, this means TrueType and OpenType.                           */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_HORIZONTAL ::                                         */
-  /*      Indicates that the face contains horizontal glyph metrics.  This */
-  /*      should be set for all common formats.                            */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_VERTICAL ::                                           */
-  /*      Indicates that the face contains vertical glyph metrics.  This   */
-  /*      is only available in some formats, not all of them.              */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_KERNING ::                                            */
-  /*      Indicates that the face contains kerning information.  If set,   */
-  /*      the kerning distance can be retrieved through the function       */
-  /*      @FT_Get_Kerning.  Note that if unset, this function will always  */
-  /*      return the vector (0,0).                                         */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_FAST_GLYPHS ::                                        */
-  /*      THIS FLAG IS DEPRECATED.  DO NOT USE OR TEST IT.                 */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_MULTIPLE_MASTERS ::                                   */
-  /*      Indicates that the font contains multiple masters and is capable */
-  /*      of interpolating between them.  See the multiple-masters         */
-  /*      specific API for details.                                        */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_GLYPH_NAMES ::                                        */
-  /*      Indicates that the font contains glyph names that can be         */
-  /*      retrieved through @FT_Get_Glyph_Name.  Note that some TrueType   */
-  /*      fonts contain broken glyph name tables.  Use the function        */
-  /*      @FT_Has_PS_Glyph_Names when needed.                              */
-  /*                                                                       */
-  /*    FT_FACE_FLAG_EXTERNAL_STREAM ::                                    */
-  /*      Used internally by FreeType to indicate that a face's stream was */
-  /*      provided by the client application and should not be destroyed   */
-  /*      when @FT_Done_Face is called.  Don't read or test this flag.     */
-  /*                                                                       */
-#define FT_FACE_FLAG_SCALABLE          ( 1L <<  0 )
-#define FT_FACE_FLAG_FIXED_SIZES       ( 1L <<  1 )
-#define FT_FACE_FLAG_FIXED_WIDTH       ( 1L <<  2 )
-#define FT_FACE_FLAG_SFNT              ( 1L <<  3 )
-#define FT_FACE_FLAG_HORIZONTAL        ( 1L <<  4 )
-#define FT_FACE_FLAG_VERTICAL          ( 1L <<  5 )
-#define FT_FACE_FLAG_KERNING           ( 1L <<  6 )
-#define FT_FACE_FLAG_FAST_GLYPHS       ( 1L <<  7 )
-#define FT_FACE_FLAG_MULTIPLE_MASTERS  ( 1L <<  8 )
-#define FT_FACE_FLAG_GLYPH_NAMES       ( 1L <<  9 )
-#define FT_FACE_FLAG_EXTERNAL_STREAM   ( 1L << 10 )
-
-  /* */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_HAS_HORIZONTAL( face )                                          */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro that returns true whenever a face object contains          */
-  /*    horizontal metrics (this is true for all font formats though).     */
-  /*                                                                       */
-  /* @also:                                                                */
-  /*    @FT_HAS_VERTICAL can be used to check for vertical metrics.        */
-  /*                                                                       */
-#define FT_HAS_HORIZONTAL( face ) \
-          ( face->face_flags & FT_FACE_FLAG_HORIZONTAL )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_HAS_VERTICAL( face )                                            */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro that returns true whenever a face object contains vertical */
-  /*    metrics.                                                           */
-  /*                                                                       */
-#define FT_HAS_VERTICAL( face ) \
-          ( face->face_flags & FT_FACE_FLAG_VERTICAL )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_HAS_KERNING( face )                                             */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro that returns true whenever a face object contains kerning  */
-  /*    data that can be accessed with @FT_Get_Kerning.                    */
-  /*                                                                       */
-#define FT_HAS_KERNING( face ) \
-          ( face->face_flags & FT_FACE_FLAG_KERNING )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_IS_SCALABLE( face )                                             */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro that returns true whenever a face object contains a        */
-  /*    scalable font face (true for TrueType, Type 1, CID, and            */
-  /*    OpenType/CFF font formats.                                         */
-  /*                                                                       */
-#define FT_IS_SCALABLE( face ) \
-          ( face->face_flags & FT_FACE_FLAG_SCALABLE )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_IS_SFNT( face )                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro that returns true whenever a face object contains a font   */
-  /*    whose format is based on the SFNT storage scheme.  This usually    */
-  /*    means: TrueType fonts, OpenType fonts, as well as SFNT-based       */
-  /*    embedded bitmap fonts.                                             */
-  /*                                                                       */
-  /*    If this macro is true, all functions defined in @FT_SFNT_NAMES_H   */
-  /*    and @FT_TRUETYPE_TABLES_H are available.                           */
-  /*                                                                       */
-#define FT_IS_SFNT( face ) \
-          ( face->face_flags & FT_FACE_FLAG_SFNT )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_IS_FIXED_WIDTH( face )                                          */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro that returns true whenever a face object contains a font   */
-  /*    face that contains fixed-width (or "monospace", "fixed-pitch",     */
-  /*    etc.) glyphs.                                                      */
-  /*                                                                       */
-#define FT_IS_FIXED_WIDTH( face ) \
-          ( face->face_flags & FT_FACE_FLAG_FIXED_WIDTH )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_HAS_FIXED_SIZES( face )                                         */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro that returns true whenever a face object contains some     */
-  /*    embedded bitmaps.  See the `available_sizes' field of the          */
-  /*    @FT_FaceRec structure.                                             */
-  /*                                                                       */
-#define FT_HAS_FIXED_SIZES( face ) \
-          ( face->face_flags & FT_FACE_FLAG_FIXED_SIZES )
-
-
-   /* */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_HAS_FAST_GLYPHS( face )                                         */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Deprecated; indicates that the face contains so-called "fast"      */
-  /*    glyph bitmaps.                                                     */
-  /*                                                                       */
-#define FT_HAS_FAST_GLYPHS( face ) \
-          ( face->face_flags & FT_FACE_FLAG_FAST_GLYPHS )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_HAS_GLYPH_NAMES( face )                                         */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro that returns true whenever a face object contains some     */
-  /*    glyph names that can be accessed through @FT_Get_Glyph_Name.       */
-  /*                                                                       */
-#define FT_HAS_GLYPH_NAMES( face ) \
-          ( face->face_flags & FT_FACE_FLAG_GLYPH_NAMES )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_HAS_MULTIPLE_MASTERS( face )                                    */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A macro that returns true whenever a face object contains some     */
-  /*    multiple masters.  The functions provided by                       */
-  /*    @FT_MULTIPLE_MASTERS_H are then available to choose the exact      */
-  /*    design you want.                                                   */
-  /*                                                                       */
-#define FT_HAS_MULTIPLE_MASTERS( face ) \
-          ( face->face_flags & FT_FACE_FLAG_MULTIPLE_MASTERS )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Constant>                                                            */
-  /*    FT_STYLE_FLAG_XXX                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A list of bit-flags used to indicate the style of a given face.    */
-  /*    These are used in the `style_flags' field of @FT_FaceRec.          */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_STYLE_FLAG_ITALIC ::                                            */
-  /*      Indicates that a given face is italicized.                       */
-  /*                                                                       */
-  /*    FT_STYLE_FLAG_BOLD ::                                              */
-  /*      Indicates that a given face is bold.                             */
-  /*                                                                       */
-#define FT_STYLE_FLAG_ITALIC  ( 1 << 0 )
-#define FT_STYLE_FLAG_BOLD    ( 1 << 1 )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Size_Internal                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An opaque handle to an FT_Size_InternalRec structure, used to      */
-  /*    model private data of a given FT_Size object.                      */
-  /*                                                                       */
-  typedef struct FT_Size_InternalRec_*  FT_Size_Internal;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Size_Metrics                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The size metrics structure returned scaled important distances for */
-  /*    a given size object.                                               */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    x_ppem       :: The character width, expressed in integer pixels.  */
-  /*                    This is the width of the EM square expressed in    */
-  /*                    pixels, hence the term `ppem' (pixels per EM).     */
-  /*                                                                       */
-  /*    y_ppem       :: The character height, expressed in integer pixels. */
-  /*                    This is the height of the EM square expressed in   */
-  /*                    pixels, hence the term `ppem' (pixels per EM).     */
-  /*                                                                       */
-  /*    x_scale      :: A simple 16.16 fixed point format coefficient used */
-  /*                    to scale horizontal distances expressed in font    */
-  /*                    units to fractional (26.6) pixel coordinates.      */
-  /*                                                                       */
-  /*    y_scale      :: A simple 16.16 fixed point format coefficient used */
-  /*                    to scale vertical distances expressed in font      */
-  /*                    units to fractional (26.6) pixel coordinates.      */
-  /*                                                                       */
-  /*    ascender     :: The ascender, expressed in 26.6 fixed point        */
-  /*                    pixels.  Positive for ascenders above the          */
-  /*                    baseline.                                          */
-  /*                                                                       */
-  /*    descender    :: The descender, expressed in 26.6 fixed point       */
-  /*                    pixels.  Negative for descenders below the         */
-  /*                    baseline.                                          */
-  /*                                                                       */
-  /*    height       :: The text height, expressed in 26.6 fixed point     */
-  /*                    pixels.  Always positive.                          */
-  /*                                                                       */
-  /*    max_advance  :: Maximum horizontal advance, expressed in 26.6      */
-  /*                    fixed point pixels.  Always positive.              */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    For scalable fonts, the values of `ascender', `descender', and     */
-  /*    `height' are scaled versions of `face->ascender',                  */
-  /*    `face->descender', and `face->height', respectively.               */
-  /*                                                                       */
-  /*    Unfortunately, due to glyph hinting, these values might not be     */
-  /*    exact for certain fonts.  They thus must be treated as unreliable  */
-  /*    with an error margin of at least one pixel!                        */
-  /*                                                                       */
-  /*    Indeed, the only way to get the exact pixel ascender and descender */
-  /*    is to render _all_ glyphs.  As this would be a definite            */
-  /*    performance hit, it is up to client applications to perform such   */
-  /*    computations.                                                      */
-  /*                                                                       */
-  typedef struct  FT_Size_Metrics_
-  {
-    FT_UShort  x_ppem;      /* horizontal pixels per EM               */
-    FT_UShort  y_ppem;      /* vertical pixels per EM                 */
-
-    FT_Fixed   x_scale;     /* two scales used to convert font units  */
-    FT_Fixed   y_scale;     /* to 26.6 frac. pixel coordinates        */
-
-    FT_Pos     ascender;    /* ascender in 26.6 frac. pixels          */
-    FT_Pos     descender;   /* descender in 26.6 frac. pixels         */
-    FT_Pos     height;      /* text height in 26.6 frac. pixels       */
-    FT_Pos     max_advance; /* max horizontal advance, in 26.6 pixels */
-
-  } FT_Size_Metrics;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_SizeRec                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    FreeType root size class structure.  A size object models the      */
-  /*    resolution and pointsize dependent data of a given face.           */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    face    :: Handle to the parent face object.                       */
-  /*                                                                       */
-  /*    generic :: A typeless pointer, which is unused by the FreeType     */
-  /*               library or any of its drivers.  It can be used by       */
-  /*               client applications to link their own data to each size */
-  /*               object.                                                 */
-  /*                                                                       */
-  /*    metrics :: Metrics for this size object.  This field is read-only. */
-  /*                                                                       */
-  typedef struct  FT_SizeRec_
-  {
-    FT_Face           face;      /* parent face object              */
-    FT_Generic        generic;   /* generic pointer for client uses */
-    FT_Size_Metrics   metrics;   /* size metrics                    */
-    FT_Size_Internal  internal;
-
-  } FT_SizeRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_SubGlyph                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The subglyph structure is an internal object used to describe      */
-  /*    subglyphs (for example, in the case of composites).                */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The subglyph implementation is not part of the high-level API,     */
-  /*    hence the forward structure declaration.                           */
-  /*                                                                       */
-  typedef struct FT_SubGlyphRec_*  FT_SubGlyph;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Slot_Internal                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An opaque handle to an FT_Slot_InternalRec structure, used to      */
-  /*    model private data of a given FT_GlyphSlot object.                 */
-  /*                                                                       */
-  typedef struct FT_Slot_InternalRec_*  FT_Slot_Internal;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_GlyphSlotRec                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    FreeType root glyph slot class structure.  A glyph slot is a       */
-  /*    container where individual glyphs can be loaded, be they           */
-  /*    vectorial or bitmap/graymaps.                                      */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    library           :: A handle to the FreeType library instance     */
-  /*                         this slot belongs to.                         */
-  /*                                                                       */
-  /*    face              :: A handle to the parent face object.           */
-  /*                                                                       */
-  /*    next              :: In some cases (like some font tools), several */
-  /*                         glyph slots per face object can be a good     */
-  /*                         thing.  As this is rare, the glyph slots are  */
-  /*                         listed through a direct, single-linked list   */
-  /*                         using its `next' field.                       */
-  /*                                                                       */
-  /*    generic           :: A typeless pointer which is unused by the     */
-  /*                         FreeType library or any of its drivers.  It   */
-  /*                         can be used by client applications to link    */
-  /*                         their own data to each glyph slot object.     */
-  /*                                                                       */
-  /*    metrics           :: The metrics of the last loaded glyph in the   */
-  /*                         slot.  The returned values depend on the last */
-  /*                         load flags (see the @FT_Load_Glyph API        */
-  /*                         function) and can be expressed either in 26.6 */
-  /*                         fractional pixels or font units.              */
-  /*                                                                       */
-  /*                         Note that even when the glyph image is        */
-  /*                         transformed, the metrics are not.             */
-  /*                                                                       */
-  /*    linearHoriAdvance :: For scalable formats only, this field holds   */
-  /*                         the linearly scaled horizontal advance width  */
-  /*                         for the glyph (i.e. the scaled and unhinted   */
-  /*                         value of the hori advance).  This can be      */
-  /*                         important to perform correct WYSIWYG layout.  */
-  /*                                                                       */
-  /*                         Note that this value is expressed by default  */
-  /*                         in 16.16 pixels. However, when the glyph is   */
-  /*                         loaded with the FT_LOAD_LINEAR_DESIGN flag,   */
-  /*                         this field contains simply the value of the   */
-  /*                         advance in original font units.               */
-  /*                                                                       */
-  /*    linearVertAdvance :: For scalable formats only, this field holds   */
-  /*                         the linearly scaled vertical advance height   */
-  /*                         for the glyph.  See linearHoriAdvance for     */
-  /*                         comments.                                     */
-  /*                                                                       */
-  /*    advance           :: This is the transformed advance width for the */
-  /*                         glyph.                                        */
-  /*                                                                       */
-  /*    format            :: This field indicates the format of the image  */
-  /*                         contained in the glyph slot.  Typically       */
-  /*                         FT_GLYPH_FORMAT_BITMAP,                       */
-  /*                         FT_GLYPH_FORMAT_OUTLINE, and                  */
-  /*                         FT_GLYPH_FORMAT_COMPOSITE, but others are     */
-  /*                         possible.                                     */
-  /*                                                                       */
-  /*    bitmap            :: This field is used as a bitmap descriptor     */
-  /*                         when the slot format is                       */
-  /*                         FT_GLYPH_FORMAT_BITMAP.  Note that the        */
-  /*                         address and content of the bitmap buffer can  */
-  /*                         change between calls of @FT_Load_Glyph and a  */
-  /*                         few other functions.                          */
-  /*                                                                       */
-  /*    bitmap_left       :: This is the bitmap's left bearing expressed   */
-  /*                         in integer pixels.  Of course, this is only   */
-  /*                         valid if the format is                        */
-  /*                         FT_GLYPH_FORMAT_BITMAP.                       */
-  /*                                                                       */
-  /*    bitmap_top        :: This is the bitmap's top bearing expressed in */
-  /*                         integer pixels.  Remember that this is the    */
-  /*                         distance from the baseline to the top-most    */
-  /*                         glyph scanline, upwards y-coordinates being   */
-  /*                         *positive*.                                   */
-  /*                                                                       */
-  /*    outline           :: The outline descriptor for the current glyph  */
-  /*                         image if its format is                        */
-  /*                         FT_GLYPH_FORMAT_OUTLINE.                      */
-  /*                                                                       */
-  /*    num_subglyphs     :: The number of subglyphs in a composite glyph. */
-  /*                         This field is only valid for the composite    */
-  /*                         glyph format that should normally only be     */
-  /*                         loaded with the @FT_LOAD_NO_RECURSE flag.     */
-  /*                         For now this is internal to FreeType.         */
-  /*                                                                       */
-  /*    subglyphs         :: An array of subglyph descriptors for          */
-  /*                         composite glyphs.  There are `num_subglyphs'  */
-  /*                         elements in there.  Currently internal to     */
-  /*                         FreeType.                                     */
-  /*                                                                       */
-  /*    control_data      :: Certain font drivers can also return the      */
-  /*                         control data for a given glyph image (e.g.    */
-  /*                         TrueType bytecode, Type 1 charstrings, etc.). */
-  /*                         This field is a pointer to such data.         */
-  /*                                                                       */
-  /*    control_len       :: This is the length in bytes of the control    */
-  /*                         data.                                         */
-  /*                                                                       */
-  /*    other             :: Really wicked formats can use this pointer to */
-  /*                         present their own glyph image to client apps. */
-  /*                         Note that the app will need to know about the */
-  /*                         image format.                                 */
-  /*                                                                       */
-  /*    lsb_delta         :: The difference between hinted and unhinted    */
-  /*                         left side bearing while autohinting is        */
-  /*                         active.  Zero otherwise.                      */
-  /*                                                                       */
-  /*    rsb_delta         :: The difference between hinted and unhinted    */
-  /*                         right side bearing while autohinting is       */
-  /*                         active.  Zero otherwise.                      */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    If @FT_Load_Glyph is called with default flags (see                */
-  /*    @FT_LOAD_DEFAULT) the glyph image is loaded in the glyph slot in   */
-  /*    its native format (e.g. a vectorial outline for TrueType and       */
-  /*    Type 1 formats).                                                   */
-  /*                                                                       */
-  /*    This image can later be converted into a bitmap by calling         */
-  /*    @FT_Render_Glyph.  This function finds the current renderer for    */
-  /*    the native image's format then invokes it.                         */
-  /*                                                                       */
-  /*    The renderer is in charge of transforming the native image through */
-  /*    the slot's face transformation fields, then convert it into a      */
-  /*    bitmap that is returned in `slot->bitmap'.                         */
-  /*                                                                       */
-  /*    Note that `slot->bitmap_left' and `slot->bitmap_top' are also used */
-  /*    to specify the position of the bitmap relative to the current pen  */
-  /*    position (e.g. coordinates [0,0] on the baseline).  Of course,     */
-  /*    `slot->format' is also changed to `FT_GLYPH_FORMAT_BITMAP' .       */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Here a small pseudo code fragment which shows how to use           */
-  /*    `lsb_delta' and `rsb_delta':                                       */
-  /*                                                                       */
-  /*    {                                                                  */
-  /*      FT_Pos  origin_x       = 0;                                      */
-  /*      FT_Pos  prev_rsb_delta = 0;                                      */
-  /*                                                                       */
-  /*                                                                       */
-  /*      for all glyphs do                                                */
-  /*        <compute kern between current and previous glyph and add it to */
-  /*         `origin_x'>                                                   */
-  /*                                                                       */
-  /*        <load glyph with `FT_Load_Glyph'>                              */
-  /*                                                                       */
-  /*        if ( prev_rsb_delta - face->glyph->lsb_delta >= 32 )           */
-  /*          origin_x -= 64;                                              */
-  /*        else if ( prev_rsb_delta - face->glyph->lsb_delta < -32 )      */
-  /*          origin_x += 64;                                              */
-  /*                                                                       */
-  /*        prev_rsb_delta = face->glyph->rsb_delta;                       */
-  /*                                                                       */
-  /*        <save glyph image, or render glyph, or ...>                    */
-  /*                                                                       */
-  /*        origin_x += face->glyph->advance.x;                            */
-  /*      endfor                                                           */
-  /*    }                                                                  */
-  /*                                                                       */
-  typedef struct  FT_GlyphSlotRec_
-  {
-    FT_Library        library;
-    FT_Face           face;
-    FT_GlyphSlot      next;
-    FT_UInt           reserved;       /* retained for binary compatibility */
-    FT_Generic        generic;
-
-    FT_Glyph_Metrics  metrics;
-    FT_Fixed          linearHoriAdvance;
-    FT_Fixed          linearVertAdvance;
-    FT_Vector         advance;
-
-    FT_Glyph_Format   format;
-
-    FT_Bitmap         bitmap;
-    FT_Int            bitmap_left;
-    FT_Int            bitmap_top;
-
-    FT_Outline        outline;
-
-    FT_UInt           num_subglyphs;
-    FT_SubGlyph       subglyphs;
-
-    void*             control_data;
-    long              control_len;
-
-    FT_Pos            lsb_delta;
-    FT_Pos            rsb_delta;
-
-    void*             other;
-
-    FT_Slot_Internal  internal;
-
-  } FT_GlyphSlotRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*                                                                       */
-  /*                         F U N C T I O N S                             */
-  /*                                                                       */
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Init_FreeType                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a new FreeType library object.  The set of modules     */
-  /*    that are registered by this function is determined at build time.  */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    alibrary :: A handle to a new library object.                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Init_FreeType( FT_Library  *alibrary );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Library_Version                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Return the version of the FreeType library being used.  This is    */
-  /*    useful when dynamically linking to the library, since one cannot   */
-  /*    use the macros FT_FREETYPE_MAJOR, FT_FREETYPE_MINOR, and           */
-  /*    FT_FREETYPE_PATCH.                                                 */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library :: A source library handle.                                */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    amajor :: The major version number.                                */
-  /*                                                                       */
-  /*    aminor :: The minor version number.                                */
-  /*                                                                       */
-  /*    apatch :: The patch version number.                                */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The reason why this function takes a 'library' argument is because */
-  /*    certain programs implement library initialization in a custom way  */
-  /*    that doesn't use `FT_Init_FreeType'.                               */
-  /*                                                                       */
-  /*    In such cases, the library version might not be available before   */
-  /*    the library object has been created.                               */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Library_Version( FT_Library   library,
-                      FT_Int      *amajor,
-                      FT_Int      *aminor,
-                      FT_Int      *apatch );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Done_FreeType                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Destroys a given FreeType library object and all of its childs,    */
-  /*    including resources, drivers, faces, sizes, etc.                   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library :: A handle to the target library object.                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Done_FreeType( FT_Library  library );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_OPEN_XXX                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A list of bit-field constants used within the `flags' field of the */
-  /*    @FT_Open_Args structure.                                           */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_OPEN_MEMORY      :: This is a memory-based stream.              */
-  /*                                                                       */
-  /*    FT_OPEN_STREAM      :: Copy the stream from the `stream' field.    */
-  /*                                                                       */
-  /*    FT_OPEN_PATHNAME    :: Create a new input stream from a C          */
-  /*                           path name.                                  */
-  /*                                                                       */
-  /*    FT_OPEN_DRIVER      :: Use the `driver' field.                     */
-  /*                                                                       */
-  /*    FT_OPEN_PARAMS      :: Use the `num_params' & `params' field.      */
-  /*                                                                       */
-  /*    ft_open_memory      :: Deprecated; use @FT_OPEN_MEMORY instead.    */
-  /*                                                                       */
-  /*    ft_open_stream      :: Deprecated; use @FT_OPEN_STREAM instead.    */
-  /*                                                                       */
-  /*    ft_open_pathname    :: Deprecated; use @FT_OPEN_PATHNAME instead.  */
-  /*                                                                       */
-  /*    ft_open_driver      :: Deprecated; use @FT_OPEN_DRIVER instead.    */
-  /*                                                                       */
-  /*    ft_open_params      :: Deprecated; use @FT_OPEN_PARAMS instead.    */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The `FT_OPEN_MEMORY', `FT_OPEN_STREAM', and `FT_OPEN_PATHNAME'     */
-  /*    flags are mutually exclusive.                                      */
-  /*                                                                       */
-#define FT_OPEN_MEMORY    0x1
-#define FT_OPEN_STREAM    0x2
-#define FT_OPEN_PATHNAME  0x4
-#define FT_OPEN_DRIVER    0x8
-#define FT_OPEN_PARAMS    0x10
-
-#define ft_open_memory    FT_OPEN_MEMORY     /* deprecated */
-#define ft_open_stream    FT_OPEN_STREAM     /* deprecated */
-#define ft_open_pathname  FT_OPEN_PATHNAME   /* deprecated */
-#define ft_open_driver    FT_OPEN_DRIVER     /* deprecated */
-#define ft_open_params    FT_OPEN_PARAMS     /* deprecated */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Parameter                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple structure used to pass more or less generic parameters    */
-  /*    to @FT_Open_Face.                                                  */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    tag  :: A 4-byte identification tag.                               */
-  /*                                                                       */
-  /*    data :: A pointer to the parameter data.                           */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The id and function of parameters are driver-specific.             */
-  /*                                                                       */
-  typedef struct  FT_Parameter_
-  {
-    FT_ULong    tag;
-    FT_Pointer  data;
-
-  } FT_Parameter;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Open_Args                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to indicate how to open a new font file/stream.   */
-  /*    A pointer to such a structure can be used as a parameter for the   */
-  /*    functions @FT_Open_Face and @FT_Attach_Stream.                     */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    flags       :: A set of bit flags indicating how to use the        */
-  /*                   structure.                                          */
-  /*                                                                       */
-  /*    memory_base :: The first byte of the file in memory.               */
-  /*                                                                       */
-  /*    memory_size :: The size in bytes of the file in memory.            */
-  /*                                                                       */
-  /*    pathname    :: A pointer to an 8-bit file pathname.                */
-  /*                                                                       */
-  /*    stream      :: A handle to a source stream object.                 */
-  /*                                                                       */
-  /*    driver      :: This field is exclusively used by @FT_Open_Face;    */
-  /*                   it simply specifies the font driver to use to open  */
-  /*                   the face.  If set to 0, FreeType will try to load   */
-  /*                   the face with each one of the drivers in its list.  */
-  /*                                                                       */
-  /*    num_params  :: The number of extra parameters.                     */
-  /*                                                                       */
-  /*    params      :: Extra parameters passed to the font driver when     */
-  /*                   opening a new face.                                 */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The stream type is determined by the contents of `flags' which     */
-  /*    are tested in the following order by @FT_Open_Face:                */
-  /*                                                                       */
-  /*    If the `FT_OPEN_MEMORY' bit is set, assume that this is a          */
-  /*    memory file of `memory_size' bytes,located at `memory_address'.    */
-  /*                                                                       */
-  /*    Otherwise, if the `FT_OPEN_STREAM' bit is set, assume that a       */
-  /*    custom input stream `stream' is used.                              */
-  /*                                                                       */
-  /*    Otherwise, if the `FT_OPEN_PATHNAME' bit is set, assume that this  */
-  /*    is a normal file and use `pathname' to open it.                    */
-  /*                                                                       */
-  /*    If the `FT_OPEN_DRIVER' bit is set, @FT_Open_Face will only try to */
-  /*    open the file with the driver whose handler is in `driver'.        */
-  /*                                                                       */
-  /*    If the `FT_OPEN_PARAMS' bit is set, the parameters given by        */
-  /*    `num_params' and `params' will be used.  They are ignored          */
-  /*    otherwise.                                                         */
-  /*                                                                       */
-  typedef struct  FT_Open_Args_
-  {
-    FT_UInt         flags;
-    const FT_Byte*  memory_base;
-    FT_Long         memory_size;
-    FT_String*      pathname;
-    FT_Stream       stream;
-    FT_Module       driver;
-    FT_Int          num_params;
-    FT_Parameter*   params;
-
-  } FT_Open_Args;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Face                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new face object from a given resource and typeface index */
-  /*    using a pathname to the font file.                                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library    :: A handle to the library resource.                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    pathname   :: A path to the font file.                             */
-  /*                                                                       */
-  /*    face_index :: The index of the face within the resource.  The      */
-  /*                  first face has index 0.                              */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aface      :: A handle to a new face object.                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Unlike FreeType 1.x, this function automatically creates a glyph   */
-  /*    slot for the face object which can be accessed directly through    */
-  /*    `face->glyph'.                                                     */
-  /*                                                                       */
-  /*    @FT_New_Face can be used to determine and/or check the font format */
-  /*    of a given font resource.  If the `face_index' field is negative,  */
-  /*    the function will _not_ return any face handle in `aface';  the    */
-  /*    return value is 0 if the font format is recognized, or non-zero    */
-  /*    otherwise.                                                         */
-  /*                                                                       */
-  /*    Each new face object created with this function also owns a        */
-  /*    default @FT_Size object, accessible as `face->size'.               */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_New_Face( FT_Library   library,
-               const char*  filepathname,
-               FT_Long      face_index,
-               FT_Face     *aface );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Memory_Face                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new face object from a given resource and typeface index */
-  /*    using a font file already loaded into memory.                      */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library    :: A handle to the library resource.                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    file_base  :: A pointer to the beginning of the font data.         */
-  /*                                                                       */
-  /*    file_size  :: The size of the memory chunk used by the font data.  */
-  /*                                                                       */
-  /*    face_index :: The index of the face within the resource.  The      */
-  /*                  first face has index 0.                              */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aface      :: A handle to a new face object.                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The font data bytes are used _directly_ by the @FT_Face object.    */
-  /*    This means that they are not copied, and that the client is        */
-  /*    responsible for releasing/destroying them _after_ the              */
-  /*    corresponding call to @FT_Done_Face .                              */
-  /*                                                                       */
-  /*    Unlike FreeType 1.x, this function automatically creates a glyph   */
-  /*    slot for the face object which can be accessed directly through    */
-  /*    `face->glyph'.                                                     */
-  /*                                                                       */
-  /*    @FT_New_Memory_Face can be used to determine and/or check the font */
-  /*    format of a given font resource.  If the `face_index' field is     */
-  /*    negative, the function will _not_ return any face handle in        */
-  /*    `aface'; the return value is 0 if the font format is recognized,   */
-  /*    or non-zero otherwise.                                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_New_Memory_Face( FT_Library      library,
-                      const FT_Byte*  file_base,
-                      FT_Long         file_size,
-                      FT_Long         face_index,
-                      FT_Face        *aface );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Open_Face                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Opens a face object from a given resource and typeface index using */
-  /*    an `FT_Open_Args' structure.  If the face object doesn't exist, it */
-  /*    will be created.                                                   */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library    :: A handle to the library resource.                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    args       :: A pointer to an `FT_Open_Args' structure which must  */
-  /*                  be filled by the caller.                             */
-  /*                                                                       */
-  /*    face_index :: The index of the face within the resource.  The      */
-  /*                  first face has index 0.                              */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aface      :: A handle to a new face object.                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Unlike FreeType 1.x, this function automatically creates a glyph   */
-  /*    slot for the face object which can be accessed directly through    */
-  /*    `face->glyph'.                                                     */
-  /*                                                                       */
-  /*    @FT_Open_Face can be used to determine and/or check the font       */
-  /*    format of a given font resource.  If the `face_index' field is     */
-  /*    negative, the function will _not_ return any face handle in        */
-  /*    `*aface'; the function's return value is 0 if the font format is   */
-  /*    recognized, or non-zero otherwise.                                 */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Open_Face( FT_Library           library,
-                const FT_Open_Args*  args,
-                FT_Long              face_index,
-                FT_Face             *aface );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Attach_File                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    `Attaches' a given font file to an existing face.  This is usually */
-  /*    to read additional information for a single face object.  For      */
-  /*    example, it is used to read the AFM files that come with Type 1    */
-  /*    fonts in order to add kerning data and other metrics.              */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face         :: The target face object.                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    filepathname :: An 8-bit pathname naming the `metrics' file.       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    If your font file is in memory, or if you want to provide your     */
-  /*    own input stream object, use @FT_Attach_Stream.                    */
-  /*                                                                       */
-  /*    The meaning of the `attach' action (i.e., what really happens when */
-  /*    the new file is read) is not fixed by FreeType itself.  It really  */
-  /*    depends on the font format (and thus the font driver).             */
-  /*                                                                       */
-  /*    Client applications are expected to know what they are doing       */
-  /*    when invoking this function.  Most drivers simply do not implement */
-  /*    file attachments.                                                  */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Attach_File( FT_Face      face,
-                  const char*  filepathname );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Attach_Stream                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is similar to @FT_Attach_File with the exception     */
-  /*    that it reads the attachment from an arbitrary stream.             */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: The target face object.                              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    parameters :: A pointer to an FT_Open_Args structure used to       */
-  /*                  describe the input stream to FreeType.               */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The meaning of the `attach' (i.e. what really happens when the     */
-  /*    new file is read) is not fixed by FreeType itself.  It really      */
-  /*    depends on the font format (and thus the font driver).             */
-  /*                                                                       */
-  /*    Client applications are expected to know what they are doing       */
-  /*    when invoking this function.  Most drivers simply do not implement */
-  /*    file attachments.                                                  */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Attach_Stream( FT_Face        face,
-                    FT_Open_Args*  parameters );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Done_Face                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Discards a given face object, as well as all of its child slots    */
-  /*    and sizes.                                                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to a target face object.                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Done_Face( FT_Face  face );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_Char_Size                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Sets the character dimensions of a given face object.  The         */
-  /*    `char_width' and `char_height' values are used for the width and   */
-  /*    height, respectively, expressed in 26.6 fractional points.         */
-  /*                                                                       */
-  /*    If the horizontal or vertical resolution values are zero, a        */
-  /*    default value of 72dpi is used.  Similarly, if one of the          */
-  /*    character dimensions is zero, its value is set equal to the other. */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face            :: A handle to a target face object.               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    char_width      :: The character width, in 26.6 fractional points. */
-  /*                                                                       */
-  /*    char_height     :: The character height, in 26.6 fractional        */
-  /*                       points.                                         */
-  /*                                                                       */
-  /*    horz_resolution :: The horizontal resolution.                      */
-  /*                                                                       */
-  /*    vert_resolution :: The vertical resolution.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    For BDF and PCF formats, this function uses the `PIXEL_SIZE'       */
-  /*    property of the bitmap font; the `char_width' parameter is         */
-  /*    ignored.                                                           */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Set_Char_Size( FT_Face     face,
-                    FT_F26Dot6  char_width,
-                    FT_F26Dot6  char_height,
-                    FT_UInt     horz_resolution,
-                    FT_UInt     vert_resolution );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_Pixel_Sizes                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Sets the character dimensions of a given face object.  The width   */
-  /*    and height are expressed in integer pixels.                        */
-  /*                                                                       */
-  /*    If one of the character dimensions is zero, its value is set equal */
-  /*    to the other.                                                      */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face         :: A handle to the target face object.                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    pixel_width  :: The character width, in integer pixels.            */
-  /*                                                                       */
-  /*    pixel_height :: The character height, in integer pixels.           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The values of `pixel_width' and `pixel_height' correspond to the   */
-  /*    pixel values of the _typographic_ character size, which are NOT    */
-  /*    necessarily the same as the dimensions of the glyph `bitmap        */
-  /*    cells'.                                                            */
-  /*                                                                       */
-  /*    The `character size' is really the size of an abstract square      */
-  /*    called the `EM', used to design the font.  However, depending      */
-  /*    on the font design, glyphs will be smaller or greater than the     */
-  /*    EM.                                                                */
-  /*                                                                       */
-  /*    This means that setting the pixel size to, say, 8x8 doesn't        */
-  /*    guarantee in any way that you will get glyph bitmaps that all fit  */
-  /*    within an 8x8 cell (sometimes even far from it).                   */
-  /*                                                                       */
-  /*    For bitmap fonts, `pixel_height' usually is a reliable value for   */
-  /*    the height of the bitmap cell.  Drivers for bitmap font formats    */
-  /*    which contain a single bitmap strike only (BDF, PCF, FNT) ignore   */
-  /*    `pixel_width'.                                                     */
-  /*                                                                       */
-  /*    For BDF and PCF formats, this function uses the sum of the         */
-  /*    `FONT_ASCENT' and `FONT_DESCENT' properties of the bitmap font.    */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Set_Pixel_Sizes( FT_Face  face,
-                      FT_UInt  pixel_width,
-                      FT_UInt  pixel_height );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Load_Glyph                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function used to load a single glyph within a given glyph slot,  */
-  /*    for a given size.                                                  */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face        :: A handle to the target face object where the glyph  */
-  /*                   will be loaded.                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    glyph_index :: The index of the glyph in the font file.  For       */
-  /*                   CID-keyed fonts (either in PS or in CFF format)     */
-  /*                   this argument specifies the CID value.              */
-  /*                                                                       */
-  /*    load_flags  :: A flag indicating what to load for this glyph.  The */
-  /*                   @FT_LOAD_XXX constants can be used to control the   */
-  /*                   glyph loading process (e.g., whether the outline    */
-  /*                   should be scaled, whether to load bitmaps or not,   */
-  /*                   whether to hint the outline, etc).                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    If the glyph image is not a bitmap, and if the bit flag            */
-  /*    FT_LOAD_IGNORE_TRANSFORM is unset, the glyph image will be         */
-  /*    transformed with the information passed to a previous call to      */
-  /*    @FT_Set_Transform.                                                 */
-  /*                                                                       */
-  /*    Note that this also transforms the `face.glyph.advance' field, but */
-  /*    *not* the values in `face.glyph.metrics'.                          */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Load_Glyph( FT_Face   face,
-                 FT_UInt   glyph_index,
-                 FT_Int32  load_flags );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Load_Char                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function used to load a single glyph within a given glyph slot,  */
-  /*    for a given size, according to its character code.                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face        :: A handle to a target face object where the glyph    */
-  /*                   will be loaded.                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    char_code   :: The glyph's character code, according to the        */
-  /*                   current charmap used in the face.                   */
-  /*                                                                       */
-  /*    load_flags  :: A flag indicating what to load for this glyph.  The */
-  /*                   @FT_LOAD_XXX constants can be used to control the   */
-  /*                   glyph loading process (e.g., whether the outline    */
-  /*                   should be scaled, whether to load bitmaps or not,   */
-  /*                   whether to hint the outline, etc).                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    If the face has no current charmap, or if the character code       */
-  /*    is not defined in the charmap, this function will return an        */
-  /*    error.                                                             */
-  /*                                                                       */
-  /*    If the glyph image is not a bitmap, and if the bit flag            */
-  /*    FT_LOAD_IGNORE_TRANSFORM is unset, the glyph image will be         */
-  /*    transformed with the information passed to a previous call to      */
-  /*    @FT_Set_Transform.                                                 */
-  /*                                                                       */
-  /*    Note that this also transforms the `face.glyph.advance' field, but */
-  /*    *not* the values in `face.glyph.metrics'.                          */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Load_Char( FT_Face   face,
-                FT_ULong  char_code,
-                FT_Int32  load_flags );
-
-
- /***************************************************************************
-  *
-  * @enum:
-  *   FT_LOAD_XXX
-  *
-  * @description:
-  *   A list of bit-field constants, used with @FT_Load_Glyph to indicate
-  *   what kind of operations to perform during glyph loading.
-  *
-  * @values:
-  *   FT_LOAD_DEFAULT ::
-  *     Corresponding to 0, this value is used a default glyph load.  In this
-  *     case, the following will happen:
-  *
-  *     1. FreeType looks for a bitmap for the glyph corresponding to the
-  *        face's current size.  If one is found, the function returns.  The
-  *        bitmap data can be accessed from the glyph slot (see note below).
-  *
-  *     2. If no embedded bitmap is searched or found, FreeType looks for a
-  *        scalable outline.  If one is found, it is loaded from the font
-  *        file, scaled to device pixels, then "hinted" to the pixel grid in
-  *        order to optimize it.  The outline data can be accessed from the
-  *        glyph slot (see note below).
-  *
-  *     Note that by default, the glyph loader doesn't render outlines into
-  *     bitmaps.  The following flags are used to modify this default
-  *     behaviour to more specific and useful cases.
-  *
-  *   FT_LOAD_NO_SCALE ::
-  *     Don't scale the vector outline being loaded to 26.6 fractional
-  *     pixels, but kept in font units.  Note that this also disables
-  *     hinting and the loading of embedded bitmaps.  You should only use it
-  *     when you want to retrieve the original glyph outlines in font units.
-  *
-  *   FT_LOAD_NO_HINTING ::
-  *     Don't hint glyph outlines after their scaling to device pixels.
-  *     This generally generates "blurrier" glyphs in anti-aliased modes.
-  *
-  *     This flag is ignored if @FT_LOAD_NO_SCALE is set.
-  *
-  *   FT_LOAD_RENDER ::
-  *     Render the glyph outline immediately into a bitmap before the glyph
-  *     loader returns.  By default, the glyph is rendered for the
-  *     @FT_RENDER_MODE_NORMAL mode, which corresponds to 8-bit anti-aliased
-  *     bitmaps using 256 opacity levels.  You can use either
-  *     @FT_LOAD_TARGET_MONO or @FT_LOAD_MONOCHROME to render 1-bit
-  *     monochrome bitmaps.
-  *
-  *     This flag is ignored if @FT_LOAD_NO_SCALE is set.
-  *
-  *   FT_LOAD_NO_BITMAP ::
-  *     Don't look for bitmaps when loading the glyph.  Only scalable
-  *     outlines will be loaded when available, and scaled, hinted, or
-  *     rendered depending on other bit flags.
-  *
-  *     This does not prevent you from rendering outlines to bitmaps
-  *     with @FT_LOAD_RENDER, however.
-  *
-  *   FT_LOAD_VERTICAL_LAYOUT ::
-  *     Prepare the glyph image for vertical text layout.  This basically
-  *     means that `face.glyph.advance' will correspond to the vertical
-  *     advance height (instead of the default horizontal advance width),
-  *     and that the glyph image will be translated to match the vertical
-  *     bearings positions.
-  *
-  *   FT_LOAD_FORCE_AUTOHINT ::
-  *     Force the use of the FreeType auto-hinter when a glyph outline is
-  *     loaded.  You shouldn't need this in a typical application, since it
-  *     is mostly used to experiment with its algorithm.
-  *
-  *   FT_LOAD_CROP_BITMAP ::
-  *     Indicates that the glyph loader should try to crop the bitmap (i.e.,
-  *     remove all space around its black bits) when loading it.  This is
-  *     only useful when loading embedded bitmaps in certain fonts, since
-  *     bitmaps rendered with @FT_LOAD_RENDER are always cropped by default.
-  *
-  *   FT_LOAD_PEDANTIC ::
-  *     Indicates that the glyph loader should perform pedantic
-  *     verifications during glyph loading, rejecting invalid fonts.  This
-  *     is mostly used to detect broken glyphs in fonts.  By default,
-  *     FreeType tries to handle broken fonts also.
-  *
-  *   FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ::
-  *     Indicates that the glyph loader should ignore the global advance
-  *     width defined in the font.  For historical reasons (to support
-  *     buggy CJK fonts), FreeType uses the value of the `advanceWidthMax'
-  *     field in the `htmx' table for all glyphs if the font is monospaced.
-  *     Activating this flags makes FreeType use the metric values given in
-  *     the `htmx' table.
-  *
-  *   FT_LOAD_NO_RECURSE ::
-  *     This flag is only used internally.  It merely indicates that the
-  *     glyph loader should not load composite glyphs recursively.  Instead,
-  *     it should set the `num_subglyph' and `subglyphs' values of the glyph
-  *     slot accordingly, and set "glyph->format" to
-  *     @FT_GLYPH_FORMAT_COMPOSITE.
-  *
-  *     The description of sub-glyphs is not available to client
-  *     applications for now.
-  *
-  *   FT_LOAD_IGNORE_TRANSFORM ::
-  *     Indicates that the glyph loader should not try to transform the
-  *     loaded glyph image.  This doesn't prevent scaling, hinting, or
-  *     rendering.
-  *
-  *   FT_LOAD_MONOCHROME ::
-  *     This flag is used with @FT_LOAD_RENDER to indicate that you want
-  *     to render a 1-bit monochrome glyph bitmap from a vectorial outline.
-  *
-  *     Note that this has no effect on the hinting algorithm used by the
-  *     glyph loader.  You should better use @FT_LOAD_TARGET_MONO if you
-  *     want to render monochrome-optimized glyph images instead.
-  *
-  *   FT_LOAD_LINEAR_DESIGN ::
-  *     Return the linearly scaled metrics expressed in original font units
-  *     instead of the default 16.16 pixel values.
-  *
-  *   FT_LOAD_NO_AUTOHINT ::
-  *     Indicates that the auto-hinter should never be used to hint glyph
-  *     outlines.  This doesn't prevent native format-specific hinters from
-  *     being used.  This can be important for certain fonts where unhinted
-  *     output is better than auto-hinted one.
-  *
-  *   FT_LOAD_TARGET_NORMAL ::
-  *     Use hinting for @FT_RENDER_MODE_NORMAL.
-  *
-  *   FT_LOAD_TARGET_LIGHT ::
-  *     Use hinting for @FT_RENDER_MODE_LIGHT.
-  *
-  *   FT_LOAD_TARGET_MONO ::
-  *     Use hinting for @FT_RENDER_MODE_MONO.
-  *
-  *   FT_LOAD_TARGET_LCD ::
-  *     Use hinting for @FT_RENDER_MODE_LCD.
-  *
-  *   FT_LOAD_TARGET_LCD_V ::
-  *     Use hinting for @FT_RENDER_MODE_LCD_V.
-  */
-#define FT_LOAD_DEFAULT                      0x0
-#define FT_LOAD_NO_SCALE                     0x1
-#define FT_LOAD_NO_HINTING                   0x2
-#define FT_LOAD_RENDER                       0x4
-#define FT_LOAD_NO_BITMAP                    0x8
-#define FT_LOAD_VERTICAL_LAYOUT              0x10
-#define FT_LOAD_FORCE_AUTOHINT               0x20
-#define FT_LOAD_CROP_BITMAP                  0x40
-#define FT_LOAD_PEDANTIC                     0x80
-#define FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH  0x200
-#define FT_LOAD_NO_RECURSE                   0x400
-#define FT_LOAD_IGNORE_TRANSFORM             0x800
-#define FT_LOAD_MONOCHROME                   0x1000
-#define FT_LOAD_LINEAR_DESIGN                0x2000
-
-  /* temporary hack! */
-#define FT_LOAD_SBITS_ONLY                   0x4000
-#define FT_LOAD_NO_AUTOHINT                  0x8000U
-
-  /* */
-
-#define FT_LOAD_TARGET_( x )      ( (FT_Int32)( (x) & 15 ) << 16 )
-#define FT_LOAD_TARGET_MODE( x )  ( (FT_Render_Mode)( ( (x) >> 16 ) & 15 ) )
-
-#define FT_LOAD_TARGET_NORMAL     FT_LOAD_TARGET_( FT_RENDER_MODE_NORMAL )
-#define FT_LOAD_TARGET_LIGHT      FT_LOAD_TARGET_( FT_RENDER_MODE_LIGHT  )
-#define FT_LOAD_TARGET_MONO       FT_LOAD_TARGET_( FT_RENDER_MODE_MONO   )
-#define FT_LOAD_TARGET_LCD        FT_LOAD_TARGET_( FT_RENDER_MODE_LCD    )
-#define FT_LOAD_TARGET_LCD_V      FT_LOAD_TARGET_( FT_RENDER_MODE_LCD_V  )
-
-  /* */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_Transform                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function used to set the transformation that is applied to glyph */
-  /*    images when they are loaded into a glyph slot through              */
-  /*    @FT_Load_Glyph.                                                    */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face   :: A handle to the source face object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    matrix :: A pointer to the transformation's 2x2 matrix.  Use 0 for */
-  /*              the identity matrix.                                     */
-  /*    delta  :: A pointer to the translation vector.  Use 0 for the null */
-  /*              vector.                                                  */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The transformation is only applied to scalable image formats after */
-  /*    the glyph has been loaded.  It means that hinting is unaltered by  */
-  /*    the transformation and is performed on the character size given in */
-  /*    the last call to @FT_Set_Char_Size or @FT_Set_Pixel_Sizes.         */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Set_Transform( FT_Face     face,
-                    FT_Matrix*  matrix,
-                    FT_Vector*  delta );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_Render_Mode                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An enumeration type that lists the render modes supported by       */
-  /*    FreeType 2.  Each mode corresponds to a specific type of scanline  */
-  /*    conversion performed on the outline, as well as specific           */
-  /*    hinting optimizations.                                             */
-  /*                                                                       */
-  /*    For bitmap fonts the `bitmap->pixel_mode' field in the             */
-  /*    @FT_GlyphSlotRec structure gives the format of the returned        */
-  /*    bitmap.                                                            */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_RENDER_MODE_NORMAL ::                                           */
-  /*      This is the default render mode; it corresponds to 8-bit         */
-  /*      anti-aliased bitmaps, using 256 levels of opacity.               */
-  /*                                                                       */
-  /*    FT_RENDER_MODE_LIGHT ::                                            */
-  /*      This is similar to @FT_RENDER_MODE_NORMAL -- you have to use     */
-  /*      @FT_LOAD_TARGET_LIGHT in calls to @FT_Load_Glyph to get any      */
-  /*      effect since the rendering process no longer influences the      */
-  /*      positioning of glyph outlines.                                   */
-  /*                                                                       */
-  /*      The resulting glyph shapes are more similar to the original,     */
-  /*      while being a bit more fuzzy (`better shapes' instead of `better */
-  /*      contrast', so to say.                                            */
-  /*                                                                       */
-  /*    FT_RENDER_MODE_MONO ::                                             */
-  /*      This mode corresponds to 1-bit bitmaps.                          */
-  /*                                                                       */
-  /*    FT_RENDER_MODE_LCD ::                                              */
-  /*      This mode corresponds to horizontal RGB/BGR sub-pixel displays,  */
-  /*      like LCD-screens.  It produces 8-bit bitmaps that are 3 times    */
-  /*      the width of the original glyph outline in pixels, and which use */
-  /*      the @FT_PIXEL_MODE_LCD mode.                                     */
-  /*                                                                       */
-  /*    FT_RENDER_MODE_LCD_V ::                                            */
-  /*      This mode corresponds to vertical RGB/BGR sub-pixel displays     */
-  /*      (like PDA screens, rotated LCD displays, etc.).  It produces     */
-  /*      8-bit bitmaps that are 3 times the height of the original        */
-  /*      glyph outline in pixels and use the @FT_PIXEL_MODE_LCD_V mode.   */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*   The LCD-optimized glyph bitmaps produced by FT_Render_Glyph are     */
-  /*   _not filtered_ to reduce color-fringes.  It is up to the caller to  */
-  /*   perform this pass.                                                  */
-  /*                                                                       */
-  typedef enum  FT_Render_Mode_
-  {
-    FT_RENDER_MODE_NORMAL = 0,
-    FT_RENDER_MODE_LIGHT,
-    FT_RENDER_MODE_MONO,
-    FT_RENDER_MODE_LCD,
-    FT_RENDER_MODE_LCD_V,
-
-    FT_RENDER_MODE_MAX
-
-  } FT_Render_Mode;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    ft_render_mode_xxx                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    These constats are deprecated.  Use the corresponding              */
-  /*    @FT_Render_Mode values instead.                                    */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*   ft_render_mode_normal :: see @FT_RENDER_MODE_NORMAL                 */
-  /*   ft_render_mode_mono   :: see @FT_RENDER_MODE_MONO                   */
-  /*                                                                       */
-#define ft_render_mode_normal  FT_RENDER_MODE_NORMAL
-#define ft_render_mode_mono    FT_RENDER_MODE_MONO
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Render_Glyph                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Converts a given glyph image to a bitmap.  It does so by           */
-  /*    inspecting the glyph image format, find the relevant renderer, and */
-  /*    invoke it.                                                         */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    slot        :: A handle to the glyph slot containing the image to  */
-  /*                   convert.                                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    render_mode :: This is the render mode used to render the glyph    */
-  /*                   image into a bitmap.  See FT_Render_Mode for a list */
-  /*                   of possible values.                                 */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Render_Glyph( FT_GlyphSlot    slot,
-                   FT_Render_Mode  render_mode );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_Kerning_Mode                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An enumeration used to specify which kerning values to return in   */
-  /*    @FT_Get_Kerning.                                                   */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_KERNING_DEFAULT  :: Return scaled and grid-fitted kerning       */
-  /*                           distances (value is 0).                     */
-  /*                                                                       */
-  /*    FT_KERNING_UNFITTED :: Return scaled but un-grid-fitted kerning    */
-  /*                           distances.                                  */
-  /*                                                                       */
-  /*    FT_KERNING_UNSCALED :: Return the kerning vector in original font  */
-  /*                           units.                                      */
-  /*                                                                       */
-  typedef enum  FT_Kerning_Mode_
-  {
-    FT_KERNING_DEFAULT  = 0,
-    FT_KERNING_UNFITTED,
-    FT_KERNING_UNSCALED
-
-  } FT_Kerning_Mode;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Const>                                                               */
-  /*    ft_kerning_default                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This constant is deprecated.  Please use @FT_KERNING_DEFAULT       */
-  /*    instead.                                                           */
-  /*                                                                       */
-#define ft_kerning_default   FT_KERNING_DEFAULT
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Const>                                                               */
-  /*    ft_kerning_unfitted                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This constant is deprecated.  Please use @FT_KERNING_UNFITTED      */
-  /*    instead.                                                           */
-  /*                                                                       */
-#define ft_kerning_unfitted  FT_KERNING_UNFITTED
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Const>                                                               */
-  /*    ft_kerning_unscaled                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This constant is deprecated.  Please use @FT_KERNING_UNSCALED      */
-  /*    instead.                                                           */
-  /*                                                                       */
-#define ft_kerning_unscaled  FT_KERNING_UNSCALED
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Kerning                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Returns the kerning vector between two glyphs of a same face.      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face        :: A handle to a source face object.                   */
-  /*                                                                       */
-  /*    left_glyph  :: The index of the left glyph in the kern pair.       */
-  /*                                                                       */
-  /*    right_glyph :: The index of the right glyph in the kern pair.      */
-  /*                                                                       */
-  /*    kern_mode   :: See @FT_Kerning_Mode for more information.          */
-  /*                   Determines the scale/dimension of the returned      */
-  /*                   kerning vector.                                     */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    akerning    :: The kerning vector.  This is either in font units   */
-  /*                   or in pixels (26.6 format) for scalable formats,    */
-  /*                   and in pixels for fixed-sizes formats.              */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Only horizontal layouts (left-to-right & right-to-left) are        */
-  /*    supported by this method.  Other layouts, or more sophisticated    */
-  /*    kernings, are out of the scope of this API function -- they can be */
-  /*    implemented through format-specific interfaces.                    */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Get_Kerning( FT_Face     face,
-                  FT_UInt     left_glyph,
-                  FT_UInt     right_glyph,
-                  FT_UInt     kern_mode,
-                  FT_Vector  *akerning );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Glyph_Name                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves the ASCII name of a given glyph in a face.  This only    */
-  /*    works for those faces where FT_HAS_GLYPH_NAME(face) returns true.  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face        :: A handle to a source face object.                   */
-  /*                                                                       */
-  /*    glyph_index :: The glyph index.                                    */
-  /*                                                                       */
-  /*    buffer_max  :: The maximal number of bytes available in the        */
-  /*                   buffer.                                             */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    buffer      :: A pointer to a target buffer where the name will be */
-  /*                   copied to.                                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    An error is returned if the face doesn't provide glyph names or if */
-  /*    the glyph index is invalid.  In all cases of failure, the first    */
-  /*    byte of `buffer' will be set to 0 to indicate an empty name.       */
-  /*                                                                       */
-  /*    The glyph name is truncated to fit within the buffer if it is too  */
-  /*    long.  The returned string is always zero-terminated.              */
-  /*                                                                       */
-  /*    This function is not compiled within the library if the config     */
-  /*    macro FT_CONFIG_OPTION_NO_GLYPH_NAMES is defined in                */
-  /*    `include/freetype/config/ftoptions.h'                              */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Get_Glyph_Name( FT_Face     face,
-                     FT_UInt     glyph_index,
-                     FT_Pointer  buffer,
-                     FT_UInt     buffer_max );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Postscript_Name                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves the ASCII Postscript name of a given face, if available. */
-  /*    This only works with Postscript and TrueType fonts.                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to the source face object.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A pointer to the face's Postscript name.  NULL if unavailable.     */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The returned pointer is owned by the face and will be destroyed    */
-  /*    with it.                                                           */
-  /*                                                                       */
-  FT_EXPORT( const char* )
-  FT_Get_Postscript_Name( FT_Face  face );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Select_Charmap                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Selects a given charmap by its encoding tag (as listed in          */
-  /*    `freetype.h').                                                     */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face     :: A handle to the source face object.                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    encoding :: A handle to the selected charmap.                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function will return an error if no charmap in the face       */
-  /*    corresponds to the encoding queried here.                          */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Select_Charmap( FT_Face      face,
-                     FT_Encoding  encoding );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_Charmap                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Selects a given charmap for character code to glyph index          */
-  /*    decoding.                                                          */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face    :: A handle to the source face object.                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    charmap :: A handle to the selected charmap.                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function will return an error if the charmap is not part of   */
-  /*    the face (i.e., if it is not listed in the face->charmaps[]        */
-  /*    table).                                                            */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Set_Charmap( FT_Face     face,
-                  FT_CharMap  charmap );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Get_Charmap_Index                                               */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Retrieve index of a given charmap.                                 */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    charmap :: A handle to a charmap.                                  */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    The index into the array of character maps within the face to      */
-  /*    which `charmap' belongs.                                           */
-  /*                                                                       */
-  FT_EXPORT( FT_Int )
-  FT_Get_Charmap_Index( FT_CharMap  charmap );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Char_Index                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Returns the glyph index of a given character code.  This function  */
-  /*    uses a charmap object to do the translation.                       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face     :: A handle to the source face object.                    */
-  /*                                                                       */
-  /*    charcode :: The character code.                                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The glyph index.  0 means `undefined character code'.              */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    FreeType computes its own glyph indices which are not necessarily  */
-  /*    the same as used in the font in case the font is based on glyph    */
-  /*    indices.  Reason for this behaviour is to assure that index 0 is   */
-  /*    never used, representing the missing glyph.                        */
-  /*                                                                       */
-  FT_EXPORT( FT_UInt )
-  FT_Get_Char_Index( FT_Face   face,
-                     FT_ULong  charcode );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_First_Char                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used to return the first character code in the    */
-  /*    current charmap of a given face.  It will also return the          */
-  /*    corresponding glyph index.                                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face    :: A handle to the source face object.                     */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    agindex :: Glyph index of first character code.  0 if charmap is   */
-  /*               empty.                                                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The charmap's first character code.                                */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    You should use this function with @FT_Get_Next_Char to be able to  */
-  /*    parse all character codes available in a given charmap.  The code  */
-  /*    should look like this:                                             */
-  /*                                                                       */
-  /*    {                                                                  */
-  /*      FT_ULong  charcode;                                              */
-  /*      FT_UInt   gindex;                                                */
-  /*                                                                       */
-  /*                                                                       */
-  /*      charcode = FT_Get_First_Char( face, &gindex );                   */
-  /*      while ( gindex != 0 )                                            */
-  /*      {                                                                */
-  /*        ... do something with (charcode,gindex) pair ...               */
-  /*                                                                       */
-  /*        charcode = FT_Get_Next_Char( face, charcode, &gindex );        */
-  /*      }                                                                */
-  /*    }                                                                  */
-  /*                                                                       */
-  /*    Note that `*agindex' will be set to 0 if the charmap is empty.     */
-  /*    The result itself can be 0 in two cases: if the charmap is empty   */
-  /*    or when the value 0 is the first valid character code.             */
-  /*                                                                       */
-  FT_EXPORT( FT_ULong )
-  FT_Get_First_Char( FT_Face   face,
-                     FT_UInt  *agindex );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Next_Char                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used to return the next character code in the     */
-  /*    current charmap of a given face following the value 'char_code',   */
-  /*    as well as the corresponding glyph index.                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face      :: A handle to the source face object.                   */
-  /*    char_code :: The starting character code.                          */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    agindex   :: Glyph index of first character code.  0 if charmap    */
-  /*                 is empty.                                             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The charmap's next character code.                                 */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    You should use this function with @FT_Get_First_Char to walk       */
-  /*    through all character codes available in a given charmap.  See     */
-  /*    the note for this function for a simple code example.              */
-  /*                                                                       */
-  /*    Note that `*agindex' will be set to 0 when there are no more codes */
-  /*    in the charmap.                                                    */
-  /*                                                                       */
-  FT_EXPORT( FT_ULong )
-  FT_Get_Next_Char( FT_Face    face,
-                    FT_ULong   char_code,
-                    FT_UInt   *agindex );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Name_Index                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Returns the glyph index of a given glyph name.  This function uses */
-  /*    driver specific objects to do the translation.                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face       :: A handle to the source face object.                  */
-  /*                                                                       */
-  /*    glyph_name :: The glyph name.                                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The glyph index.  0 means `undefined character code'.              */
-  /*                                                                       */
-  FT_EXPORT( FT_UInt )
-  FT_Get_Name_Index( FT_Face     face,
-                     FT_String*  glyph_name );
-
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    computations                                                       */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Computations                                                       */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Crunching fixed numbers and vectors.                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains various functions used to perform            */
-  /*    computations on 16.16 fixed-float numbers or 2d vectors.           */
-  /*                                                                       */
-  /* <Order>                                                               */
-  /*    FT_MulDiv                                                          */
-  /*    FT_MulFix                                                          */
-  /*    FT_DivFix                                                          */
-  /*    FT_RoundFix                                                        */
-  /*    FT_CeilFix                                                         */
-  /*    FT_FloorFix                                                        */
-  /*    FT_Vector_Transform                                                */
-  /*    FT_Matrix_Multiply                                                 */
-  /*    FT_Matrix_Invert                                                   */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_MulDiv                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A very simple function used to perform the computation `(a*b)/c'   */
-  /*    with maximal accuracy (it uses a 64-bit intermediate integer       */
-  /*    whenever necessary).                                               */
-  /*                                                                       */
-  /*    This function isn't necessarily as fast as some processor specific */
-  /*    operations, but is at least completely portable.                   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    a :: The first multiplier.                                         */
-  /*    b :: The second multiplier.                                        */
-  /*    c :: The divisor.                                                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result of `(a*b)/c'.  This function never traps when trying to */
-  /*    divide by zero; it simply returns `MaxInt' or `MinInt' depending   */
-  /*    on the signs of `a' and `b'.                                       */
-  /*                                                                       */
-  FT_EXPORT( FT_Long )
-  FT_MulDiv( FT_Long  a,
-             FT_Long  b,
-             FT_Long  c );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_MulFix                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A very simple function used to perform the computation             */
-  /*    `(a*b)/0x10000' with maximal accuracy.  Most of the time this is   */
-  /*    used to multiply a given value by a 16.16 fixed float factor.      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    a :: The first multiplier.                                         */
-  /*    b :: The second multiplier.  Use a 16.16 factor here whenever      */
-  /*         possible (see note below).                                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result of `(a*b)/0x10000'.                                     */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function has been optimized for the case where the absolute   */
-  /*    value of `a' is less than 2048, and `b' is a 16.16 scaling factor. */
-  /*    As this happens mainly when scaling from notional units to         */
-  /*    fractional pixels in FreeType, it resulted in noticeable speed     */
-  /*    improvements between versions 2.x and 1.x.                         */
-  /*                                                                       */
-  /*    As a conclusion, always try to place a 16.16 factor as the         */
-  /*    _second_ argument of this function; this can make a great          */
-  /*    difference.                                                        */
-  /*                                                                       */
-  FT_EXPORT( FT_Long )
-  FT_MulFix( FT_Long  a,
-             FT_Long  b );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_DivFix                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A very simple function used to perform the computation             */
-  /*    `(a*0x10000)/b' with maximal accuracy.  Most of the time, this is  */
-  /*    used to divide a given value by a 16.16 fixed float factor.        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    a :: The first multiplier.                                         */
-  /*    b :: The second multiplier.  Use a 16.16 factor here whenever      */
-  /*         possible (see note below).                                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result of `(a*0x10000)/b'.                                     */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The optimization for FT_DivFix() is simple: If (a << 16) fits in   */
-  /*    32 bits, then the division is computed directly.  Otherwise, we    */
-  /*    use a specialized version of @FT_MulDiv.                           */
-  /*                                                                       */
-  FT_EXPORT( FT_Long )
-  FT_DivFix( FT_Long  a,
-             FT_Long  b );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_RoundFix                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A very simple function used to round a 16.16 fixed number.         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    a :: The number to be rounded.                                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result of `(a + 0x8000) & -0x10000'.                           */
-  /*                                                                       */
-  FT_EXPORT( FT_Fixed )
-  FT_RoundFix( FT_Fixed  a );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_CeilFix                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A very simple function used to compute the ceiling function of a   */
-  /*    16.16 fixed number.                                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    a :: The number for which the ceiling function is to be computed.  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result of `(a + 0x10000 - 1) & -0x10000'.                      */
-  /*                                                                       */
-  FT_EXPORT( FT_Fixed )
-  FT_CeilFix( FT_Fixed  a );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_FloorFix                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A very simple function used to compute the floor function of a     */
-  /*    16.16 fixed number.                                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    a :: The number for which the floor function is to be computed.    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result of `a & -0x10000'.                                      */
-  /*                                                                       */
-  FT_EXPORT( FT_Fixed )
-  FT_FloorFix( FT_Fixed  a );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Vector_Transform                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Transforms a single vector through a 2x2 matrix.                   */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    vector :: The target vector to transform.                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    matrix :: A pointer to the source 2x2 matrix.                      */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The result is undefined if either `vector' or `matrix' is invalid. */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Vector_Transform( FT_Vector*        vec,
-                       const FT_Matrix*  matrix );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FREETYPE_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ft2build.h b/dependencies64/sfml/extlibs/headers/freetype/ft2build.h
deleted file mode 100644 (file)
index 7390dc4..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ft2build.h                                                             */
-/*                                                                         */
-/*    Build macros of the FreeType 2 library.                              */
-/*                                                                         */
-/*  Copyright 1996-2001, 2003 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This is a Unix-specific version of <ft2build.h> that should be used   */
-  /* exclusively *after* installation of the library.                      */
-  /*                                                                       */
-  /* It assumes that "/usr/local/include/freetype2" (or whatever is        */
-  /* returned by the "freetype-config --cflags" or "pkg-config --cflags"   */
-  /* command) is in your compilation include path.                         */
-  /*                                                                       */
-  /* We don't need to do anything special in this release.  However, for   */
-  /* a future FreeType 2 release, the following installation changes will  */
-  /* be performed:                                                         */
-  /*                                                                       */
-  /*   - The contents of "freetype-2.x/include/freetype" will be installed */
-  /*     to "/usr/local/include/freetype2" instead of                      */
-  /*     "/usr/local/include/freetype2/freetype".                          */
-  /*                                                                       */
-  /*   - This file will #include <freetype2/config/ftheader.h>, instead    */
-  /*     of <freetype/config/ftheader.h>.                                  */
-  /*                                                                       */
-  /*   - The contents of "ftheader.h" will be processed with `sed' to      */
-  /*     replace all "<freetype/xxx>" with "<freetype2/xxx>".              */
-  /*                                                                       */
-  /*   - Adding "/usr/local/include/freetype2" to your compilation include */
-  /*     path will not be necessary anymore.                               */
-  /*                                                                       */
-  /* These changes will be transparent to client applications which use    */
-  /* freetype-config (or pkg-config).  No modifications will be necessary  */
-  /* to compile with the new scheme.                                       */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FT2_BUILD_UNIX_H__
-#define __FT2_BUILD_UNIX_H__
-
-  /* "<prefix>/include/freetype2" must be in your current inclusion path */
-#include <freetype/config/ftheader.h>
-
-#endif /* __FT2_BUILD_UNIX_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftbbox.h b/dependencies64/sfml/extlibs/headers/freetype/ftbbox.h
deleted file mode 100644 (file)
index f98c89e..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftbbox.h                                                               */
-/*                                                                         */
-/*    FreeType exact bbox computation (specification).                     */
-/*                                                                         */
-/*  Copyright 1996-2001, 2003 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This component has a _single_ role: to compute exact outline bounding */
-  /* boxes.                                                                */
-  /*                                                                       */
-  /* It is separated from the rest of the engine for various technical     */
-  /* reasons.  It may well be integrated in `ftoutln' later.               */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTBBOX_H__
-#define __FTBBOX_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    outline_processing                                                 */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Get_BBox                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Computes the exact bounding box of an outline.  This is slower     */
-  /*    than computing the control box.  However, it uses an advanced      */
-  /*    algorithm which returns _very_ quickly when the two boxes          */
-  /*    coincide.  Otherwise, the outline Bezier arcs are walked over to   */
-  /*    extract their extrema.                                             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    outline :: A pointer to the source outline.                        */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    abbox   :: The outline's exact bounding box.                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Outline_Get_BBox( FT_Outline*  outline,
-                       FT_BBox     *abbox );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTBBOX_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftbdf.h b/dependencies64/sfml/extlibs/headers/freetype/ftbdf.h
deleted file mode 100644 (file)
index 493bca5..0000000
+++ /dev/null
@@ -1,200 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftbdf.h                                                                */
-/*                                                                         */
-/*    FreeType API for accessing BDF-specific strings (specification).     */
-/*                                                                         */
-/*  Copyright 2002, 2003, 2004 by                                          */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTBDF_H__
-#define __FTBDF_H__
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    bdf_fonts                                                          */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    BDF Files                                                          */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    BDF specific API.                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains the declaration of BDF specific functions.   */
-  /*                                                                       */
-  /*************************************************************************/
-
-
- /**********************************************************************
-  *
-  * @enum:
-  *    FT_PropertyType
-  *
-  * @description:
-  *    A list of BDF property types.
-  *
-  * @values:
-  *    BDF_PROPERTY_TYPE_NONE ::
-  *      Value 0 is used to indicate a missing property.
-  *
-  *    BDF_PROPERTY_TYPE_ATOM ::
-  *      Property is a string atom.
-  *
-  *    BDF_PROPERTY_TYPE_INTEGER ::
-  *      Property is a 32-bit signed integer.
-  *
-  *    BDF_PROPERTY_TYPE_CARDINAL ::
-  *      Property is a 32-bit unsigned integer.
-  */
-  typedef enum  BDF_PropertyType_
-  {
-    BDF_PROPERTY_TYPE_NONE     = 0,
-    BDF_PROPERTY_TYPE_ATOM     = 1,
-    BDF_PROPERTY_TYPE_INTEGER  = 2,
-    BDF_PROPERTY_TYPE_CARDINAL = 3
-
-  } BDF_PropertyType;
-
-
- /**********************************************************************
-  *
-  * @type:
-  *    BDF_Property
-  *
-  * @description:
-  *    A handle to a @BDF_PropertyRec structure to model a given
-  *    BDF/PCF property.
-  */
-  typedef struct BDF_PropertyRec_*  BDF_Property;
-
-
- /**********************************************************************
-  *
-  * @struct:
-  *    BDF_PropertyRec
-  *
-  * @description:
-  *    This structure models a given BDF/PCF property.
-  *
-  * @fields:
-  *    type ::
-  *      The property type.
-  *
-  *    u.atom ::
-  *      The atom string, if type is @BDF_PROPERTY_TYPE_ATOM.
-  *
-  *    u.integer ::
-  *      A signed integer, if type is @BDF_PROPERTY_TYPE_INTEGER.
-  *
-  *    u.cardinal ::
-  *      An unsigned integer, if type is @BDF_PROPERTY_TYPE_CARDINAL.
-  */
-  typedef struct  BDF_PropertyRec_
-  {
-    BDF_PropertyType  type;
-    union {
-      const char*     atom;
-      FT_Int32        integer;
-      FT_UInt32       cardinal;
-
-    } u;
-
-  } BDF_PropertyRec;
-
-
- /**********************************************************************
-  *
-  * @function:
-  *    FT_Get_BDF_Charset_ID
-  *
-  * @description:
-  *    Retrieves a BDF font character set identity, according to
-  *    the BDF specification.
-  *
-  * @input:
-  *    face ::
-  *       A handle to the input face.
-  *
-  * @output:
-  *    acharset_encoding ::
-  *       Charset encoding, as a C string, owned by the face.
-  *
-  *    acharset_registry ::
-  *       Charset registry, as a C string, owned by the face.
-  *
-  * @return:
-  *   FreeType error code.  0 means success.
-  *
-  * @note:
-  *   This function only works with BDF faces, returning an error otherwise.
-  */
-  FT_EXPORT( FT_Error )
-  FT_Get_BDF_Charset_ID( FT_Face       face,
-                         const char*  *acharset_encoding,
-                         const char*  *acharset_registry );
-
-
- /**********************************************************************
-  *
-  * @function:
-  *    FT_Get_BDF_Property
-  *
-  * @description:
-  *    Retrieves a BDF property from a BDF or PCF font file.
-  *
-  * @input:
-  *    face :: A handle to the input face.
-  *
-  *    name :: The property name.
-  *
-  * @output:
-  *    aproperty :: The property.
-  *
-  * @return:
-  *   FreeType error code.  0 means success.
-  *
-  * @note:
-  *   This function works with BDF _and_ PCF fonts.  It returns an error
-  *   otherwise.  It also returns an error if the property is not in the
-  *   font.
-  *
-  *   In case of error, "aproperty->type" is always set to
-  *   @BDF_PROPERTY_TYPE_NONE.
-  */
-  FT_EXPORT( FT_Error )
-  FT_Get_BDF_Property( FT_Face           face,
-                       const char*       prop_name,
-                       BDF_PropertyRec  *aproperty );
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __FTBDF_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftbitmap.h b/dependencies64/sfml/extlibs/headers/freetype/ftbitmap.h
deleted file mode 100644 (file)
index 319dd08..0000000
+++ /dev/null
@@ -1,206 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftbitmap.h                                                             */
-/*                                                                         */
-/*    FreeType utility functions for converting 1bpp, 2bpp, 4bpp, and 8bpp */
-/*    bitmaps into 8bpp format (specification).                            */  
-/*                                                                         */
-/*  Copyright 2004, 2005 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTBITMAP_H__
-#define __FTBITMAP_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    bitmap_handling                                                    */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Bitmap Handling                                                    */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Handling FT_Bitmap objects.                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains functions for converting FT_Bitmap objects.  */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Bitmap_New                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initialize a pointer to an FT_Bitmap structure.                    */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    abitmap :: A pointer to the bitmap structure.                      */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Bitmap_New( FT_Bitmap  *abitmap );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Bitmap_Copy                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Copies an bitmap into another one.                                 */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library :: A handle to a library object.                           */
-  /*                                                                       */
-  /*    source  :: A handle to the source bitmap.                          */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    target  :: A handle to the target bitmap.                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT_DEF( FT_Error )
-  FT_Bitmap_Copy( FT_Library        library,
-                  const FT_Bitmap  *source,
-                  FT_Bitmap        *target);
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Bitmap_Embolden                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Embolden a bitmap.  The new bitmap will be about `xStrength'       */
-  /*    pixels wider and `yStrength' pixels higher.  The left and bottom   */
-  /*    borders are kept unchanged.                                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library   :: A handle to a library object.                         */
-  /*                                                                       */
-  /*    xStrength :: How strong the glyph is emboldened horizontally.      */
-  /*                 Expressed in 26.6 pixel format.                       */
-  /*                                                                       */
-  /*    yStrength :: How strong the glyph is emboldened vertically.        */
-  /*                 Expressed in 26.6 pixel format.                       */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    bitmap    :: A handle to the target bitmap.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The current implementation restricts `xStrength' to be less than   */
-  /*    or equal to 8 if bitmap is of pixel_mode @FT_PIXEL_MODE_MONO.      */
-  /*                                                                       */
-  /*    Don't embolden the bitmap owned by a @FT_GlyphSlot directly!  Call */
-  /*    @FT_Bitmap_Copy to get a copy and work on the copy instead.        */
-  /*                                                                       */
-  FT_EXPORT_DEF( FT_Error )
-  FT_Bitmap_Embolden( FT_Library  library,
-                      FT_Bitmap*  bitmap,
-                      FT_Pos      xStrength,
-                      FT_Pos      yStrength );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Bitmap_Convert                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Convert a bitmap object with depth 1bpp, 2bpp, 4bpp, or 8bpp to a  */
-  /*    bitmap object with depth 8bpp, making the number of used bytes per */
-  /*    line (a.k.a. the `pitch') a multiple of `alignment'.               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library   :: A handle to a library object.                         */
-  /*                                                                       */
-  /*    source    :: The source bitmap.                                    */
-  /*                                                                       */
-  /*    alignment :: The pitch of the bitmap is a multiple of this         */
-  /*                 parameter.  Common values are 1, 2, or 4.             */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    target    :: The target bitmap.                                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    It is possible to call @FT_Bitmap_Convert multiple times without   */
-  /*    calling @FT_Bitmap_Done (the memory is simply reallocated).        */
-  /*                                                                       */
-  /*    Use @FT_Bitmap_Done to finally remove the bitmap object.           */
-  /*                                                                       */
-  /*    The `library' argument is taken to have access to FreeType's       */
-  /*    memory handling functions.                                         */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Bitmap_Convert( FT_Library        library,
-                     const FT_Bitmap  *source,
-                     FT_Bitmap        *target,
-                     FT_Int            alignment );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Bitmap_Done                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Destroy a bitmap object created with @FT_Bitmap_New.               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library :: A handle to a library object.                           */
-  /*                                                                       */
-  /*    bitmap  :: The bitmap object to be freed.                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The `library' argument is taken to have access to FreeType's       */
-  /*    memory handling functions.                                         */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Bitmap_Done( FT_Library  library,
-                  FT_Bitmap  *bitmap );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTBITMAP_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftcache.h b/dependencies64/sfml/extlibs/headers/freetype/ftcache.h
deleted file mode 100644 (file)
index 985641c..0000000
+++ /dev/null
@@ -1,817 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcache.h                                                              */
-/*                                                                         */
-/*    FreeType Cache subsystem (specification).                            */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*********                                                       *********/
-  /*********             WARNING, THIS IS BETA CODE.               *********/
-  /*********                                                       *********/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-#ifndef __FTCACHE_H__
-#define __FTCACHE_H__
-
-
-#include <ft2build.h>
-#include FT_GLYPH_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    cache_subsystem                                                    */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Cache Sub-System                                                   */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    How to cache face, size, and glyph data with FreeType 2.           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*   This section describes the FreeType 2 cache sub-system which is     */
-  /*   still in beta.                                                      */
-  /*                                                                       */
-  /* <Order>                                                               */
-  /*   FTC_Manager                                                         */
-  /*   FTC_FaceID                                                          */
-  /*   FTC_Face_Requester                                                  */
-  /*                                                                       */
-  /*   FTC_Manager_New                                                     */
-  /*   FTC_Manager_Reset                                                   */
-  /*   FTC_Manager_Done                                                    */
-  /*   FTC_Manager_LookupFace                                              */
-  /*   FTC_Manager_LookupSize                                              */
-  /*   FTC_Manager_RemoveFaceID                                            */
-  /*                                                                       */
-  /*   FTC_Node                                                            */
-  /*   FTC_Node_Unref                                                      */
-  /*                                                                       */
-  /*   FTC_Font                                                            */
-  /*   FTC_ImageCache                                                      */
-  /*   FTC_ImageCache_New                                                  */
-  /*   FTC_ImageCache_Lookup                                               */
-  /*                                                                       */
-  /*   FTC_SBit                                                            */
-  /*   FTC_SBitCache                                                       */
-  /*   FTC_SBitCache_New                                                   */
-  /*   FTC_SBitCache_Lookup                                                */
-  /*                                                                       */
-  /*   FTC_CMapCache                                                       */
-  /*   FTC_CMapCache_New                                                   */
-  /*   FTC_CMapCache_Lookup                                                */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                    BASIC TYPE DEFINITIONS                     *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FTC_FaceID                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An opaque pointer type that is used to identity face objects.  The */
-  /*    contents of such objects is application-dependent.                 */
-  /*                                                                       */
-  typedef struct FTC_FaceIDRec_*  FTC_FaceID;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FTC_Face_Requester                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A callback function provided by client applications.  It is used   */
-  /*    to translate a given @FTC_FaceID into a new valid @FT_Face object. */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face_id :: The face ID to resolve.                                 */
-  /*                                                                       */
-  /*    library :: A handle to a FreeType library object.                  */
-  /*                                                                       */
-  /*    data    :: Application-provided request data.                      */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aface   :: A new @FT_Face handle.                                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The face requester should not perform funny things on the returned */
-  /*    face object, like creating a new @FT_Size for it, or setting a     */
-  /*    transformation through @FT_Set_Transform!                          */
-  /*                                                                       */
-  typedef FT_Error
-  (*FTC_Face_Requester)( FTC_FaceID  face_id,
-                         FT_Library  library,
-                         FT_Pointer  request_data,
-                         FT_Face*    aface );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FTC_FontRec                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple structure used to describe a given `font' to the cache    */
-  /*    manager.  Note that a `font' is the combination of a given face    */
-  /*    with a given character size.                                       */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    face_id    :: The ID of the face to use.                           */
-  /*                                                                       */
-  /*    pix_width  :: The character width in integer pixels.               */
-  /*                                                                       */
-  /*    pix_height :: The character height in integer pixels.              */
-  /*                                                                       */
-  typedef struct  FTC_FontRec_
-  {
-    FTC_FaceID  face_id;
-    FT_UShort   pix_width;
-    FT_UShort   pix_height;
-
-  } FTC_FontRec;
-
-
-  /* */
-
-
-#define FTC_FONT_COMPARE( f1, f2 )                  \
-          ( (f1)->face_id    == (f2)->face_id    && \
-            (f1)->pix_width  == (f2)->pix_width  && \
-            (f1)->pix_height == (f2)->pix_height )
-
-#define FT_POINTER_TO_ULONG( p )  ((FT_ULong)(FT_Pointer)(p))
-
-#define FTC_FACE_ID_HASH( i )                              \
-          ((FT_UInt32)(( FT_POINTER_TO_ULONG( i ) >> 3 ) ^ \
-                       ( FT_POINTER_TO_ULONG( i ) << 7 ) ) )
-
-#define FTC_FONT_HASH( f )                              \
-          (FT_UInt32)( FTC_FACE_ID_HASH((f)->face_id) ^ \
-                       ((f)->pix_width << 8)          ^ \
-                       ((f)->pix_height)              )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FTC_Font                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple handle to an @FTC_FontRec structure.                      */
-  /*                                                                       */
-  typedef FTC_FontRec*  FTC_Font;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                      CACHE MANAGER OBJECT                     *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FTC_Manager                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This object is used to cache one or more @FT_Face objects, along   */
-  /*    with corresponding @FT_Size objects.                               */
-  /*                                                                       */
-  typedef struct FTC_ManagerRec_*  FTC_Manager;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FTC_Node                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An opaque handle to a cache node object.  Each cache node is       */
-  /*    reference-counted.  A node with a count of 0 might be flushed      */
-  /*    out of a full cache whenever a lookup request is performed.        */
-  /*                                                                       */
-  /*    If you lookup nodes, you have the ability to "acquire" them, i.e., */
-  /*    to increment their reference count.  This will prevent the node    */
-  /*    from being flushed out of the cache until you explicitly "release" */
-  /*    it (see @FTC_Node_Unref).                                          */
-  /*                                                                       */
-  /*    See also @FTC_SBitCache_Lookup and @FTC_ImageCache_Lookup.         */
-  /*                                                                       */
-  typedef struct FTC_NodeRec_*  FTC_Node;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_Manager_New                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new cache manager.                                       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library     :: The parent FreeType library handle to use.          */
-  /*                                                                       */
-  /*    max_bytes   :: Maximum number of bytes to use for cached data.     */
-  /*                   Use 0 for defaults.                                 */
-  /*                                                                       */
-  /*    requester   :: An application-provided callback used to translate  */
-  /*                   face IDs into real @FT_Face objects.                */
-  /*                                                                       */
-  /*    req_data    :: A generic pointer that is passed to the requester   */
-  /*                   each time it is called (see @FTC_Face_Requester).   */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    amanager  :: A handle to a new manager object.  0 in case of       */
-  /*                 failure.                                              */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FTC_Manager_New( FT_Library          library,
-                   FT_UInt             max_faces,
-                   FT_UInt             max_sizes,
-                   FT_ULong            max_bytes,
-                   FTC_Face_Requester  requester,
-                   FT_Pointer          req_data,
-                   FTC_Manager        *amanager );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_Manager_Reset                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Empties a given cache manager.  This simply gets rid of all the    */
-  /*    currently cached @FT_Face and @FT_Size objects within the manager. */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    manager :: A handle to the manager.                                */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FTC_Manager_Reset( FTC_Manager  manager );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_Manager_Done                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Destroys a given manager after emptying it.                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    manager :: A handle to the target cache manager object.            */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FTC_Manager_Done( FTC_Manager  manager );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_Manager_LookupFace                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves the @FT_Face object that corresponds to a given face ID  */
-  /*    through a cache manager.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    manager :: A handle to the cache manager.                          */
-  /*                                                                       */
-  /*    face_id :: The ID of the face object.                              */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aface   :: A handle to the face object.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The returned @FT_Face object is always owned by the manager.  You  */
-  /*    should never try to discard it yourself.                           */
-  /*                                                                       */
-  /*    The @FT_Face object doesn't necessarily have a current size object */
-  /*    (i.e., face->size can be 0).  If you need a specific `font size',  */
-  /*    use @FTC_Manager_LookupSize instead.                               */
-  /*                                                                       */
-  /*    Never change the face's transformation matrix (i.e., never call    */
-  /*    the @FT_Set_Transform function) on a returned face!  If you need   */
-  /*    to transform glyphs, do it yourself after glyph loading.           */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FTC_Manager_LookupFace( FTC_Manager  manager,
-                          FTC_FaceID   face_id,
-                          FT_Face     *aface );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FTC_ScalerRec                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to describe a given character size in either      */
-  /*    pixels or points to the cache manager.  See                        */
-  /*    @FTC_Manager_LookupSize.                                           */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    face_id :: The source face ID.                                     */
-  /*                                                                       */
-  /*    width   :: The character width.                                    */
-  /*                                                                       */
-  /*    height  :: The character height.                                   */
-  /*                                                                       */
-  /*    pixel   :: A Boolean.  If TRUE, the `width' and `height' fields    */
-  /*               are interpreted as integer pixel character sizes.       */
-  /*               Otherwise, they are expressed as 1/64th of points.      */
-  /*                                                                       */
-  /*    x_res   :: Only used when `pixel' is FALSE to indicate the         */
-  /*               horizontal resolution in dpi.                           */
-  /*                                                                       */
-  /*    y_res   :: Only used when `pixel' is FALSE to indicate the         */
-  /*               vertical resolution in dpi.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This type is mainly used to retrieve @FT_Size objects through the  */
-  /*    cache manager.                                                     */
-  /*                                                                       */
-  typedef struct  FTC_ScalerRec_
-  {
-    FTC_FaceID  face_id;
-    FT_UInt     width;
-    FT_UInt     height;
-    FT_Int      pixel;
-    FT_UInt     x_res;
-    FT_UInt     y_res;
-
-  } FTC_ScalerRec, *FTC_Scaler;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_Manager_LookupSize                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieve the @FT_Size object that corresponds to a given           */
-  /*    @FTC_Scaler through a cache manager.                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    manager :: A handle to the cache manager.                          */
-  /*                                                                       */
-  /*    scaler  :: A scaler handle.                                        */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    asize   :: A handle to the size object.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The returned @FT_Size object is always owned by the manager.  You  */
-  /*    should never try to discard it by yourself.                        */
-  /*                                                                       */
-  /*    You can access the parent @FT_Face object simply as `size->face'   */
-  /*    if you need it.  Note that this object is also owned by the        */
-  /*    manager.                                                           */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FTC_Manager_LookupSize( FTC_Manager  manager,
-                          FTC_Scaler   scaler,
-                          FT_Size     *asize );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_Node_Unref                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Decrement a cache node's internal reference count.  When the count */
-  /*    reaches 0, it is not destroyed but becomes eligible for subsequent */
-  /*    cache flushes.                                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    node    :: The cache node handle.                                  */
-  /*                                                                       */
-  /*    manager :: The cache manager handle.                               */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FTC_Node_Unref( FTC_Node     node,
-                  FTC_Manager  manager );
-
-
-  /* remove all nodes belonging to a given face_id */
-  FT_EXPORT( void )
-  FTC_Manager_RemoveFaceID( FTC_Manager  manager,
-                            FTC_FaceID   face_id );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    cache_subsystem                                                    */
-  /*                                                                       */
-  /*************************************************************************/
-
-  /************************************************************************
-   *
-   * @type:
-   *    FTC_CMapCache
-   *
-   * @description:
-   *    An opaque handle used to manager a charmap cache.  This cache is
-   *    to hold character codes -> glyph indices mappings.
-   */
-  typedef struct FTC_CMapCacheRec_*  FTC_CMapCache;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FTC_CMapCache_New                                                  */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Create a new charmap cache.                                        */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    manager :: A handle to the cache manager.                          */
-  /*                                                                       */
-  /* @output:                                                              */
-  /*    acache  :: A new cache handle.  NULL in case of error.             */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    Like all other caches, this one will be destroyed with the cache   */
-  /*    manager.                                                           */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FTC_CMapCache_New( FTC_Manager     manager,
-                     FTC_CMapCache  *acache );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FTC_CMapCache_Lookup                                               */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Translate a character code into a glyph index, using the charmap   */
-  /*    cache.                                                             */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    cache      :: A charmap cache handle.                              */
-  /*                                                                       */
-  /*    face_id    :: The source face ID.                                  */
-  /*                                                                       */
-  /*    cmap_index :: The index of the charmap in the source face.         */
-  /*                                                                       */
-  /*    char_code  :: The character code (in the corresponding charmap).   */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    Glyph index.  0 means `no glyph'.                                  */
-  /*                                                                       */
-  FT_EXPORT( FT_UInt )
-  FTC_CMapCache_Lookup( FTC_CMapCache  cache,
-                        FTC_FaceID     face_id,
-                        FT_Int         cmap_index,
-                        FT_UInt32      char_code );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    cache_subsystem                                                    */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                       IMAGE CACHE OBJECT                      *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  typedef struct  FTC_ImageTypeRec_
-  {
-    FTC_FaceID   face_id;
-    FT_Int       width;
-    FT_Int       height;
-    FT_Int32     flags;
-
-  } FTC_ImageTypeRec;
-
-  typedef struct FTC_ImageTypeRec_*   FTC_ImageType;
-
- /* */
-
-#define FTC_IMAGE_TYPE_COMPARE( d1, d2 )                    \
-          ( FTC_FONT_COMPARE( &(d1)->font, &(d2)->font ) && \
-            (d1)->flags == (d2)->flags                   )
-
-#define FTC_IMAGE_TYPE_HASH( d )                    \
-          (FT_UFast)( FTC_FONT_HASH( &(d)->font ) ^ \
-                      ( (d)->flags << 4 )         )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FTC_ImageCache                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to an glyph image cache object.  They are designed to     */
-  /*    hold many distinct glyph images while not exceeding a certain      */
-  /*    memory threshold.                                                  */
-  /*                                                                       */
-  typedef struct FTC_ImageCacheRec_*  FTC_ImageCache;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_ImageCache_New                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new glyph image cache.                                   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    manager :: The parent manager for the image cache.                 */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    acache  :: A handle to the new glyph image cache object.           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FTC_ImageCache_New( FTC_Manager      manager,
-                      FTC_ImageCache  *acache );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_ImageCache_Lookup                                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves a given glyph image from a glyph image cache.            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    cache  :: A handle to the source glyph image cache.                */
-  /*                                                                       */
-  /*    type   :: A pointer to a glyph image type descriptor.              */
-  /*                                                                       */
-  /*    gindex :: The glyph index to retrieve.                             */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aglyph :: The corresponding @FT_Glyph object.  0 in case of        */
-  /*              failure.                                                 */
-  /*                                                                       */
-  /*    anode  :: Used to return the address of of the corresponding cache */
-  /*              node after incrementing its reference count (see note    */
-  /*              below).                                                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The returned glyph is owned and managed by the glyph image cache.  */
-  /*    Never try to transform or discard it manually!  You can however    */
-  /*    create a copy with @FT_Glyph_Copy and modify the new one.          */
-  /*                                                                       */
-  /*    If `anode' is _not_ NULL, it receives the address of the cache     */
-  /*    node containing the glyph image, after increasing its reference    */
-  /*    count.  This ensures that the node (as well as the FT_Glyph) will  */
-  /*    always be kept in the cache until you call @FTC_Node_Unref to      */
-  /*    `release' it.                                                      */
-  /*                                                                       */
-  /*    If `anode' is NULL, the cache node is left unchanged, which means  */
-  /*    that the FT_Glyph could be flushed out of the cache on the next    */
-  /*    call to one of the caching sub-system APIs.  Don't assume that it  */
-  /*    is persistent!                                                     */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FTC_ImageCache_Lookup( FTC_ImageCache  cache,
-                         FTC_ImageType   type,
-                         FT_UInt         gindex,
-                         FT_Glyph       *aglyph,
-                         FTC_Node       *anode );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FTC_SBit                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a small bitmap descriptor.  See the @FTC_SBitRec       */
-  /*    structure for details.                                             */
-  /*                                                                       */
-  typedef struct FTC_SBitRec_*  FTC_SBit;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FTC_SBitRec                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A very compact structure used to describe a small glyph bitmap.    */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    width     :: The bitmap width in pixels.                           */
-  /*                                                                       */
-  /*    height    :: The bitmap height in pixels.                          */
-  /*                                                                       */
-  /*    left      :: The horizontal distance from the pen position to the  */
-  /*                 left bitmap border (a.k.a. `left side bearing', or    */
-  /*                 `lsb').                                               */
-  /*                                                                       */
-  /*    top       :: The vertical distance from the pen position (on the   */
-  /*                 baseline) to the upper bitmap border (a.k.a. `top     */
-  /*                 side bearing').  The distance is positive for upwards */
-  /*                 Y coordinates.                                        */
-  /*                                                                       */
-  /*    format    :: The format of the glyph bitmap (monochrome or gray).  */
-  /*                                                                       */
-  /*    max_grays :: Maximum gray level value (in the range 1 to 255).     */
-  /*                                                                       */
-  /*    pitch     :: The number of bytes per bitmap line.  May be positive */
-  /*                 or negative.                                          */
-  /*                                                                       */
-  /*    xadvance  :: The horizontal advance width in pixels.               */
-  /*                                                                       */
-  /*    yadvance  :: The vertical advance height in pixels.                */
-  /*                                                                       */
-  /*    buffer    :: A pointer to the bitmap pixels.                       */
-  /*                                                                       */
-  typedef struct  FTC_SBitRec_
-  {
-    FT_Byte   width;
-    FT_Byte   height;
-    FT_Char   left;
-    FT_Char   top;
-
-    FT_Byte   format;
-    FT_Byte   max_grays;
-    FT_Short  pitch;
-    FT_Char   xadvance;
-    FT_Char   yadvance;
-
-    FT_Byte*  buffer;
-
-  } FTC_SBitRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FTC_SBitCache                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a small bitmap cache.  These are special cache objects */
-  /*    used to store small glyph bitmaps (and anti-aliased pixmaps) in a  */
-  /*    much more efficient way than the traditional glyph image cache     */
-  /*    implemented by @FTC_ImageCache.                                    */
-  /*                                                                       */
-  typedef struct FTC_SBitCacheRec_*  FTC_SBitCache;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_SBitCache_New                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new cache to store small glyph bitmaps.                  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    manager :: A handle to the source cache manager.                   */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    acache  :: A handle to the new sbit cache.  NULL in case of error. */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FTC_SBitCache_New( FTC_Manager     manager,
-                     FTC_SBitCache  *acache );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_SBitCache_Lookup                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Looks up a given small glyph bitmap in a given sbit cache and      */
-  /*    `lock' it to prevent its flushing from the cache until needed.     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    cache  :: A handle to the source sbit cache.                       */
-  /*                                                                       */
-  /*    type   :: A pointer to the glyph image type descriptor.            */
-  /*                                                                       */
-  /*    gindex :: The glyph index.                                         */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    sbit   :: A handle to a small bitmap descriptor.                   */
-  /*                                                                       */
-  /*    anode  :: Used to return the address of of the corresponding cache */
-  /*              node after incrementing its reference count (see note    */
-  /*              below).                                                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The small bitmap descriptor and its bit buffer are owned by the    */
-  /*    cache and should never be freed by the application.  They might    */
-  /*    as well disappear from memory on the next cache lookup, so don't   */
-  /*    treat them as persistent data.                                     */
-  /*                                                                       */
-  /*    The descriptor's `buffer' field is set to 0 to indicate a missing  */
-  /*    glyph bitmap.                                                      */
-  /*                                                                       */
-  /*    If `anode' is _not_ NULL, it receives the address of the cache     */
-  /*    node containing the bitmap, after increasing its reference count.  */
-  /*    This ensures that the node (as well as the image) will always be   */
-  /*    kept in the cache until you call @FTC_Node_Unref to `release' it.  */
-  /*                                                                       */
-  /*    If `anode' is NULL, the cache node is left unchanged, which means  */
-  /*    that the bitmap could be flushed out of the cache on the next      */
-  /*    call to one of the caching sub-system APIs.  Don't assume that it  */
-  /*    is persistent!                                                     */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FTC_SBitCache_Lookup( FTC_SBitCache    cache,
-                        FTC_ImageType    type,
-                        FT_UInt          gindex,
-                        FTC_SBit        *sbit,
-                        FTC_Node        *anode );
-
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __FTCACHE_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftchapters.h b/dependencies64/sfml/extlibs/headers/freetype/ftchapters.h
deleted file mode 100644 (file)
index 781160b..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/* This file defines the structure of the FreeType reference.              */
-/* It is used by the python script which generates the HTML files.         */
-/*                                                                         */
-/***************************************************************************/
-
-
-/***************************************************************************/
-/*                                                                         */
-/* <Chapter>                                                               */
-/*    core_api                                                             */
-/*                                                                         */
-/* <Title>                                                                 */
-/*    Core API                                                             */
-/*                                                                         */
-/* <Sections>                                                              */
-/*    basic_types                                                          */
-/*    base_interface                                                       */
-/*    glyph_management                                                     */
-/*    mac_specific                                                         */
-/*    sizes_management                                                     */
-/*    header_file_macros                                                   */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* <Chapter>                                                               */
-/*    format_specific                                                      */
-/*                                                                         */
-/* <Title>                                                                 */
-/*    Format-Specific API                                                  */
-/*                                                                         */
-/* <Sections>                                                              */
-/*    multiple_masters                                                     */
-/*    truetype_tables                                                      */
-/*    type1_tables                                                         */
-/*    sfnt_names                                                           */
-/*    bdf_fonts                                                            */
-/*    pfr_fonts                                                            */
-/*    winfnt_fonts                                                         */
-/*    ot_validation                                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-/***************************************************************************/
-/*                                                                         */
-/* <Chapter>                                                               */
-/*    cache_subsystem                                                      */
-/*                                                                         */
-/* <Title>                                                                 */
-/*    Cache Sub-System                                                     */
-/*                                                                         */
-/* <Sections>                                                              */
-/*    cache_subsystem                                                      */
-/*                                                                         */
-/***************************************************************************/
-
-
-/***************************************************************************/
-/*                                                                         */
-/* <Chapter>                                                               */
-/*    support_api                                                          */
-/*                                                                         */
-/* <Title>                                                                 */
-/*    Support API                                                          */
-/*                                                                         */
-/* <Sections>                                                              */
-/*    computations                                                         */
-/*    list_processing                                                      */
-/*    outline_processing                                                   */
-/*    bitmap_handling                                                      */
-/*    raster                                                               */
-/*    glyph_stroker                                                        */
-/*    system_interface                                                     */
-/*    module_management                                                    */
-/*    gzip                                                                 */
-/*    lzw                                                                  */
-/*                                                                         */
-/***************************************************************************/
diff --git a/dependencies64/sfml/extlibs/headers/freetype/fterrdef.h b/dependencies64/sfml/extlibs/headers/freetype/fterrdef.h
deleted file mode 100644 (file)
index 2f73c08..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  fterrdef.h                                                             */
-/*                                                                         */
-/*    FreeType error codes (specification).                                */
-/*                                                                         */
-/*  Copyright 2002, 2004 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*******************************************************************/
-  /*******************************************************************/
-  /*****                                                         *****/
-  /*****                LIST OF ERROR CODES/MESSAGES             *****/
-  /*****                                                         *****/
-  /*******************************************************************/
-  /*******************************************************************/
-
-
-  /* You need to define both FT_ERRORDEF_ and FT_NOERRORDEF_ before */
-  /* including this file.                                           */
-
-
-  /* generic errors */
-
-  FT_NOERRORDEF_( Ok,                                        0x00, \
-                  "no error" )
-
-  FT_ERRORDEF_( Cannot_Open_Resource,                        0x01, \
-                "cannot open resource" )
-  FT_ERRORDEF_( Unknown_File_Format,                         0x02, \
-                "unknown file format" )
-  FT_ERRORDEF_( Invalid_File_Format,                         0x03, \
-                "broken file" )
-  FT_ERRORDEF_( Invalid_Version,                             0x04, \
-                "invalid FreeType version" )
-  FT_ERRORDEF_( Lower_Module_Version,                        0x05, \
-                "module version is too low" )
-  FT_ERRORDEF_( Invalid_Argument,                            0x06, \
-                "invalid argument" )
-  FT_ERRORDEF_( Unimplemented_Feature,                       0x07, \
-                "unimplemented feature" )
-  FT_ERRORDEF_( Invalid_Table,                               0x08, \
-                "broken table" )
-  FT_ERRORDEF_( Invalid_Offset,                              0x09, \
-                "broken offset within table" )
-
-  /* glyph/character errors */
-
-  FT_ERRORDEF_( Invalid_Glyph_Index,                         0x10, \
-                "invalid glyph index" )
-  FT_ERRORDEF_( Invalid_Character_Code,                      0x11, \
-                "invalid character code" )
-  FT_ERRORDEF_( Invalid_Glyph_Format,                        0x12, \
-                "unsupported glyph image format" )
-  FT_ERRORDEF_( Cannot_Render_Glyph,                         0x13, \
-                "cannot render this glyph format" )
-  FT_ERRORDEF_( Invalid_Outline,                             0x14, \
-                "invalid outline" )
-  FT_ERRORDEF_( Invalid_Composite,                           0x15, \
-                "invalid composite glyph" )
-  FT_ERRORDEF_( Too_Many_Hints,                              0x16, \
-                "too many hints" )
-  FT_ERRORDEF_( Invalid_Pixel_Size,                          0x17, \
-                "invalid pixel size" )
-
-  /* handle errors */
-
-  FT_ERRORDEF_( Invalid_Handle,                              0x20, \
-                "invalid object handle" )
-  FT_ERRORDEF_( Invalid_Library_Handle,                      0x21, \
-                "invalid library handle" )
-  FT_ERRORDEF_( Invalid_Driver_Handle,                       0x22, \
-                "invalid module handle" )
-  FT_ERRORDEF_( Invalid_Face_Handle,                         0x23, \
-                "invalid face handle" )
-  FT_ERRORDEF_( Invalid_Size_Handle,                         0x24, \
-                "invalid size handle" )
-  FT_ERRORDEF_( Invalid_Slot_Handle,                         0x25, \
-                "invalid glyph slot handle" )
-  FT_ERRORDEF_( Invalid_CharMap_Handle,                      0x26, \
-                "invalid charmap handle" )
-  FT_ERRORDEF_( Invalid_Cache_Handle,                        0x27, \
-                "invalid cache manager handle" )
-  FT_ERRORDEF_( Invalid_Stream_Handle,                       0x28, \
-                "invalid stream handle" )
-
-  /* driver errors */
-
-  FT_ERRORDEF_( Too_Many_Drivers,                            0x30, \
-                "too many modules" )
-  FT_ERRORDEF_( Too_Many_Extensions,                         0x31, \
-                "too many extensions" )
-
-  /* memory errors */
-
-  FT_ERRORDEF_( Out_Of_Memory,                               0x40, \
-                "out of memory" )
-  FT_ERRORDEF_( Unlisted_Object,                             0x41, \
-                "unlisted object" )
-
-  /* stream errors */
-
-  FT_ERRORDEF_( Cannot_Open_Stream,                          0x51, \
-                "cannot open stream" )
-  FT_ERRORDEF_( Invalid_Stream_Seek,                         0x52, \
-                "invalid stream seek" )
-  FT_ERRORDEF_( Invalid_Stream_Skip,                         0x53, \
-                "invalid stream skip" )
-  FT_ERRORDEF_( Invalid_Stream_Read,                         0x54, \
-                "invalid stream read" )
-  FT_ERRORDEF_( Invalid_Stream_Operation,                    0x55, \
-                "invalid stream operation" )
-  FT_ERRORDEF_( Invalid_Frame_Operation,                     0x56, \
-                "invalid frame operation" )
-  FT_ERRORDEF_( Nested_Frame_Access,                         0x57, \
-                "nested frame access" )
-  FT_ERRORDEF_( Invalid_Frame_Read,                          0x58, \
-                "invalid frame read" )
-
-  /* raster errors */
-
-  FT_ERRORDEF_( Raster_Uninitialized,                        0x60, \
-                "raster uninitialized" )
-  FT_ERRORDEF_( Raster_Corrupted,                            0x61, \
-                "raster corrupted" )
-  FT_ERRORDEF_( Raster_Overflow,                             0x62, \
-                "raster overflow" )
-  FT_ERRORDEF_( Raster_Negative_Height,                      0x63, \
-                "negative height while rastering" )
-
-  /* cache errors */
-
-  FT_ERRORDEF_( Too_Many_Caches,                             0x70, \
-                "too many registered caches" )
-
-  /* TrueType and SFNT errors */
-
-  FT_ERRORDEF_( Invalid_Opcode,                              0x80, \
-                "invalid opcode" )
-  FT_ERRORDEF_( Too_Few_Arguments,                           0x81, \
-                "too few arguments" )
-  FT_ERRORDEF_( Stack_Overflow,                              0x82, \
-                "stack overflow" )
-  FT_ERRORDEF_( Code_Overflow,                               0x83, \
-                "code overflow" )
-  FT_ERRORDEF_( Bad_Argument,                                0x84, \
-                "bad argument" )
-  FT_ERRORDEF_( Divide_By_Zero,                              0x85, \
-                "division by zero" )
-  FT_ERRORDEF_( Invalid_Reference,                           0x86, \
-                "invalid reference" )
-  FT_ERRORDEF_( Debug_OpCode,                                0x87, \
-                "found debug opcode" )
-  FT_ERRORDEF_( ENDF_In_Exec_Stream,                         0x88, \
-                "found ENDF opcode in execution stream" )
-  FT_ERRORDEF_( Nested_DEFS,                                 0x89, \
-                "nested DEFS" )
-  FT_ERRORDEF_( Invalid_CodeRange,                           0x8A, \
-                "invalid code range" )
-  FT_ERRORDEF_( Execution_Too_Long,                          0x8B, \
-                "execution context too long" )
-  FT_ERRORDEF_( Too_Many_Function_Defs,                      0x8C, \
-                "too many function definitions" )
-  FT_ERRORDEF_( Too_Many_Instruction_Defs,                   0x8D, \
-                "too many instruction definitions" )
-  FT_ERRORDEF_( Table_Missing,                               0x8E, \
-                "SFNT font table missing" )
-  FT_ERRORDEF_( Horiz_Header_Missing,                        0x8F, \
-                "horizontal header (hhea) table missing" )
-  FT_ERRORDEF_( Locations_Missing,                           0x90, \
-                "locations (loca) table missing" )
-  FT_ERRORDEF_( Name_Table_Missing,                          0x91, \
-                "name table missing" )
-  FT_ERRORDEF_( CMap_Table_Missing,                          0x92, \
-                "character map (cmap) table missing" )
-  FT_ERRORDEF_( Hmtx_Table_Missing,                          0x93, \
-                "horizontal metrics (hmtx) table missing" )
-  FT_ERRORDEF_( Post_Table_Missing,                          0x94, \
-                "PostScript (post) table missing" )
-  FT_ERRORDEF_( Invalid_Horiz_Metrics,                       0x95, \
-                "invalid horizontal metrics" )
-  FT_ERRORDEF_( Invalid_CharMap_Format,                      0x96, \
-                "invalid character map (cmap) format" )
-  FT_ERRORDEF_( Invalid_PPem,                                0x97, \
-                "invalid ppem value" )
-  FT_ERRORDEF_( Invalid_Vert_Metrics,                        0x98, \
-                "invalid vertical metrics" )
-  FT_ERRORDEF_( Could_Not_Find_Context,                      0x99, \
-                "could not find context" )
-  FT_ERRORDEF_( Invalid_Post_Table_Format,                   0x9A, \
-                "invalid PostScript (post) table format" )
-  FT_ERRORDEF_( Invalid_Post_Table,                          0x9B, \
-                "invalid PostScript (post) table" )
-
-  /* CFF, CID, and Type 1 errors */
-
-  FT_ERRORDEF_( Syntax_Error,                                0xA0, \
-                "opcode syntax error" )
-  FT_ERRORDEF_( Stack_Underflow,                             0xA1, \
-                "argument stack underflow" )
-  FT_ERRORDEF_( Ignore,                                      0xA2, \
-                "ignore" )
-
-  /* BDF errors */
-
-  FT_ERRORDEF_( Missing_Startfont_Field,                     0xB0, \
-                "`STARTFONT' field missing" )
-  FT_ERRORDEF_( Missing_Font_Field,                          0xB1, \
-                "`FONT' field missing" )
-  FT_ERRORDEF_( Missing_Size_Field,                          0xB2, \
-                "`SIZE' field missing" )
-  FT_ERRORDEF_( Missing_Chars_Field,                         0xB3, \
-                "`CHARS' field missing" )
-  FT_ERRORDEF_( Missing_Startchar_Field,                     0xB4, \
-                "`STARTCHAR' field missing" )
-  FT_ERRORDEF_( Missing_Encoding_Field,                      0xB5, \
-                "`ENCODING' field missing" )
-  FT_ERRORDEF_( Missing_Bbx_Field,                           0xB6, \
-                "`BBX' field missing" )
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/fterrors.h b/dependencies64/sfml/extlibs/headers/freetype/fterrors.h
deleted file mode 100644 (file)
index 6a2bed0..0000000
+++ /dev/null
@@ -1,206 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  fterrors.h                                                             */
-/*                                                                         */
-/*    FreeType error code handling (specification).                        */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2004 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This special header file is used to define the handling of FT2        */
-  /* enumeration constants.  It can also be used to generate error message */
-  /* strings with a small macro trick explained below.                     */
-  /*                                                                       */
-  /* I - Error Formats                                                     */
-  /* -----------------                                                     */
-  /*                                                                       */
-  /*   The configuration macro FT_CONFIG_OPTION_USE_MODULE_ERRORS can be   */
-  /*   defined in ftoption.h in order to make the higher byte indicate     */
-  /*   the module where the error has happened (this is not compatible     */
-  /*   with standard builds of FreeType 2).  You can then use the macro    */
-  /*   FT_ERROR_BASE macro to extract the generic error code from an       */
-  /*   FT_Error value.                                                     */
-  /*                                                                       */
-  /*                                                                       */
-  /* II - Error Message strings                                            */
-  /* --------------------------                                            */
-  /*                                                                       */
-  /*   The error definitions below are made through special macros that    */
-  /*   allow client applications to build a table of error message strings */
-  /*   if they need it.  The strings are not included in a normal build of */
-  /*   FreeType 2 to save space (most client applications do not use       */
-  /*   them).                                                              */
-  /*                                                                       */
-  /*   To do so, you have to define the following macros before including  */
-  /*   this file:                                                          */
-  /*                                                                       */
-  /*   FT_ERROR_START_LIST ::                                              */
-  /*     This macro is called before anything else to define the start of  */
-  /*     the error list.  It is followed by several FT_ERROR_DEF calls     */
-  /*     (see below).                                                      */
-  /*                                                                       */
-  /*   FT_ERROR_DEF( e, v, s ) ::                                          */
-  /*     This macro is called to define one single error.                  */
-  /*     `e' is the error code identifier (e.g. FT_Err_Invalid_Argument).  */
-  /*     `v' is the error numerical value.                                 */
-  /*     `s' is the corresponding error string.                            */
-  /*                                                                       */
-  /*   FT_ERROR_END_LIST ::                                                */
-  /*     This macro ends the list.                                         */
-  /*                                                                       */
-  /*   Additionally, you have to undefine __FTERRORS_H__ before #including */
-  /*   this file.                                                          */
-  /*                                                                       */
-  /*   Here is a simple example:                                           */
-  /*                                                                       */
-  /*     {                                                                 */
-  /*       #undef __FTERRORS_H__                                           */
-  /*       #define FT_ERRORDEF( e, v, s )  { e, s },                       */
-  /*       #define FT_ERROR_START_LIST     {                               */
-  /*       #define FT_ERROR_END_LIST       { 0, 0 } };                     */
-  /*                                                                       */
-  /*       const struct                                                    */
-  /*       {                                                               */
-  /*         int          err_code;                                        */
-  /*         const char*  err_msg                                          */
-  /*       } ft_errors[] =                                                 */
-  /*                                                                       */
-  /*       #include FT_ERRORS_H                                            */
-  /*     }                                                                 */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTERRORS_H__
-#define __FTERRORS_H__
-
-
-  /* include module base error codes */
-#include FT_MODULE_ERRORS_H
-
-
-  /*******************************************************************/
-  /*******************************************************************/
-  /*****                                                         *****/
-  /*****                       SETUP MACROS                      *****/
-  /*****                                                         *****/
-  /*******************************************************************/
-  /*******************************************************************/
-
-
-#undef  FT_NEED_EXTERN_C
-
-#undef  FT_ERR_XCAT
-#undef  FT_ERR_CAT
-
-#define FT_ERR_XCAT( x, y )  x ## y
-#define FT_ERR_CAT( x, y )   FT_ERR_XCAT( x, y )
-
-
-  /* FT_ERR_PREFIX is used as a prefix for error identifiers. */
-  /* By default, we use `FT_Err_'.                            */
-  /*                                                          */
-#ifndef FT_ERR_PREFIX
-#define FT_ERR_PREFIX  FT_Err_
-#endif
-
-
-  /* FT_ERR_BASE is used as the base for module-specific errors. */
-  /*                                                             */
-#ifdef FT_CONFIG_OPTION_USE_MODULE_ERRORS
-
-#ifndef FT_ERR_BASE
-#define FT_ERR_BASE  FT_Mod_Err_Base
-#endif
-
-#else
-
-#undef FT_ERR_BASE
-#define FT_ERR_BASE  0
-
-#endif /* FT_CONFIG_OPTION_USE_MODULE_ERRORS */
-
-
-  /* If FT_ERRORDEF is not defined, we need to define a simple */
-  /* enumeration type.                                         */
-  /*                                                           */
-#ifndef FT_ERRORDEF
-
-#define FT_ERRORDEF( e, v, s )  e = v,
-#define FT_ERROR_START_LIST     enum {
-#define FT_ERROR_END_LIST       FT_ERR_CAT( FT_ERR_PREFIX, Max ) };
-
-#ifdef __cplusplus
-#define FT_NEED_EXTERN_C
-  extern "C" {
-#endif
-
-#endif /* !FT_ERRORDEF */
-
-
-  /* this macro is used to define an error */
-#define FT_ERRORDEF_( e, v, s )   \
-          FT_ERRORDEF( FT_ERR_CAT( FT_ERR_PREFIX, e ), v + FT_ERR_BASE, s )
-
-  /* this is only used for <module>_Err_Ok, which must be 0! */
-#define FT_NOERRORDEF_( e, v, s ) \
-          FT_ERRORDEF( FT_ERR_CAT( FT_ERR_PREFIX, e ), v, s )
-
-
-#ifdef FT_ERROR_START_LIST
-  FT_ERROR_START_LIST
-#endif
-
-
-  /* now include the error codes */
-#include FT_ERROR_DEFINITIONS_H
-
-
-#ifdef FT_ERROR_END_LIST
-  FT_ERROR_END_LIST
-#endif
-
-
-  /*******************************************************************/
-  /*******************************************************************/
-  /*****                                                         *****/
-  /*****                      SIMPLE CLEANUP                     *****/
-  /*****                                                         *****/
-  /*******************************************************************/
-  /*******************************************************************/
-
-#ifdef FT_NEED_EXTERN_C
-  }
-#endif
-
-#undef FT_ERROR_START_LIST
-#undef FT_ERROR_END_LIST
-
-#undef FT_ERRORDEF
-#undef FT_ERRORDEF_
-#undef FT_NOERRORDEF_
-
-#undef FT_NEED_EXTERN_C
-#undef FT_ERR_CONCAT
-#undef FT_ERR_BASE
-
-  /* FT_KEEP_ERR_PREFIX is needed for ftvalid.h */
-#ifndef FT_KEEP_ERR_PREFIX
-#undef FT_ERR_PREFIX
-#endif
-
-#endif /* __FTERRORS_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftglyph.h b/dependencies64/sfml/extlibs/headers/freetype/ftglyph.h
deleted file mode 100644 (file)
index 14050a2..0000000
+++ /dev/null
@@ -1,565 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftglyph.h                                                              */
-/*                                                                         */
-/*    FreeType convenience functions to handle glyphs (specification).     */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file contains the definition of several convenience functions    */
-  /* that can be used by client applications to easily retrieve glyph      */
-  /* bitmaps and outlines from a given face.                               */
-  /*                                                                       */
-  /* These functions should be optional if you are writing a font server   */
-  /* or text layout engine on top of FreeType.  However, they are pretty   */
-  /* handy for many other simple uses of the library.                      */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTGLYPH_H__
-#define __FTGLYPH_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    glyph_management                                                   */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Glyph Management                                                   */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Generic interface to manage individual glyph data.                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains definitions used to manage glyph data        */
-  /*    through generic FT_Glyph objects.  Each of them can contain a      */
-  /*    bitmap, a vector outline, or even images in other formats.         */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /* forward declaration to a private type */
-  typedef struct FT_Glyph_Class_  FT_Glyph_Class;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Glyph                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Handle to an object used to model generic glyph images.  It is a   */
-  /*    pointer to the @FT_GlyphRec structure and can contain a glyph      */
-  /*    bitmap or pointer.                                                 */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Glyph objects are not owned by the library.  You must thus release */
-  /*    them manually (through @FT_Done_Glyph) _before_ calling            */
-  /*    @FT_Done_FreeType.                                                 */
-  /*                                                                       */
-  typedef struct FT_GlyphRec_*  FT_Glyph;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_GlyphRec                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The root glyph structure contains a given glyph image plus its     */
-  /*    advance width in 16.16 fixed float format.                         */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    library :: A handle to the FreeType library object.                */
-  /*                                                                       */
-  /*    clazz   :: A pointer to the glyph's class.  Private.               */
-  /*                                                                       */
-  /*    format  :: The format of the glyph's image.                        */
-  /*                                                                       */
-  /*    advance :: A 16.16 vector that gives the glyph's advance width.    */
-  /*                                                                       */
-  typedef struct  FT_GlyphRec_
-  {
-    FT_Library             library;
-    const FT_Glyph_Class*  clazz;
-    FT_Glyph_Format        format;
-    FT_Vector              advance;
-
-  } FT_GlyphRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_BitmapGlyph                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to an object used to model a bitmap glyph image.  This is */
-  /*    a sub-class of @FT_Glyph, and a pointer to @FT_BitmapGlyphRec.     */
-  /*                                                                       */
-  typedef struct FT_BitmapGlyphRec_*  FT_BitmapGlyph;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_BitmapGlyphRec                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used for bitmap glyph images.  This really is a        */
-  /*    `sub-class' of `FT_GlyphRec'.                                      */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    root   :: The root FT_Glyph fields.                                */
-  /*                                                                       */
-  /*    left   :: The left-side bearing, i.e., the horizontal distance     */
-  /*              from the current pen position to the left border of the  */
-  /*              glyph bitmap.                                            */
-  /*                                                                       */
-  /*    top    :: The top-side bearing, i.e., the vertical distance from   */
-  /*              the current pen position to the top border of the glyph  */
-  /*              bitmap.  This distance is positive for upwards-y!        */
-  /*                                                                       */
-  /*    bitmap :: A descriptor for the bitmap.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    You can typecast FT_Glyph to FT_BitmapGlyph if you have            */
-  /*    glyph->format == FT_GLYPH_FORMAT_BITMAP.  This lets you access     */
-  /*    the bitmap's contents easily.                                      */
-  /*                                                                       */
-  /*    The corresponding pixel buffer is always owned by the BitmapGlyph  */
-  /*    and is thus created and destroyed with it.                         */
-  /*                                                                       */
-  typedef struct  FT_BitmapGlyphRec_
-  {
-    FT_GlyphRec  root;
-    FT_Int       left;
-    FT_Int       top;
-    FT_Bitmap    bitmap;
-
-  } FT_BitmapGlyphRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_OutlineGlyph                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to an object used to model an outline glyph image.  This  */
-  /*    is a sub-class of @FT_Glyph, and a pointer to @FT_OutlineGlyphRec. */
-  /*                                                                       */
-  typedef struct FT_OutlineGlyphRec_*  FT_OutlineGlyph;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_OutlineGlyphRec                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used for outline (vectorial) glyph images.  This       */
-  /*    really is a `sub-class' of `FT_GlyphRec'.                          */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    root    :: The root FT_Glyph fields.                               */
-  /*                                                                       */
-  /*    outline :: A descriptor for the outline.                           */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    You can typecast FT_Glyph to FT_OutlineGlyph if you have           */
-  /*    glyph->format == FT_GLYPH_FORMAT_OUTLINE.  This lets you access    */
-  /*    the outline's content easily.                                      */
-  /*                                                                       */
-  /*    As the outline is extracted from a glyph slot, its coordinates are */
-  /*    expressed normally in 26.6 pixels, unless the flag                 */
-  /*    FT_LOAD_NO_SCALE was used in FT_Load_Glyph() or FT_Load_Char().    */
-  /*                                                                       */
-  /*    The outline's tables are always owned by the object and are        */
-  /*    destroyed with it.                                                 */
-  /*                                                                       */
-  typedef struct  FT_OutlineGlyphRec_
-  {
-    FT_GlyphRec  root;
-    FT_Outline   outline;
-
-  } FT_OutlineGlyphRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Glyph                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function used to extract a glyph image from a slot.              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    slot   :: A handle to the source glyph slot.                       */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aglyph :: A handle to the glyph object.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Get_Glyph( FT_GlyphSlot  slot,
-                FT_Glyph     *aglyph );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Glyph_Copy                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function used to copy a glyph image.  Note that the created      */
-  /*    @FT_Glyph object must be released with @FT_Done_Glyph.             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    source :: A handle to the source glyph object.                     */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    target :: A handle to the target glyph object.  0 in case of       */
-  /*              error.                                                   */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Glyph_Copy( FT_Glyph   source,
-                 FT_Glyph  *target );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Glyph_Transform                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Transforms a glyph image if its format is scalable.                */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    glyph  :: A handle to the target glyph object.                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    matrix :: A pointer to a 2x2 matrix to apply.                      */
-  /*                                                                       */
-  /*    delta  :: A pointer to a 2d vector to apply.  Coordinates are      */
-  /*              expressed in 1/64th of a pixel.                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code (the glyph format is not scalable if it is     */
-  /*    not zero).                                                         */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The 2x2 transformation matrix is also applied to the glyph's       */
-  /*    advance vector.                                                    */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Glyph_Transform( FT_Glyph    glyph,
-                      FT_Matrix*  matrix,
-                      FT_Vector*  delta );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_Glyph_BBox_Mode                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The mode how the values of @FT_Glyph_Get_CBox are returned.        */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_GLYPH_BBOX_UNSCALED ::                                          */
-  /*      Return unscaled font units.                                      */
-  /*                                                                       */
-  /*    FT_GLYPH_BBOX_SUBPIXELS ::                                         */
-  /*      Return unfitted 26.6 coordinates.                                */
-  /*                                                                       */
-  /*    FT_GLYPH_BBOX_GRIDFIT ::                                           */
-  /*      Return grid-fitted 26.6 coordinates.                             */
-  /*                                                                       */
-  /*    FT_GLYPH_BBOX_TRUNCATE ::                                          */
-  /*      Return coordinates in integer pixels.                            */
-  /*                                                                       */
-  /*    FT_GLYPH_BBOX_PIXELS ::                                            */
-  /*      Return grid-fitted pixel coordinates.                            */
-  /*                                                                       */
-  typedef enum  FT_Glyph_BBox_Mode_
-  {
-    FT_GLYPH_BBOX_UNSCALED  = 0,
-    FT_GLYPH_BBOX_SUBPIXELS = 0,
-    FT_GLYPH_BBOX_GRIDFIT   = 1,
-    FT_GLYPH_BBOX_TRUNCATE  = 2,
-    FT_GLYPH_BBOX_PIXELS    = 3
-
-  } FT_Glyph_BBox_Mode;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    ft_glyph_bbox_xxx                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    These constants are deprecated.  Use the corresponding             */
-  /*    @FT_Glyph_BBox_Mode values instead.                                */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*   ft_glyph_bbox_unscaled  :: see @FT_GLYPH_BBOX_UNSCALED              */
-  /*   ft_glyph_bbox_subpixels :: see @FT_GLYPH_BBOX_SUBPIXELS             */
-  /*   ft_glyph_bbox_gridfit   :: see @FT_GLYPH_BBOX_GRIDFIT               */
-  /*   ft_glyph_bbox_truncate  :: see @FT_GLYPH_BBOX_TRUNCATE              */
-  /*   ft_glyph_bbox_pixels    :: see @FT_GLYPH_BBOX_PIXELS                */
-  /*                                                                       */
-#define ft_glyph_bbox_unscaled   FT_GLYPH_BBOX_UNSCALED
-#define ft_glyph_bbox_subpixels  FT_GLYPH_BBOX_SUBPIXELS
-#define ft_glyph_bbox_gridfit    FT_GLYPH_BBOX_GRIDFIT
-#define ft_glyph_bbox_truncate   FT_GLYPH_BBOX_TRUNCATE
-#define ft_glyph_bbox_pixels     FT_GLYPH_BBOX_PIXELS
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Glyph_Get_CBox                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Returns a glyph's `control box'.  The control box encloses all the */
-  /*    outline's points, including Bezier control points.  Though it      */
-  /*    coincides with the exact bounding box for most glyphs, it can be   */
-  /*    slightly larger in some situations (like when rotating an outline  */
-  /*    which contains Bezier outside arcs).                               */
-  /*                                                                       */
-  /*    Computing the control box is very fast, while getting the bounding */
-  /*    box can take much more time as it needs to walk over all segments  */
-  /*    and arcs in the outline.  To get the latter, you can use the       */
-  /*    `ftbbox' component which is dedicated to this single task.         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    glyph :: A handle to the source glyph object.                      */
-  /*                                                                       */
-  /*    mode  :: The mode which indicates how to interpret the returned    */
-  /*             bounding box values.                                      */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    acbox :: The glyph coordinate bounding box.  Coordinates are       */
-  /*             expressed in 1/64th of pixels if it is grid-fitted.       */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Coordinates are relative to the glyph origin, using the Y-upwards  */
-  /*    convention.                                                        */
-  /*                                                                       */
-  /*    If the glyph has been loaded with FT_LOAD_NO_SCALE, `bbox_mode'    */
-  /*    must be set to `FT_GLYPH_BBOX_UNSCALED' to get unscaled font       */
-  /*    units in 26.6 pixel format.  The value `FT_GLYPH_BBOX_SUBPIXELS'   */
-  /*    is another name for this constant.                                 */
-  /*                                                                       */
-  /*    Note that the maximum coordinates are exclusive, which means that  */
-  /*    one can compute the width and height of the glyph image (be it in  */
-  /*    integer or 26.6 pixels) as:                                        */
-  /*                                                                       */
-  /*      width  = bbox.xMax - bbox.xMin;                                  */
-  /*      height = bbox.yMax - bbox.yMin;                                  */
-  /*                                                                       */
-  /*    Note also that for 26.6 coordinates, if `bbox_mode' is set to      */
-  /*    `FT_GLYPH_BBOX_GRIDFIT', the coordinates will also be grid-fitted, */
-  /*    which corresponds to:                                              */
-  /*                                                                       */
-  /*      bbox.xMin = FLOOR(bbox.xMin);                                    */
-  /*      bbox.yMin = FLOOR(bbox.yMin);                                    */
-  /*      bbox.xMax = CEILING(bbox.xMax);                                  */
-  /*      bbox.yMax = CEILING(bbox.yMax);                                  */
-  /*                                                                       */
-  /*    To get the bbox in pixel coordinates, set `bbox_mode' to           */
-  /*    `FT_GLYPH_BBOX_TRUNCATE'.                                          */
-  /*                                                                       */
-  /*    To get the bbox in grid-fitted pixel coordinates, set `bbox_mode'  */
-  /*    to `FT_GLYPH_BBOX_PIXELS'.                                         */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Glyph_Get_CBox( FT_Glyph  glyph,
-                     FT_UInt   bbox_mode,
-                     FT_BBox  *acbox );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Glyph_To_Bitmap                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Converts a given glyph object to a bitmap glyph object.            */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    the_glyph   :: A pointer to a handle to the target glyph.          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    render_mode :: An enumeration that describe how the data is        */
-  /*                   rendered.                                           */
-  /*                                                                       */
-  /*    origin      :: A pointer to a vector used to translate the glyph   */
-  /*                   image before rendering.  Can be 0 (if no            */
-  /*                   translation).  The origin is expressed in           */
-  /*                   26.6 pixels.                                        */
-  /*                                                                       */
-  /*    destroy     :: A boolean that indicates that the original glyph    */
-  /*                   image should be destroyed by this function.  It is  */
-  /*                   never destroyed in case of error.                   */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The glyph image is translated with the `origin' vector before      */
-  /*    rendering.                                                         */
-  /*                                                                       */
-  /*    The first parameter is a pointer to a FT_Glyph handle, that will   */
-  /*    be replaced by this function.  Typically, you would use (omitting  */
-  /*    error handling):                                                   */
-  /*                                                                       */
-  /*                                                                       */
-  /*      {                                                                */
-  /*        FT_Glyph        glyph;                                         */
-  /*        FT_BitmapGlyph  glyph_bitmap;                                  */
-  /*                                                                       */
-  /*                                                                       */
-  /*        // load glyph                                                  */
-  /*        error = FT_Load_Char( face, glyph_index, FT_LOAD_DEFAUT );     */
-  /*                                                                       */
-  /*        // extract glyph image                                         */
-  /*        error = FT_Get_Glyph( face->glyph, &glyph );                   */
-  /*                                                                       */
-  /*        // convert to a bitmap (default render mode + destroy old)     */
-  /*        if ( glyph->format != FT_GLYPH_FORMAT_BITMAP )                 */
-  /*        {                                                              */
-  /*          error = FT_Glyph_To_Bitmap( &glyph, FT_RENDER_MODE_DEFAULT,  */
-  /*                                      0, 1 );                          */
-  /*          if ( error ) // glyph unchanged                              */
-  /*            ...                                                        */
-  /*        }                                                              */
-  /*                                                                       */
-  /*        // access bitmap content by typecasting                        */
-  /*        glyph_bitmap = (FT_BitmapGlyph)glyph;                          */
-  /*                                                                       */
-  /*        // do funny stuff with it, like blitting/drawing               */
-  /*        ...                                                            */
-  /*                                                                       */
-  /*        // discard glyph image (bitmap or not)                         */
-  /*        FT_Done_Glyph( glyph );                                        */
-  /*      }                                                                */
-  /*                                                                       */
-  /*                                                                       */
-  /*    This function does nothing if the glyph format isn't scalable.     */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Glyph_To_Bitmap( FT_Glyph*       the_glyph,
-                      FT_Render_Mode  render_mode,
-                      FT_Vector*      origin,
-                      FT_Bool         destroy );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Done_Glyph                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Destroys a given glyph.                                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    glyph :: A handle to the target glyph object.                      */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Done_Glyph( FT_Glyph  glyph );
-
-
-  /* other helpful functions */
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    computations                                                       */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Matrix_Multiply                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Performs the matrix operation `b = a*b'.                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    a :: A pointer to matrix `a'.                                      */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    b :: A pointer to matrix `b'.                                      */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The result is undefined if either `a' or `b' is zero.              */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Matrix_Multiply( const FT_Matrix*  a,
-                      FT_Matrix*  b );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Matrix_Invert                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Inverts a 2x2 matrix.  Returns an error if it can't be inverted.   */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    matrix :: A pointer to the target matrix.  Remains untouched in    */
-  /*              case of error.                                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Matrix_Invert( FT_Matrix*  matrix );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTGLYPH_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftgzip.h b/dependencies64/sfml/extlibs/headers/freetype/ftgzip.h
deleted file mode 100644 (file)
index ded96be..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftgzip.h                                                               */
-/*                                                                         */
-/*    Gzip-compressed stream support.                                      */
-/*                                                                         */
-/*  Copyright 2002, 2003, 2004 by                                          */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTGZIP_H__
-#define __FTGZIP_H__
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    gzip                                                               */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    GZIP Streams                                                       */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Using gzip-compressed font files.                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains the declaration of Gzip-specific functions.  */
-  /*                                                                       */
-  /*************************************************************************/
-
-
- /************************************************************************
-  *
-  * @function:
-  *   FT_Stream_OpenGzip
-  *
-  * @description:
-  *   Open a new stream to parse gzip-compressed font files.  This is
-  *   mainly used to support the compressed *.pcf.gz fonts that come
-  *   with XFree86.
-  *
-  * @input:
-  *   stream :: The target embedding stream.
-  *
-  *   source :: The source stream.
-  *
-  * @return:
-  *   FreeType error code.  0 means success.
-  *
-  * @note:
-  *   The source stream must be opened _before_ calling this function.
-  *
-  *   Calling the internal function FT_Stream_Close on the new stream will
-  *   *not* call FT_Stream_Close on the source stream.  None of the stream
-  *   objects will be released to the heap.
-  *
-  *   The stream implementation is very basic and resets the decompression
-  *   process each time seeking backwards is needed within the stream.
-  *
-  *   In certain builds of the library, gzip compression recognition is
-  *   automatically handled when calling @FT_New_Face or @FT_Open_Face.
-  *   This means that if no font driver is capable of handling the raw
-  *   compressed file, the library will try to open a gzipped stream from
-  *   it and re-open the face with it.
-  *
-  *   This function may return "FT_Err_Unimplemented" if your build of
-  *   FreeType was not compiled with zlib support.
-  */
-  FT_EXPORT( FT_Error )
-  FT_Stream_OpenGzip( FT_Stream  stream,
-                      FT_Stream  source );
-
- /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTGZIP_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftimage.h b/dependencies64/sfml/extlibs/headers/freetype/ftimage.h
deleted file mode 100644 (file)
index e92ace3..0000000
+++ /dev/null
@@ -1,1230 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftimage.h                                                              */
-/*                                                                         */
-/*    FreeType glyph image formats and default raster interface            */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004, 2005 by                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Note: A `raster' is simply a scan-line converter, used to render      */
-  /*       FT_Outlines into FT_Bitmaps.                                    */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTIMAGE_H__
-#define __FTIMAGE_H__
-
-
-/* _STANDALONE_ is from ftgrays.c */
-#ifndef _STANDALONE_
-#include <ft2build.h>
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    basic_types                                                        */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Pos                                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The type FT_Pos is a 32-bit integer used to store vectorial        */
-  /*    coordinates.  Depending on the context, these can represent        */
-  /*    distances in integer font units, or 16,16, or 26.6 fixed float     */
-  /*    pixel coordinates.                                                 */
-  /*                                                                       */
-  typedef signed long  FT_Pos;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Vector                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple structure used to store a 2D vector; coordinates are of   */
-  /*    the FT_Pos type.                                                   */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    x :: The horizontal coordinate.                                    */
-  /*    y :: The vertical coordinate.                                      */
-  /*                                                                       */
-  typedef struct  FT_Vector_
-  {
-    FT_Pos  x;
-    FT_Pos  y;
-
-  } FT_Vector;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_BBox                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to hold an outline's bounding box, i.e., the      */
-  /*    coordinates of its extrema in the horizontal and vertical          */
-  /*    directions.                                                        */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    xMin :: The horizontal minimum (left-most).                        */
-  /*                                                                       */
-  /*    yMin :: The vertical minimum (bottom-most).                        */
-  /*                                                                       */
-  /*    xMax :: The horizontal maximum (right-most).                       */
-  /*                                                                       */
-  /*    yMax :: The vertical maximum (top-most).                           */
-  /*                                                                       */
-  typedef struct  FT_BBox_
-  {
-    FT_Pos  xMin, yMin;
-    FT_Pos  xMax, yMax;
-
-  } FT_BBox;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_Pixel_Mode                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An enumeration type used to describe the format of pixels in a     */
-  /*    given bitmap.  Note that additional formats may be added in the    */
-  /*    future.                                                            */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_PIXEL_MODE_NONE ::                                              */
-  /*      Value 0 is reserved.                                             */
-  /*                                                                       */
-  /*    FT_PIXEL_MODE_MONO ::                                              */
-  /*      A monochrome bitmap, using 1 bit per pixel.  Note that pixels    */
-  /*      are stored in most-significant order (MSB), which means that     */
-  /*      the left-most pixel in a byte has value 128.                     */
-  /*                                                                       */
-  /*    FT_PIXEL_MODE_GRAY ::                                              */
-  /*      An 8-bit bitmap, generally used to represent anti-aliased glyph  */
-  /*      images.  Each pixel is stored in one byte.  Note that the number */
-  /*      of value "gray" levels is stored in the `num_bytes' field of     */
-  /*      the @FT_Bitmap structure (it generally is 256).                  */
-  /*                                                                       */
-  /*    FT_PIXEL_MODE_GRAY2 ::                                             */
-  /*      A 2-bit/pixel bitmap, used to represent embedded anti-aliased    */
-  /*      bitmaps in font files according to the OpenType specification.   */
-  /*      We haven't found a single font using this format, however.       */
-  /*                                                                       */
-  /*    FT_PIXEL_MODE_GRAY4 ::                                             */
-  /*      A 4-bit/pixel bitmap, used to represent embedded anti-aliased    */
-  /*      bitmaps in font files according to the OpenType specification.   */
-  /*      We haven't found a single font using this format, however.       */
-  /*                                                                       */
-  /*    FT_PIXEL_MODE_LCD ::                                               */
-  /*      An 8-bit bitmap, used to represent RGB or BGR decimated glyph    */
-  /*      images used for display on LCD displays; the bitmap's width is   */
-  /*      three times wider than the original glyph image.  See also       */
-  /*      @FT_RENDER_MODE_LCD.                                             */
-  /*                                                                       */
-  /*    FT_PIXEL_MODE_LCD_V ::                                             */
-  /*      An 8-bit bitmap, used to represent RGB or BGR decimated glyph    */
-  /*      images used for display on rotated LCD displays; the bitmap's    */
-  /*      height is three times taller than the original glyph image.      */
-  /*      See also @FT_RENDER_MODE_LCD_V.                                  */
-  /*                                                                       */
-  typedef enum  FT_Pixel_Mode_
-  {
-    FT_PIXEL_MODE_NONE = 0,
-    FT_PIXEL_MODE_MONO,
-    FT_PIXEL_MODE_GRAY,
-    FT_PIXEL_MODE_GRAY2,
-    FT_PIXEL_MODE_GRAY4,
-    FT_PIXEL_MODE_LCD,
-    FT_PIXEL_MODE_LCD_V,
-
-    FT_PIXEL_MODE_MAX      /* do not remove */
-
-  } FT_Pixel_Mode;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    ft_pixel_mode_xxx                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A list of deprecated constants.  Use the corresponding             */
-  /*    @FT_Pixel_Mode values instead.                                     */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    ft_pixel_mode_none  :: see @FT_PIXEL_MODE_NONE                     */
-  /*    ft_pixel_mode_mono  :: see @FT_PIXEL_MODE_MONO                     */
-  /*    ft_pixel_mode_grays :: see @FT_PIXEL_MODE_GRAY                     */
-  /*    ft_pixel_mode_pal2  :: see @FT_PIXEL_MODE_GRAY2                    */
-  /*    ft_pixel_mode_pal4  :: see @FT_PIXEL_MODE_GRAY4                    */
-  /*                                                                       */
-#define ft_pixel_mode_none   FT_PIXEL_MODE_NONE
-#define ft_pixel_mode_mono   FT_PIXEL_MODE_MONO
-#define ft_pixel_mode_grays  FT_PIXEL_MODE_GRAY
-#define ft_pixel_mode_pal2   FT_PIXEL_MODE_GRAY2
-#define ft_pixel_mode_pal4   FT_PIXEL_MODE_GRAY4
-
- /* */
-
-#if 0
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_Palette_Mode                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    THIS TYPE IS DEPRECATED.  DO NOT USE IT!                           */
-  /*                                                                       */
-  /*    An enumeration type used to describe the format of a bitmap        */
-  /*    palette, used with ft_pixel_mode_pal4 and ft_pixel_mode_pal8.      */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    ft_palette_mode_rgb  :: The palette is an array of 3-bytes RGB     */
-  /*                            records.                                   */
-  /*                                                                       */
-  /*    ft_palette_mode_rgba :: The palette is an array of 4-bytes RGBA    */
-  /*                            records.                                   */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    As ft_pixel_mode_pal2, pal4 and pal8 are currently unused by       */
-  /*    FreeType, these types are not handled by the library itself.       */
-  /*                                                                       */
-  typedef enum  FT_Palette_Mode_
-  {
-    ft_palette_mode_rgb = 0,
-    ft_palette_mode_rgba,
-
-    ft_palettte_mode_max   /* do not remove */
-
-  } FT_Palette_Mode;
-
-  /* */
-
-#endif
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Bitmap                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to describe a bitmap or pixmap to the raster.     */
-  /*    Note that we now manage pixmaps of various depths through the      */
-  /*    `pixel_mode' field.                                                */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    rows         :: The number of bitmap rows.                         */
-  /*                                                                       */
-  /*    width        :: The number of pixels in bitmap row.                */
-  /*                                                                       */
-  /*    pitch        :: The pitch's absolute value is the number of bytes  */
-  /*                    taken by one bitmap row, including padding.        */
-  /*                    However, the pitch is positive when the bitmap has */
-  /*                    a `down' flow, and negative when it has an `up'    */
-  /*                    flow.  In all cases, the pitch is an offset to add */
-  /*                    to a bitmap pointer in order to go down one row.   */
-  /*                                                                       */
-  /*    buffer       :: A typeless pointer to the bitmap buffer.  This     */
-  /*                    value should be aligned on 32-bit boundaries in    */
-  /*                    most cases.                                        */
-  /*                                                                       */
-  /*    num_grays    :: This field is only used with                       */
-  /*                    `FT_PIXEL_MODE_GRAY'; it gives the number of gray  */
-  /*                    levels used in the bitmap.                         */
-  /*                                                                       */
-  /*    pixel_mode   :: The pixel mode, i.e., how pixel bits are stored.   */
-  /*                    See @FT_Pixel_Mode for possible values.            */
-  /*                                                                       */
-  /*    palette_mode :: This field is intended for paletted pixel modes;   */
-  /*                    it indicates how the palette is stored.  Not       */
-  /*                    used currently.                                    */
-  /*                                                                       */
-  /*    palette      :: A typeless pointer to the bitmap palette; this     */
-  /*                    field is intended for paletted pixel modes.  Not   */
-  /*                    used currently.                                    */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*   For now, the only pixel modes supported by FreeType are mono and    */
-  /*   grays.  However, drivers might be added in the future to support    */
-  /*   more `colorful' options.                                            */
-  /*                                                                       */
-  typedef struct  FT_Bitmap_
-  {
-    int             rows;
-    int             width;
-    int             pitch;
-    unsigned char*  buffer;
-    short           num_grays;
-    char            pixel_mode;
-    char            palette_mode;
-    void*           palette;
-
-  } FT_Bitmap;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    outline_processing                                                 */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Outline                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This structure is used to describe an outline to the scan-line     */
-  /*    converter.                                                         */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    n_contours :: The number of contours in the outline.               */
-  /*                                                                       */
-  /*    n_points   :: The number of points in the outline.                 */
-  /*                                                                       */
-  /*    points     :: A pointer to an array of `n_points' FT_Vector        */
-  /*                  elements, giving the outline's point coordinates.    */
-  /*                                                                       */
-  /*    tags       :: A pointer to an array of `n_points' chars, giving    */
-  /*                  each outline point's type.  If bit 0 is unset, the   */
-  /*                  point is `off' the curve, i.e. a Bezier control      */
-  /*                  point, while it is `on' when set.                    */
-  /*                                                                       */
-  /*                  Bit 1 is meaningful for `off' points only.  If set,  */
-  /*                  it indicates a third-order Bezier arc control point; */
-  /*                  and a second-order control point if unset.           */
-  /*                                                                       */
-  /*    contours   :: An array of `n_contours' shorts, giving the end      */
-  /*                  point of each contour within the outline.  For       */
-  /*                  example, the first contour is defined by the points  */
-  /*                  `0' to `contours[0]', the second one is defined by   */
-  /*                  the points `contours[0]+1' to `contours[1]', etc.    */
-  /*                                                                       */
-  /*    flags      :: A set of bit flags used to characterize the outline  */
-  /*                  and give hints to the scan-converter and hinter on   */
-  /*                  how to convert/grid-fit it.  See FT_Outline_Flags.   */
-  /*                                                                       */
-  typedef struct  FT_Outline_
-  {
-    short       n_contours;      /* number of contours in glyph        */
-    short       n_points;        /* number of points in the glyph      */
-
-    FT_Vector*  points;          /* the outline's points               */
-    char*       tags;            /* the points flags                   */
-    short*      contours;        /* the contour end points             */
-
-    int         flags;           /* outline masks                      */
-
-  } FT_Outline;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*   FT_OUTLINE_FLAGS                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A list of bit-field constants use for the flags in an outline's    */
-  /*    `flags' field.                                                     */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_OUTLINE_NONE           :: Value 0 is reserved.                  */
-  /*                                                                       */
-  /*    FT_OUTLINE_OWNER          :: If set, this flag indicates that the  */
-  /*                                 outline's field arrays (i.e.          */
-  /*                                 `points', `flags' & `contours') are   */
-  /*                                 `owned' by the outline object, and    */
-  /*                                 should thus be freed when it is       */
-  /*                                 destroyed.                            */
-  /*                                                                       */
-  /*   FT_OUTLINE_EVEN_ODD_FILL   :: By default, outlines are filled using */
-  /*                                 the non-zero winding rule.  If set to */
-  /*                                 1, the outline will be filled using   */
-  /*                                 the even-odd fill rule (only works    */
-  /*                                 with the smooth raster).              */
-  /*                                                                       */
-  /*   FT_OUTLINE_REVERSE_FILL    :: By default, outside contours of an    */
-  /*                                 outline are oriented in clock-wise    */
-  /*                                 direction, as defined in the TrueType */
-  /*                                 specification.  This flag is set if   */
-  /*                                 the outline uses the opposite         */
-  /*                                 direction (typically for Type 1       */
-  /*                                 fonts).  This flag is ignored by the  */
-  /*                                 scan-converter.  However, it is very  */
-  /*                                 important for the auto-hinter.        */
-  /*                                                                       */
-  /*   FT_OUTLINE_IGNORE_DROPOUTS :: By default, the scan converter will   */
-  /*                                 try to detect drop-outs in an outline */
-  /*                                 and correct the glyph bitmap to       */
-  /*                                 ensure consistent shape continuity.   */
-  /*                                 If set, this flag hints the scan-line */
-  /*                                 converter to ignore such cases.       */
-  /*                                                                       */
-  /*   FT_OUTLINE_HIGH_PRECISION  :: This flag indicates that the          */
-  /*                                 scan-line converter should try to     */
-  /*                                 convert this outline to bitmaps with  */
-  /*                                 the highest possible quality.  It is  */
-  /*                                 typically set for small character     */
-  /*                                 sizes.  Note that this is only a      */
-  /*                                 hint, that might be completely        */
-  /*                                 ignored by a given scan-converter.    */
-  /*                                                                       */
-  /*   FT_OUTLINE_SINGLE_PASS     :: This flag is set to force a given     */
-  /*                                 scan-converter to only use a single   */
-  /*                                 pass over the outline to render a     */
-  /*                                 bitmap glyph image.  Normally, it is  */
-  /*                                 set for very large character sizes.   */
-  /*                                 It is only a hint, that might be      */
-  /*                                 completely ignored by a given         */
-  /*                                 scan-converter.                       */
-  /*                                                                       */
-#define FT_OUTLINE_NONE             0x0
-#define FT_OUTLINE_OWNER            0x1
-#define FT_OUTLINE_EVEN_ODD_FILL    0x2
-#define FT_OUTLINE_REVERSE_FILL     0x4
-#define FT_OUTLINE_IGNORE_DROPOUTS  0x8
-
-#define FT_OUTLINE_HIGH_PRECISION   0x100
-#define FT_OUTLINE_SINGLE_PASS      0x200
-
-
- /*************************************************************************
-  *
-  * @enum:
-  *   ft_outline_flags
-  *
-  * @description:
-  *   These constants are deprecated.  Please use the corresponding
-  *   @FT_OUTLINE_FLAGS values.
-  *
-  * @values:
-  *   ft_outline_none            :: See @FT_OUTLINE_NONE.
-  *   ft_outline_owner           :: See @FT_OUTLINE_OWNER.
-  *   ft_outline_even_odd_fill   :: See @FT_OUTLINE_EVEN_ODD_FILL.
-  *   ft_outline_reverse_fill    :: See @FT_OUTLINE_REVERSE_FILL.
-  *   ft_outline_ignore_dropouts :: See @FT_OUTLINE_IGNORE_DROPOUTS.
-  *   ft_outline_high_precision  :: See @FT_OUTLINE_HIGH_PRECISION.
-  *   ft_outline_single_pass     :: See @FT_OUTLINE_SINGLE_PASS.
-  */
-#define ft_outline_none             FT_OUTLINE_NONE
-#define ft_outline_owner            FT_OUTLINE_OWNER
-#define ft_outline_even_odd_fill    FT_OUTLINE_EVEN_ODD_FILL
-#define ft_outline_reverse_fill     FT_OUTLINE_REVERSE_FILL
-#define ft_outline_ignore_dropouts  FT_OUTLINE_IGNORE_DROPOUTS
-#define ft_outline_high_precision   FT_OUTLINE_HIGH_PRECISION
-#define ft_outline_single_pass      FT_OUTLINE_SINGLE_PASS
-
-  /* */
-
-#define FT_CURVE_TAG( flag )  ( flag & 3 )
-
-#define FT_CURVE_TAG_ON           1
-#define FT_CURVE_TAG_CONIC        0
-#define FT_CURVE_TAG_CUBIC        2
-
-#define FT_CURVE_TAG_TOUCH_X      8  /* reserved for the TrueType hinter */
-#define FT_CURVE_TAG_TOUCH_Y     16  /* reserved for the TrueType hinter */
-
-#define FT_CURVE_TAG_TOUCH_BOTH  ( FT_CURVE_TAG_TOUCH_X | \
-                                   FT_CURVE_TAG_TOUCH_Y )
-
-#define  FT_Curve_Tag_On       FT_CURVE_TAG_ON
-#define  FT_Curve_Tag_Conic    FT_CURVE_TAG_CONIC
-#define  FT_Curve_Tag_Cubic    FT_CURVE_TAG_CUBIC
-#define  FT_Curve_Tag_Touch_X  FT_CURVE_TAG_TOUCH_X
-#define  FT_Curve_Tag_Touch_Y  FT_CURVE_TAG_TOUCH_Y
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Outline_MoveToFunc                                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function pointer type used to describe the signature of a `move  */
-  /*    to' function during outline walking/decomposition.                 */
-  /*                                                                       */
-  /*    A `move to' is emitted to start a new contour in an outline.       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    to   :: A pointer to the target point of the `move to'.            */
-  /*                                                                       */
-  /*    user :: A typeless pointer which is passed from the caller of the  */
-  /*            decomposition function.                                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Error code.  0 means success.                                      */
-  /*                                                                       */
-  typedef int
-  (*FT_Outline_MoveToFunc)( FT_Vector*  to,
-                            void*       user );
-
-#define FT_Outline_MoveTo_Func  FT_Outline_MoveToFunc
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Outline_LineToFunc                                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function pointer type used to describe the signature of a `line  */
-  /*    to' function during outline walking/decomposition.                 */
-  /*                                                                       */
-  /*    A `line to' is emitted to indicate a segment in the outline.       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    to   :: A pointer to the target point of the `line to'.            */
-  /*                                                                       */
-  /*    user :: A typeless pointer which is passed from the caller of the  */
-  /*            decomposition function.                                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Error code.  0 means success.                                      */
-  /*                                                                       */
-  typedef int
-  (*FT_Outline_LineToFunc)( FT_Vector*  to,
-                            void*       user );
-
-#define  FT_Outline_LineTo_Func  FT_Outline_LineToFunc
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Outline_ConicToFunc                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function pointer type use to describe the signature of a `conic  */
-  /*    to' function during outline walking/decomposition.                 */
-  /*                                                                       */
-  /*    A `conic to' is emitted to indicate a second-order Bezier arc in   */
-  /*    the outline.                                                       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    control :: An intermediate control point between the last position */
-  /*               and the new target in `to'.                             */
-  /*                                                                       */
-  /*    to      :: A pointer to the target end point of the conic arc.     */
-  /*                                                                       */
-  /*    user    :: A typeless pointer which is passed from the caller of   */
-  /*               the decomposition function.                             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Error code.  0 means success.                                      */
-  /*                                                                       */
-  typedef int
-  (*FT_Outline_ConicToFunc)( FT_Vector*  control,
-                             FT_Vector*  to,
-                             void*       user );
-
-#define  FT_Outline_ConicTo_Func  FT_Outline_ConicToFunc
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Outline_CubicToFunc                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function pointer type used to describe the signature of a `cubic */
-  /*    to' function during outline walking/decomposition.                 */
-  /*                                                                       */
-  /*    A `cubic to' is emitted to indicate a third-order Bezier arc.      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    control1 :: A pointer to the first Bezier control point.           */
-  /*                                                                       */
-  /*    control2 :: A pointer to the second Bezier control point.          */
-  /*                                                                       */
-  /*    to       :: A pointer to the target end point.                     */
-  /*                                                                       */
-  /*    user     :: A typeless pointer which is passed from the caller of  */
-  /*                the decomposition function.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Error code.  0 means success.                                      */
-  /*                                                                       */
-  typedef int
-  (*FT_Outline_CubicToFunc)( FT_Vector*  control1,
-                             FT_Vector*  control2,
-                             FT_Vector*  to,
-                             void*       user );
-
-#define  FT_Outline_CubicTo_Func  FT_Outline_CubicToFunc
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Outline_Funcs                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure to hold various function pointers used during outline  */
-  /*    decomposition in order to emit segments, conic, and cubic Beziers, */
-  /*    as well as `move to' and `close to' operations.                    */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    move_to  :: The `move to' emitter.                                 */
-  /*                                                                       */
-  /*    line_to  :: The segment emitter.                                   */
-  /*                                                                       */
-  /*    conic_to :: The second-order Bezier arc emitter.                   */
-  /*                                                                       */
-  /*    cubic_to :: The third-order Bezier arc emitter.                    */
-  /*                                                                       */
-  /*    shift    :: The shift that is applied to coordinates before they   */
-  /*                are sent to the emitter.                               */
-  /*                                                                       */
-  /*    delta    :: The delta that is applied to coordinates before they   */
-  /*                are sent to the emitter, but after the shift.          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The point coordinates sent to the emitters are the transformed     */
-  /*    version of the original coordinates (this is important for high    */
-  /*    accuracy during scan-conversion).  The transformation is simple:   */
-  /*                                                                       */
-  /*      x' = (x << shift) - delta                                        */
-  /*      y' = (x << shift) - delta                                        */
-  /*                                                                       */
-  /*    Set the value of `shift' and `delta' to 0 to get the original      */
-  /*    point coordinates.                                                 */
-  /*                                                                       */
-  typedef struct  FT_Outline_Funcs_
-  {
-    FT_Outline_MoveToFunc   move_to;
-    FT_Outline_LineToFunc   line_to;
-    FT_Outline_ConicToFunc  conic_to;
-    FT_Outline_CubicToFunc  cubic_to;
-
-    int                     shift;
-    FT_Pos                  delta;
-
-  } FT_Outline_Funcs;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    basic_types                                                        */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Macro>                                                               */
-  /*    FT_IMAGE_TAG                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This macro converts four letter tags into an unsigned long.        */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Since many 16bit compilers don't like 32bit enumerations, you      */
-  /*    should redefine this macro in case of problems to something like   */
-  /*    this:                                                              */
-  /*                                                                       */
-  /*      #define FT_IMAGE_TAG( value, _x1, _x2, _x3, _x4 )  value         */
-  /*                                                                       */
-  /*    to get a simple enumeration without assigning special numbers.     */
-  /*                                                                       */
-#ifndef FT_IMAGE_TAG
-#define FT_IMAGE_TAG( value, _x1, _x2, _x3, _x4 )  \
-          value = ( ( (unsigned long)_x1 << 24 ) | \
-                    ( (unsigned long)_x2 << 16 ) | \
-                    ( (unsigned long)_x3 << 8  ) | \
-                      (unsigned long)_x4         )
-#endif /* FT_IMAGE_TAG */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_Glyph_Format                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An enumeration type used to describe the format of a given glyph   */
-  /*    image.  Note that this version of FreeType only supports two image */
-  /*    formats, even though future font drivers will be able to register  */
-  /*    their own format.                                                  */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_GLYPH_FORMAT_NONE ::                                            */
-  /*      The value 0 is reserved and does describe a glyph format.        */
-  /*                                                                       */
-  /*    FT_GLYPH_FORMAT_COMPOSITE ::                                       */
-  /*      The glyph image is a composite of several other images.  This    */
-  /*      format is _only_ used with @FT_LOAD_NO_RECURSE, and is used to   */
-  /*      report compound glyphs (like accented characters).               */
-  /*                                                                       */
-  /*    FT_GLYPH_FORMAT_BITMAP ::                                          */
-  /*      The glyph image is a bitmap, and can be described as an          */
-  /*      @FT_Bitmap.  You generally need to access the `bitmap' field of  */
-  /*      the @FT_GlyphSlotRec structure to read it.                       */
-  /*                                                                       */
-  /*    FT_GLYPH_FORMAT_OUTLINE ::                                         */
-  /*      The glyph image is a vertorial outline made of line segments     */
-  /*      and Bezier arcs; it can be described as an @FT_Outline; you      */
-  /*      generally want to access the `outline' field of the              */
-  /*      @FT_GlyphSlotRec structure to read it.                           */
-  /*                                                                       */
-  /*    FT_GLYPH_FORMAT_PLOTTER ::                                         */
-  /*      The glyph image is a vectorial path with no inside/outside       */
-  /*      contours.  Some Type 1 fonts, like those in the Hershey family,  */
-  /*      contain glyphs in this format.  These are described as           */
-  /*      @FT_Outline, but FreeType isn't currently capable of rendering   */
-  /*      them correctly.                                                  */
-  /*                                                                       */
-  typedef enum  FT_Glyph_Format_
-  {
-    FT_IMAGE_TAG( FT_GLYPH_FORMAT_NONE, 0, 0, 0, 0 ),
-
-    FT_IMAGE_TAG( FT_GLYPH_FORMAT_COMPOSITE, 'c', 'o', 'm', 'p' ),
-    FT_IMAGE_TAG( FT_GLYPH_FORMAT_BITMAP,    'b', 'i', 't', 's' ),
-    FT_IMAGE_TAG( FT_GLYPH_FORMAT_OUTLINE,   'o', 'u', 't', 'l' ),
-    FT_IMAGE_TAG( FT_GLYPH_FORMAT_PLOTTER,   'p', 'l', 'o', 't' )
-
-  } FT_Glyph_Format;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    ft_glyph_format_xxx                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A list of decprecated constants.  Use the corresponding            */
-  /*    @FT_Glyph_Format values instead.                                   */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    ft_glyph_format_none      :: see @FT_GLYPH_FORMAT_NONE             */
-  /*    ft_glyph_format_composite :: see @FT_GLYPH_FORMAT_COMPOSITE        */
-  /*    ft_glyph_format_bitmap    :: see @FT_GLYPH_FORMAT_BITMAP           */
-  /*    ft_glyph_format_outline   :: see @FT_GLYPH_FORMAT_OUTLINE          */
-  /*    ft_glyph_format_plotter   :: see @FT_GLYPH_FORMAT_PLOTTER          */
-  /*                                                                       */
-#define ft_glyph_format_none       FT_GLYPH_FORMAT_NONE
-#define ft_glyph_format_composite  FT_GLYPH_FORMAT_COMPOSITE
-#define ft_glyph_format_bitmap     FT_GLYPH_FORMAT_BITMAP
-#define ft_glyph_format_outline    FT_GLYPH_FORMAT_OUTLINE
-#define ft_glyph_format_plotter    FT_GLYPH_FORMAT_PLOTTER
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****            R A S T E R   D E F I N I T I O N S                *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* A raster is a scan converter, in charge of rendering an outline into  */
-  /* a a bitmap.  This section contains the public API for rasters.        */
-  /*                                                                       */
-  /* Note that in FreeType 2, all rasters are now encapsulated within      */
-  /* specific modules called `renderers'.  See `freetype/ftrender.h' for   */
-  /* more details on renderers.                                            */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    raster                                                             */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Scanline Converter                                                 */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    How vectorial outlines are converted into bitmaps and pixmaps.     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains technical definitions.                       */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Raster                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle (pointer) to a raster object.  Each object can be used    */
-  /*    independently to convert an outline into a bitmap or pixmap.       */
-  /*                                                                       */
-  typedef struct FT_RasterRec_*  FT_Raster;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Span                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a single span of gray (or black) pixels  */
-  /*    when rendering a monochrome or anti-aliased bitmap.                */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    x        :: The span's horizontal start position.                  */
-  /*                                                                       */
-  /*    len      :: The span's length in pixels.                           */
-  /*                                                                       */
-  /*    coverage :: The span color/coverage, ranging from 0 (background)   */
-  /*                to 255 (foreground).  Only used for anti-aliased       */
-  /*                rendering.                                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This structure is used by the span drawing callback type named     */
-  /*    FT_SpanFunc which takes the y-coordinate of the span as a          */
-  /*    a parameter.                                                       */
-  /*                                                                       */
-  /*    The coverage value is always between 0 and 255, even if the number */
-  /*    of gray levels have been set through FT_Set_Gray_Levels().         */
-  /*                                                                       */
-  typedef struct  FT_Span_
-  {
-    short           x;
-    unsigned short  len;
-    unsigned char   coverage;
-
-  } FT_Span;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_SpanFunc                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function used as a call-back by the anti-aliased renderer in     */
-  /*    order to let client applications draw themselves the gray pixel    */
-  /*    spans on each scan line.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    y     :: The scanline's y-coordinate.                              */
-  /*                                                                       */
-  /*    count :: The number of spans to draw on this scanline.             */
-  /*                                                                       */
-  /*    spans :: A table of `count' spans to draw on the scanline.         */
-  /*                                                                       */
-  /*    user  :: User-supplied data that is passed to the callback.        */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This callback allows client applications to directly render the    */
-  /*    gray spans of the anti-aliased bitmap to any kind of surfaces.     */
-  /*                                                                       */
-  /*    This can be used to write anti-aliased outlines directly to a      */
-  /*    given background bitmap, and even perform translucency.            */
-  /*                                                                       */
-  /*    Note that the `count' field cannot be greater than a fixed value   */
-  /*    defined by the FT_MAX_GRAY_SPANS configuration macro in            */
-  /*    ftoption.h.  By default, this value is set to 32, which means that */
-  /*    if there are more than 32 spans on a given scanline, the callback  */
-  /*    will be called several times with the same `y' parameter in order  */
-  /*    to draw all callbacks.                                             */
-  /*                                                                       */
-  /*    Otherwise, the callback is only called once per scan-line, and     */
-  /*    only for those scanlines that do have `gray' pixels on them.       */
-  /*                                                                       */
-  typedef void
-  (*FT_SpanFunc)( int       y,
-                  int       count,
-                  FT_Span*  spans,
-                  void*     user );
-
-#define FT_Raster_Span_Func   FT_SpanFunc
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Raster_BitTest_Func                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    THIS TYPE IS DEPRECATED.  DO NOT USE IT.                           */
-  /*                                                                       */
-  /*    A function used as a call-back by the monochrome scan-converter    */
-  /*    to test whether a given target pixel is already set to the drawing */
-  /*    `color'.  These tests are crucial to implement drop-out control    */
-  /*    per-se the TrueType spec.                                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    y     :: The pixel's y-coordinate.                                 */
-  /*                                                                       */
-  /*    x     :: The pixel's x-coordinate.                                 */
-  /*                                                                       */
-  /*    user  :: User-supplied data that is passed to the callback.        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*   1 if the pixel is `set', 0 otherwise.                               */
-  /*                                                                       */
-  typedef int
-  (*FT_Raster_BitTest_Func)( int    y,
-                             int    x,
-                             void*  user );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Raster_BitSet_Func                                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    THIS TYPE IS DEPRECATED.  DO NOT USE IT.                           */
-  /*                                                                       */
-  /*    A function used as a call-back by the monochrome scan-converter    */
-  /*    to set an individual target pixel.  This is crucial to implement   */
-  /*    drop-out control according to the TrueType specification.          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    y     :: The pixel's y-coordinate.                                 */
-  /*                                                                       */
-  /*    x     :: The pixel's x-coordinate.                                 */
-  /*                                                                       */
-  /*    user  :: User-supplied data that is passed to the callback.        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    1 if the pixel is `set', 0 otherwise.                              */
-  /*                                                                       */
-  typedef void
-  (*FT_Raster_BitSet_Func)( int    y,
-                            int    x,
-                            void*  user );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_RASTER_FLAG_XXX                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A list of bit flag constants as used in the `flags' field of a     */
-  /*    @FT_Raster_Params structure.                                       */
-  /*                                                                       */
-  /* <Values>                                                              */
-  /*    FT_RASTER_FLAG_DEFAULT :: This value is 0.                         */
-  /*                                                                       */
-  /*    FT_RASTER_FLAG_AA      :: This flag is set to indicate that an     */
-  /*                              anti-aliased glyph image should be       */
-  /*                              generated.  Otherwise, it will be        */
-  /*                              monochrome (1-bit).                      */
-  /*                                                                       */
-  /*    FT_RASTER_FLAG_DIRECT  :: This flag is set to indicate direct      */
-  /*                              rendering.  In this mode, client         */
-  /*                              applications must provide their own span */
-  /*                              callback.  This lets them directly       */
-  /*                              draw or compose over an existing bitmap. */
-  /*                              If this bit is not set, the target       */
-  /*                              pixmap's buffer _must_ be zeroed before  */
-  /*                              rendering.                               */
-  /*                                                                       */
-  /*                              Note that for now, direct rendering is   */
-  /*                              only possible with anti-aliased glyphs.  */
-  /*                                                                       */
-  /*    FT_RASTER_FLAG_CLIP    :: This flag is only used in direct         */
-  /*                              rendering mode.  If set, the output will */
-  /*                              be clipped to a box specified in the     */
-  /*                              "clip_box" field of the FT_Raster_Params */
-  /*                              structure.                               */
-  /*                                                                       */
-  /*                              Note that by default, the glyph bitmap   */
-  /*                              is clipped to the target pixmap, except  */
-  /*                              in direct rendering mode where all spans */
-  /*                              are generated if no clipping box is set. */
-  /*                                                                       */
-#define FT_RASTER_FLAG_DEFAULT  0x0
-#define FT_RASTER_FLAG_AA       0x1
-#define FT_RASTER_FLAG_DIRECT   0x2
-#define FT_RASTER_FLAG_CLIP     0x4
-
-  /* deprecated */
-#define ft_raster_flag_default  FT_RASTER_FLAG_DEFAULT
-#define ft_raster_flag_aa       FT_RASTER_FLAG_AA
-#define ft_raster_flag_direct   FT_RASTER_FLAG_DIRECT
-#define ft_raster_flag_clip     FT_RASTER_FLAG_CLIP
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Raster_Params                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure to hold the arguments used by a raster's render        */
-  /*    function.                                                          */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    target      :: The target bitmap.                                  */
-  /*                                                                       */
-  /*    source      :: A pointer to the source glyph image (e.g. an        */
-  /*                   FT_Outline).                                        */
-  /*                                                                       */
-  /*    flags       :: The rendering flags.                                */
-  /*                                                                       */
-  /*    gray_spans  :: The gray span drawing callback.                     */
-  /*                                                                       */
-  /*    black_spans :: The black span drawing callback.                    */
-  /*                                                                       */
-  /*    bit_test    :: The bit test callback.  UNIMPLEMENTED!              */
-  /*                                                                       */
-  /*    bit_set     :: The bit set callback.  UNIMPLEMENTED!               */
-  /*                                                                       */
-  /*    user        :: User-supplied data that is passed to each drawing   */
-  /*                   callback.                                           */
-  /*                                                                       */
-  /*    clip_box    :: An optional clipping box.  It is only used in       */
-  /*                   direct rendering mode.  Note that coordinates here  */
-  /*                   should be expressed in _integer_ pixels (and not in */
-  /*                   26.6 fixed-point units).                            */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    An anti-aliased glyph bitmap is drawn if the FT_RASTER_FLAG_AA bit */
-  /*    flag is set in the `flags' field, otherwise a monochrome bitmap    */
-  /*    will be generated.                                                 */
-  /*                                                                       */
-  /*    If the FT_RASTER_FLAG_DIRECT bit flag is set in `flags', the       */
-  /*    raster will call the `gray_spans' callback to draw gray pixel      */
-  /*    spans, in the case of an aa glyph bitmap, it will call             */
-  /*    `black_spans', and `bit_test' and `bit_set' in the case of a       */
-  /*    monochrome bitmap.  This allows direct composition over a          */
-  /*    pre-existing bitmap through user-provided callbacks to perform the */
-  /*    span drawing/composition.                                          */
-  /*                                                                       */
-  /*    Note that the `bit_test' and `bit_set' callbacks are required when */
-  /*    rendering a monochrome bitmap, as they are crucial to implement    */
-  /*    correct drop-out control as defined in the TrueType specification. */
-  /*                                                                       */
-  typedef struct  FT_Raster_Params_
-  {
-    const FT_Bitmap*        target;
-    const void*             source;
-    int                     flags;
-    FT_SpanFunc             gray_spans;
-    FT_SpanFunc             black_spans;
-    FT_Raster_BitTest_Func  bit_test;     /* doesn't work! */
-    FT_Raster_BitSet_Func   bit_set;      /* doesn't work! */
-    void*                   user;
-    FT_BBox                 clip_box;
-
-  } FT_Raster_Params;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Raster_NewFunc                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function used to create a new raster object.                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory :: A handle to the memory allocator.                        */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    raster :: A handle to the new raster object.                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Error code.  0 means success.                                      */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The `memory' parameter is a typeless pointer in order to avoid     */
-  /*    un-wanted dependencies on the rest of the FreeType code.  In       */
-  /*    practice, it is a FT_Memory, i.e., a handle to the standard        */
-  /*    FreeType memory allocator.  However, this field can be completely  */
-  /*    ignored by a given raster implementation.                          */
-  /*                                                                       */
-  typedef int
-  (*FT_Raster_NewFunc)( void*       memory,
-                        FT_Raster*  raster );
-
-#define  FT_Raster_New_Func    FT_Raster_NewFunc
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Raster_DoneFunc                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function used to destroy a given raster object.                  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    raster :: A handle to the raster object.                           */
-  /*                                                                       */
-  typedef void
-  (*FT_Raster_DoneFunc)( FT_Raster  raster );
-
-#define  FT_Raster_Done_Func   FT_Raster_DoneFunc
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Raster_ResetFunc                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    FreeType provides an area of memory called the `render pool',      */
-  /*    available to all registered rasters.  This pool can be freely used */
-  /*    during a given scan-conversion but is shared by all rasters.  Its  */
-  /*    content is thus transient.                                         */
-  /*                                                                       */
-  /*    This function is called each time the render pool changes, or just */
-  /*    after a new raster object is created.                              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    raster    :: A handle to the new raster object.                    */
-  /*                                                                       */
-  /*    pool_base :: The address in memory of the render pool.             */
-  /*                                                                       */
-  /*    pool_size :: The size in bytes of the render pool.                 */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Rasters can ignore the render pool and rely on dynamic memory      */
-  /*    allocation if they want to (a handle to the memory allocator is    */
-  /*    passed to the raster constructor).  However, this is not           */
-  /*    recommended for efficiency purposes.                               */
-  /*                                                                       */
-  typedef void
-  (*FT_Raster_ResetFunc)( FT_Raster       raster,
-                          unsigned char*  pool_base,
-                          unsigned long   pool_size );
-
-#define  FT_Raster_Reset_Func   FT_Raster_ResetFunc
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Raster_SetModeFunc                                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is a generic facility to change modes or attributes  */
-  /*    in a given raster.  This can be used for debugging purposes, or    */
-  /*    simply to allow implementation-specific `features' in a given      */
-  /*    raster module.                                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    raster :: A handle to the new raster object.                       */
-  /*                                                                       */
-  /*    mode   :: A 4-byte tag used to name the mode or property.          */
-  /*                                                                       */
-  /*    args   :: A pointer to the new mode/property to use.               */
-  /*                                                                       */
-  typedef int
-  (*FT_Raster_SetModeFunc)( FT_Raster      raster,
-                            unsigned long  mode,
-                            void*          args );
-
-#define  FT_Raster_Set_Mode_Func  FT_Raster_SetModeFunc
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Raster_RenderFunc                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*   Invokes a given raster to scan-convert a given glyph image into a   */
-  /*   target bitmap.                                                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    raster :: A handle to the raster object.                           */
-  /*                                                                       */
-  /*    params :: A pointer to a FT_Raster_Params structure used to store  */
-  /*              the rendering parameters.                                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Error code.  0 means success.                                      */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The exact format of the source image depends on the raster's glyph */
-  /*    format defined in its FT_Raster_Funcs structure.  It can be an     */
-  /*    FT_Outline or anything else in order to support a large array of   */
-  /*    glyph formats.                                                     */
-  /*                                                                       */
-  /*    Note also that the render function can fail and return a           */
-  /*    FT_Err_Unimplemented_Feature error code if the raster used does    */
-  /*    not support direct composition.                                    */
-  /*                                                                       */
-  /*    XXX: For now, the standard raster doesn't support direct           */
-  /*         composition but this should change for the final release (see */
-  /*         the files demos/src/ftgrays.c and demos/src/ftgrays2.c for    */
-  /*         examples of distinct implementations which support direct     */
-  /*         composition).                                                 */
-  /*                                                                       */
-  typedef int
-  (*FT_Raster_RenderFunc)( FT_Raster          raster,
-                           FT_Raster_Params*  params );
-
-#define  FT_Raster_Render_Func    FT_Raster_RenderFunc
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Raster_Funcs                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*   A structure used to describe a given raster class to the library.   */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    glyph_format  :: The supported glyph format for this raster.       */
-  /*                                                                       */
-  /*    raster_new    :: The raster constructor.                           */
-  /*                                                                       */
-  /*    raster_reset  :: Used to reset the render pool within the raster.  */
-  /*                                                                       */
-  /*    raster_render :: A function to render a glyph into a given bitmap. */
-  /*                                                                       */
-  /*    raster_done   :: The raster destructor.                            */
-  /*                                                                       */
-  typedef struct  FT_Raster_Funcs_
-  {
-    FT_Glyph_Format         glyph_format;
-    FT_Raster_NewFunc       raster_new;
-    FT_Raster_ResetFunc     raster_reset;
-    FT_Raster_SetModeFunc   raster_set_mode;
-    FT_Raster_RenderFunc    raster_render;
-    FT_Raster_DoneFunc      raster_done;
-
-  } FT_Raster_Funcs;
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTIMAGE_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftincrem.h b/dependencies64/sfml/extlibs/headers/freetype/ftincrem.h
deleted file mode 100644 (file)
index 6a1aa1f..0000000
+++ /dev/null
@@ -1,292 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftincrem.h                                                             */
-/*                                                                         */
-/*    FreeType incremental loading (specification).                        */
-/*                                                                         */
-/*  Copyright 2002, 2003 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTINCREM_H__
-#define __FTINCREM_H__
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
- /***************************************************************************
-  *
-  * @type:
-  *   FT_Incremental
-  *
-  * @description:
-  *   An opaque type describing a user-provided object used to implement
-  *   "incremental" glyph loading within FreeType.  This is used to support
-  *   embedded fonts in certain environments (e.g. Postscript interpreters),
-  *   where the glyph data isn't in the font file, or must be overridden by
-  *   different values.
-  *
-  * @note:
-  *   It is up to client applications to create and implement @FT_Incremental
-  *   objects, as long as they provide implementations for the methods
-  *   @FT_Incremental_GetGlyphDataFunc, @FT_Incremental_FreeGlyphDataFunc
-  *   and @FT_Incremental_GetGlyphMetricsFunc.
-  *
-  *   See the description of @FT_Incremental_InterfaceRec to understand how
-  *   to use incremental objects with FreeType.
-  */
-  typedef struct FT_IncrementalRec_*  FT_Incremental;
-
-
- /***************************************************************************
-  *
-  * @struct:
-  *   FT_Incremental_Metrics
-  *
-  * @description:
-  *   A small structure used to contain the basic glyph metrics returned
-  *   by the @FT_Incremental_GetGlyphMetricsFunc method.
-  *
-  * @fields:
-  *   bearing_x ::
-  *     Left bearing, in font units.
-  *
-  *   bearing_y ::
-  *     Top bearing, in font units.
-  *
-  *   advance ::
-  *     Glyph advance, in font units.
-  *
-  * @note:
-  *   These correspond to horizontal or vertical metrics depending on the
-  *   value of the 'vertical' argument to the function
-  *   @FT_Incremental_GetGlyphMetricsFunc.
-  */
-  typedef struct  FT_Incremental_MetricsRec_
-  {
-    FT_Long  bearing_x;
-    FT_Long  bearing_y;
-    FT_Long  advance;
-
-  } FT_Incremental_MetricsRec, *FT_Incremental_Metrics;
-
-
- /***************************************************************************
-  *
-  * @type:
-  *   FT_Incremental_GetGlyphDataFunc
-  *
-  * @description:
-  *   A function called by FreeType to access a given glyph's data bytes
-  *   during @FT_Load_Glyph or @FT_Load_Char if incremental loading is
-  *   enabled.
-  *
-  *   Note that the format of the glyph's data bytes depends on the font
-  *   file format.  For TrueType, it must correspond to the raw bytes within
-  *   the 'glyf' table.  For Postscript formats, it must correspond to the
-  *   *unencrypted* charstring bytes, without any 'lenIV' header.  It is
-  *   undefined for any other format.
-  *
-  * @input:
-  *   incremental ::
-  *     Handle to an opaque @FT_Incremental handle provided by the client
-  *     application.
-  *
-  *   glyph_index ::
-  *     Index of relevant glyph.
-  *
-  * @output:
-  *   adata ::
-  *     A structure describing the returned glyph data bytes (which will be
-  *     accessed as a read-only byte block).
-  *
-  * @return:
-  *   FreeType error code.  0 means success.
-  *
-  * @note:
-  *   If this function returns succesfully the method
-  *   @FT_Incremental_FreeGlyphDataFunc will be called later to release
-  *   the data bytes.
-  *
-  *   Nested calls to @FT_Incremental_GetGlyphDataFunc can happen for
-  *   compound glyphs.
-  */
-  typedef FT_Error
-  (*FT_Incremental_GetGlyphDataFunc)( FT_Incremental  incremental,
-                                      FT_UInt         glyph_index,
-                                      FT_Data*        adata );
-
-
- /***************************************************************************
-  *
-  * @type:
-  *   FT_Incremental_FreeGlyphDataFunc
-  *
-  * @description:
-  *   A function used to release the glyph data bytes returned by a
-  *   successful call to @FT_Incremental_GetGlyphDataFunc.
-  *
-  * @input:
-  *   incremental ::
-  *     A handle to an opaque @FT_Incremental handle provided by the client
-  *     application.
-  *
-  *   data ::
-  *     A structure describing the glyph data bytes (which will be accessed
-  *     as a read-only byte block).
-  */
-  typedef void
-  (*FT_Incremental_FreeGlyphDataFunc)( FT_Incremental  incremental,
-                                       FT_Data*        data );
-
-
- /***************************************************************************
-  *
-  * @type:
-  *   FT_Incremental_GetGlyphMetricsFunc
-  *
-  * @description:
-  *   A function used to retrieve the basic metrics of a given glyph index
-  *   before accessing its data.  This is necessary because, in certain
-  *   formats like TrueType, the metrics are stored in a different place from
-  *   the glyph images proper.
-  *
-  * @input:
-  *   incremental ::
-  *     A handle to an opaque @FT_Incremental handle provided by the client
-  *     application.
-  *
-  *   glyph_index ::
-  *     Index of relevant glyph.
-  *
-  *   vertical ::
-  *     If true, return vertical metrics.
-  *
-  *   ametrics ::
-  *     This parameter is used for both input and output.
-  *     The original glyph metrics, if any, in font units.  If metrics are
-  *     not available all the values must be set to zero.
-  *
-  * @output:
-  *   ametrics ::
-  *     The replacement glyph metrics in font units.
-  *
-  */
-  typedef FT_Error
-  (*FT_Incremental_GetGlyphMetricsFunc)
-                      ( FT_Incremental              incremental,
-                        FT_UInt                     glyph_index,
-                        FT_Bool                     vertical,
-                        FT_Incremental_MetricsRec  *ametrics );
-
-
-  /**************************************************************************
-   *
-   * @struct:
-   *   FT_Incremental_FuncsRec
-   * 
-   * @description:
-   *   A table of functions for accessing fonts that load data
-   *   incrementally.  Used in @FT_Incremental_InterfaceRec.
-   * 
-   * @fields:
-   *   get_glyph_data ::
-   *     The function to get glyph data.  Must not be null.
-   *
-   *   free_glyph_data ::
-   *     The function to release glyph data.  Must not be null.
-   *
-   *   get_glyph_metrics ::
-   *     The function to get glyph metrics.  May be null if the font does
-   *     not provide overriding glyph metrics. 
-   */
-  typedef struct  FT_Incremental_FuncsRec_
-  {
-    FT_Incremental_GetGlyphDataFunc     get_glyph_data;
-    FT_Incremental_FreeGlyphDataFunc    free_glyph_data;
-    FT_Incremental_GetGlyphMetricsFunc  get_glyph_metrics;
-
-  } FT_Incremental_FuncsRec;
-
-
- /***************************************************************************
-  *
-  * @struct:
-  *   FT_Incremental_InterfaceRec
-  *
-  * @description:
-  *   A structure to be used with @FT_Open_Face to indicate that the user
-  *   wants to support incremental glyph loading.  You should use it with
-  *   @FT_PARAM_TAG_INCREMENTAL as in the following example:
-  *
-  *     {
-  *       FT_Incremental_InterfaceRec  inc_int;
-  *       FT_Parameter                 parameter;
-  *       FT_Open_Args                 open_args;
-  *
-  *
-  *       // set up incremental descriptor
-  *       inc_int.funcs  = my_funcs;
-  *       inc_int.object = my_object;
-  *
-  *       // set up optional parameter
-  *       parameter.tag  = FT_PARAM_TAG_INCREMENTAL;
-  *       parameter.data = &inc_int;
-  *
-  *       // set up FT_Open_Args structure
-  *       open_args.flags      = FT_OPEN_PATHNAME | FT_OPEN_PARAMS;
-  *       open_args.pathname   = my_font_pathname;
-  *       open_args.num_params = 1;
-  *       open_args.params     = &parameter; // we use one optional argument
-  *
-  *       // open the font
-  *       error = FT_Open_Face( library, &open_args, index, &face );
-  *       ...
-  *     }
-  */
-  typedef struct  FT_Incremental_InterfaceRec_
-  {
-    const FT_Incremental_FuncsRec*  funcs;
-    FT_Incremental                  object;
-  
-  } FT_Incremental_InterfaceRec;
-
-
- /***************************************************************************
-  *
-  * @constant:
-  *   FT_PARAM_TAG_INCREMENTAL
-  *
-  * @description:
-  *   A constant used as the tag of @FT_Parameter structures to indicate
-  *   an incremental loading object to be used by FreeType.
-  *
-  */
-#define FT_PARAM_TAG_INCREMENTAL  FT_MAKE_TAG( 'i', 'n', 'c', 'r' )
-
- /* */  
-
-FT_END_HEADER
-
-#endif /* __FTINCREM_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftlist.h b/dependencies64/sfml/extlibs/headers/freetype/ftlist.h
deleted file mode 100644 (file)
index ae9801b..0000000
+++ /dev/null
@@ -1,274 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftlist.h                                                               */
-/*                                                                         */
-/*    Generic list support for FreeType (specification).                   */
-/*                                                                         */
-/*  Copyright 1996-2001, 2003 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*  This file implements functions relative to list processing.  Its     */
-  /*  data structures are defined in `freetype.h'.                         */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTLIST_H__
-#define __FTLIST_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    list_processing                                                    */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    List Processing                                                    */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Simple management of lists.                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains various definitions related to list          */
-  /*    processing using doubly-linked nodes.                              */
-  /*                                                                       */
-  /* <Order>                                                               */
-  /*    FT_List                                                            */
-  /*    FT_ListNode                                                        */
-  /*    FT_ListRec                                                         */
-  /*    FT_ListNodeRec                                                     */
-  /*                                                                       */
-  /*    FT_List_Add                                                        */
-  /*    FT_List_Insert                                                     */
-  /*    FT_List_Find                                                       */
-  /*    FT_List_Remove                                                     */
-  /*    FT_List_Up                                                         */
-  /*    FT_List_Iterate                                                    */
-  /*    FT_List_Iterator                                                   */
-  /*    FT_List_Finalize                                                   */
-  /*    FT_List_Destructor                                                 */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_List_Find                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finds the list node for a given listed object.                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    list :: A pointer to the parent list.                              */
-  /*    data :: The address of the listed object.                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    List node.  NULL if it wasn't found.                               */
-  /*                                                                       */
-  FT_EXPORT( FT_ListNode )
-  FT_List_Find( FT_List  list,
-                void*    data );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_List_Add                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Appends an element to the end of a list.                           */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    list :: A pointer to the parent list.                              */
-  /*    node :: The node to append.                                        */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_List_Add( FT_List      list,
-               FT_ListNode  node );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_List_Insert                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Inserts an element at the head of a list.                          */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    list :: A pointer to parent list.                                  */
-  /*    node :: The node to insert.                                        */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_List_Insert( FT_List      list,
-                  FT_ListNode  node );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_List_Remove                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Removes a node from a list.  This function doesn't check whether   */
-  /*    the node is in the list!                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    node :: The node to remove.                                        */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    list :: A pointer to the parent list.                              */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_List_Remove( FT_List      list,
-                  FT_ListNode  node );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_List_Up                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Moves a node to the head/top of a list.  Used to maintain LRU      */
-  /*    lists.                                                             */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    list :: A pointer to the parent list.                              */
-  /*    node :: The node to move.                                          */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_List_Up( FT_List      list,
-              FT_ListNode  node );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_List_Iterator                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An FT_List iterator function which is called during a list parse   */
-  /*    by FT_List_Iterate().                                              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    node :: The current iteration list node.                           */
-  /*                                                                       */
-  /*    user :: A typeless pointer passed to FT_List_Iterate().            */
-  /*            Can be used to point to the iteration's state.             */
-  /*                                                                       */
-  typedef FT_Error
-  (*FT_List_Iterator)( FT_ListNode  node,
-                       void*        user );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_List_Iterate                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Parses a list and calls a given iterator function on each element. */
-  /*    Note that parsing is stopped as soon as one of the iterator calls  */
-  /*    returns a non-zero value.                                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    list     :: A handle to the list.                                  */
-  /*    iterator :: An interator function, called on each node of the      */
-  /*                list.                                                  */
-  /*    user     :: A user-supplied field which is passed as the second    */
-  /*                argument to the iterator.                              */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result (a FreeType error code) of the last iterator call.      */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_List_Iterate( FT_List           list,
-                   FT_List_Iterator  iterator,
-                   void*             user );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_List_Destructor                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An FT_List iterator function which is called during a list         */
-  /*    finalization by FT_List_Finalize() to destroy all elements in a    */
-  /*    given list.                                                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    system :: The current system object.                               */
-  /*                                                                       */
-  /*    data   :: The current object to destroy.                           */
-  /*                                                                       */
-  /*    user   :: A typeless pointer passed to FT_List_Iterate().  It can  */
-  /*              be used to point to the iteration's state.               */
-  /*                                                                       */
-  typedef void
-  (*FT_List_Destructor)( FT_Memory  memory,
-                         void*      data,
-                         void*      user );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_List_Finalize                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Destroys all elements in the list as well as the list itself.      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    list    :: A handle to the list.                                   */
-  /*                                                                       */
-  /*    destroy :: A list destructor that will be applied to each element  */
-  /*               of the list.                                            */
-  /*                                                                       */
-  /*    memory  :: The current memory object which handles deallocation.   */
-  /*                                                                       */
-  /*    user    :: A user-supplied field which is passed as the last       */
-  /*               argument to the destructor.                             */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_List_Finalize( FT_List             list,
-                    FT_List_Destructor  destroy,
-                    FT_Memory           memory,
-                    void*               user );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTLIST_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftlzw.h b/dependencies64/sfml/extlibs/headers/freetype/ftlzw.h
deleted file mode 100644 (file)
index 2ebd500..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftlzw.h                                                                */
-/*                                                                         */
-/*    LZW-compressed stream support.                                       */
-/*                                                                         */
-/*  Copyright 2004 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTLZW_H__
-#define __FTLZW_H__
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    lzw                                                                */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    LZW Streams                                                        */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Using LZW-compressed font files.                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains the declaration of LZW-specific functions.   */
-  /*                                                                       */
-  /*************************************************************************/
-
- /************************************************************************
-  *
-  * @function:
-  *   FT_Stream_OpenLZW
-  *
-  * @description:
-  *   Open a new stream to parse LZW-compressed font files.  This is
-  *   mainly used to support the compressed *.pcf.Z fonts that come
-  *   with XFree86.
-  *
-  * @input:
-  *   stream :: The target embedding stream.
-  *
-  *   source :: The source stream.
-  *
-  * @return:
-  *   FreeType error code.  0 means success.
-  *
-  * @note:
-  *   The source stream must be opened _before_ calling this function.
-  *
-  *   Calling the internal function FT_Stream_Close on the new stream will
-  *   *not* call FT_Stream_Close on the source stream.  None of the stream
-  *   objects will be released to the heap.
-  *
-  *   The stream implementation is very basic and resets the decompression
-  *   process each time seeking backwards is needed within the stream
-  *
-  *   In certain builds of the library, LZW compression recognition is
-  *   automatically handled when calling @FT_New_Face or @FT_Open_Face.
-  *   This means that if no font driver is capable of handling the raw
-  *   compressed file, the library will try to open a LZW stream from it
-  *   and re-open the face with it.
-  *
-  *   This function may return "FT_Err_Unimplemented" if your build of
-  *   FreeType was not compiled with LZW support.
-  */
-  FT_EXPORT( FT_Error )
-  FT_Stream_OpenLZW( FT_Stream  stream,
-                     FT_Stream  source );
-
- /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTLZW_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftmac.h b/dependencies64/sfml/extlibs/headers/freetype/ftmac.h
deleted file mode 100644 (file)
index 4ebf716..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftmac.h                                                                */
-/*                                                                         */
-/*    Additional Mac-specific API.                                         */
-/*                                                                         */
-/*  Copyright 1996-2001, 2004 by                                           */
-/*  Just van Rossum, David Turner, Robert Wilhelm, and Werner Lemberg.     */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-/***************************************************************************/
-/*                                                                         */
-/* NOTE: Include this file after <freetype/freetype.h> and after the       */
-/*       Mac-specific <Types.h> header (or any other Mac header that       */
-/*       includes <Types.h>); we use Handle type.                          */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTMAC_H__
-#define __FTMAC_H__
-
-
-#include <ft2build.h>
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    mac_specific                                                       */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Mac Specific Interface                                             */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Only available on the Macintosh.                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The following definitions are only available if FreeType is        */
-  /*    compiled on a Macintosh.                                           */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Face_From_FOND                                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new face object from an FOND resource.                   */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library    :: A handle to the library resource.                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    fond       :: An FOND resource.                                    */
-  /*                                                                       */
-  /*    face_index :: Only supported for the -1 `sanity check' special     */
-  /*                  case.                                                */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aface      :: A handle to a new face object.                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Notes>                                                               */
-  /*    This function can be used to create FT_Face abjects from fonts     */
-  /*    that are installed in the system like so:                          */
-  /*                                                                       */
-  /*    {                                                                  */
-  /*      fond = GetResource( 'FOND', fontName );                          */
-  /*      error = FT_New_Face_From_FOND( library, fond, 0, &face );        */
-  /*    }                                                                  */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_New_Face_From_FOND( FT_Library  library,
-                         Handle      fond,
-                         FT_Long     face_index,
-                         FT_Face    *aface );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_GetFile_From_Mac_Name                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Returns an FSSpec for the disk file containing the named font.     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    fontName   :: Mac OS name of the font (eg. Times New Roman Bold).  */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    pathSpec   :: FSSpec to the file.  For passing to @FT_New_Face.    */
-  /*                                                                       */
-  /*    face_index :: Index of the face.  For passing to @FT_New_Face.     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_GetFile_From_Mac_Name( const char*  fontName, 
-                            FSSpec*      pathSpec,
-                            FT_Long*     face_index );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Face_From_FSSpec                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new face object from a given resource and typeface index */
-  /*    using an FSSpec to the font file.                                  */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library    :: A handle to the library resource.                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    spec       :: FSSpec to the font file.                             */
-  /*                                                                       */
-  /*    face_index :: The index of the face within the resource.  The      */
-  /*                  first face has index 0.                              */
-  /* <Output>                                                              */
-  /*    aface      :: A handle to a new face object.                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    @FT_New_Face_From_FSSpec is identical to @FT_New_Face except       */
-  /*    it accepts an FSSpec instead of a path.                            */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_New_Face_From_FSSpec( FT_Library     library,
-                           const FSSpec  *spec,
-                           FT_Long        face_index,
-                           FT_Face       *aface );
-
-  /* */
-
-
-FT_END_HEADER
-
-
-#endif /* __FTMAC_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftmm.h b/dependencies64/sfml/extlibs/headers/freetype/ftmm.h
deleted file mode 100644 (file)
index 525b5c0..0000000
+++ /dev/null
@@ -1,378 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftmm.h                                                                 */
-/*                                                                         */
-/*    FreeType Multiple Master font interface (specification).             */
-/*                                                                         */
-/*  Copyright 1996-2001, 2003, 2004 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTMM_H__
-#define __FTMM_H__
-
-
-#include <ft2build.h>
-#include FT_TYPE1_TABLES_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    multiple_masters                                                   */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Multiple Masters                                                   */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    How to manage Multiple Masters fonts.                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The following types and functions are used to manage Multiple      */
-  /*    Master fonts, i.e. the selection of specific design instances by   */
-  /*    setting design axis coordinates.                                   */
-  /*                                                                       */
-  /*    George Williams has extended this interface to make it work with   */
-  /*    both Type 1 Multiple Masters fonts, and GX distortable (var)       */
-  /*    fonts.  Some of these routines only work with MM fonts, others     */
-  /*    will work with both types.  They are similar enough that a         */
-  /*    consistent interface makes sense.                                  */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_MM_Axis                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple structure used to model a given axis in design space for  */
-  /*    Multiple Masters fonts.                                            */
-  /*                                                                       */
-  /*    This structure can't be used for GX var fonts.                     */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    name    :: The axis's name.                                        */
-  /*                                                                       */
-  /*    minimum :: The axis's minimum design coordinate.                   */
-  /*                                                                       */
-  /*    maximum :: The axis's maximum design coordinate.                   */
-  /*                                                                       */
-  typedef struct  FT_MM_Axis_
-  {
-    FT_String*  name;
-    FT_Long     minimum;
-    FT_Long     maximum;
-
-  } FT_MM_Axis;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Multi_Master                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model the axes and space of a Multiple Masters */
-  /*    font.                                                              */
-  /*                                                                       */
-  /*    This structure can't be used for GX var fonts.                     */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    num_axis    :: Number of axes.  Cannot exceed 4.                   */
-  /*                                                                       */
-  /*    num_designs :: Number of designs; should ne normally 2^num_axis    */
-  /*                   even though the Type 1 specification strangely      */
-  /*                   allows for intermediate designs to be present. This */
-  /*                   number cannot exceed 16.                            */
-  /*                                                                       */
-  /*    axis        :: A table of axis descriptors.                        */
-  /*                                                                       */
-  typedef struct  FT_Multi_Master_
-  {
-    FT_UInt     num_axis;
-    FT_UInt     num_designs;
-    FT_MM_Axis  axis[T1_MAX_MM_AXIS];
-
-  } FT_Multi_Master;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Var_Axis                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple structure used to model a given axis in design space for  */
-  /*    Multiple Masters and GX var fonts.                                 */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    name    :: The axis's name.                                        */
-  /*               Not always meaningful for GX.                           */
-  /*                                                                       */
-  /*    minimum :: The axis's minimum design coordinate.                   */
-  /*                                                                       */
-  /*    def     :: The axis's default design coordinate.                   */
-  /*               FreeType computes meaningful default values for MM; it  */
-  /*               is then an integer value, not in 16.16 format.          */
-  /*                                                                       */
-  /*    maximum :: The axis's maximum design coordinate.                   */
-  /*                                                                       */
-  /*    tag     :: The axis's tag (the GX equivalent to `name').           */
-  /*               FreeType provides default values for MM if possible.    */
-  /*                                                                       */
-  /*    strid   :: The entry in `name' table (another GX version of        */
-  /*               `name').                                                */
-  /*               Not meaningful for MM.                                  */
-  /*                                                                       */
-  typedef struct  FT_Var_Axis_
-  {
-    FT_String*  name;
-
-    FT_Fixed    minimum;
-    FT_Fixed    def;
-    FT_Fixed    maximum;
-
-    FT_ULong    tag;
-    FT_UInt     strid;
-
-  } FT_Var_Axis;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Var_Named_Style                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple structure used to model a named style in a GX var font.   */
-  /*                                                                       */
-  /*    This structure can't be used for MM fonts.                         */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    coords :: The design coordinates for this style.                   */
-  /*              This is an array with one entry for each axis.           */
-  /*                                                                       */
-  /*    strid  :: The entry in `name' table identifying this style.        */
-  /*                                                                       */
-  typedef struct  FT_Var_Named_Style_
-  {
-    FT_Fixed*  coords;
-    FT_UInt    strid;
-
-  } FT_Var_Named_Style;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_MM_Var                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model the axes and space of a Multiple Masters */
-  /*    or GX var distortable font.                                        */
-  /*                                                                       */
-  /*    Some fields are specific to one format and not to the other.       */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    num_axis        :: The number of axes.  The maximum value is 4 for */
-  /*                       MM; no limit in GX.                             */
-  /*                                                                       */
-  /*    num_designs     :: The number of designs; should be normally       */
-  /*                       2^num_axis for MM fonts.  Not meaningful for GX */
-  /*                       (where every glyph could have a different       */
-  /*                       number of designs).                             */
-  /*                                                                       */
-  /*    num_namedstyles :: The number of named styles; only meaningful for */
-  /*                       GX which allows certain design coordinates to   */
-  /*                       have a string ID (in the `name' table)          */
-  /*                       associated with them.  The font can tell the    */
-  /*                       user that, for example, Weight=1.5 is `Bold'.   */
-  /*                                                                       */
-  /*    axis            :: A table of axis descriptors.                    */
-  /*                       GX fonts contain slightly more data than MM.    */
-  /*                                                                       */
-  /*    namedstyles     :: A table of named styles.                        */
-  /*                       Only meaningful with GX.                        */
-  /*                                                                       */
-  typedef struct  FT_MM_Var_
-  {
-    FT_UInt              num_axis;
-    FT_UInt              num_designs;
-    FT_UInt              num_namedstyles;
-    FT_Var_Axis*         axis;
-    FT_Var_Named_Style*  namedstyle;
-
-  } FT_MM_Var;
-
-
-  /* */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Multi_Master                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves the Multiple Master descriptor of a given font.          */
-  /*                                                                       */
-  /*    This function can't be used with GX fonts.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face    :: A handle to the source face.                            */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    amaster :: The Multiple Masters descriptor.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Get_Multi_Master( FT_Face           face,
-                       FT_Multi_Master  *amaster );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_MM_Var                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves the Multiple Master/GX var descriptor of a given font.   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face    :: A handle to the source face.                            */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    amaster :: The Multiple Masters descriptor.                        */
-  /*               Allocates a data structure, which the user must free    */
-  /*               (a single call to FT_FREE will do it).                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Get_MM_Var( FT_Face      face,
-                 FT_MM_Var*  *amaster );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_MM_Design_Coordinates                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    For Multiple Masters fonts, choose an interpolated font design     */
-  /*    through design coordinates.                                        */
-  /*                                                                       */
-  /*    This function can't be used with GX fonts.                         */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: A handle to the source face.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    num_coords :: The number of design coordinates (must be equal to   */
-  /*                  the number of axes in the font).                     */
-  /*                                                                       */
-  /*    coords     :: An array of design coordinates.                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Set_MM_Design_Coordinates( FT_Face   face,
-                                FT_UInt   num_coords,
-                                FT_Long*  coords );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_Var_Design_Coordinates                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    For Multiple Master or GX Var fonts, choose an interpolated font   */
-  /*    design through design coordinates.                                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: A handle to the source face.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    num_coords :: The number of design coordinates (must be equal to   */
-  /*                  the number of axes in the font).                     */
-  /*                                                                       */
-  /*    coords     :: An array of design coordinates.                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Set_Var_Design_Coordinates( FT_Face    face,
-                                 FT_UInt    num_coords,
-                                 FT_Fixed*  coords );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_MM_Blend_Coordinates                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    For Multiple Masters and GX var fonts, choose an interpolated font */
-  /*    design through normalized blend coordinates.                       */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: A handle to the source face.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    num_coords :: The number of design coordinates (must be equal to   */
-  /*                  the number of axes in the font).                     */
-  /*                                                                       */
-  /*    coords     :: The design coordinates array (each element must be   */
-  /*                  between 0 and 1.0).                                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Set_MM_Blend_Coordinates( FT_Face    face,
-                               FT_UInt    num_coords,
-                               FT_Fixed*  coords );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_Var_Blend_Coordinates                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This is another name of @FT_Set_MM_Blend_Coordinates.              */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Set_Var_Blend_Coordinates( FT_Face    face,
-                                FT_UInt    num_coords,
-                                FT_Fixed*  coords );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTMM_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftmodapi.h b/dependencies64/sfml/extlibs/headers/freetype/ftmodapi.h
deleted file mode 100644 (file)
index 1929ca0..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftmodapi.h                                                             */
-/*                                                                         */
-/*    FreeType modules public interface (specification).                   */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTMODAPI_H__
-#define __FTMODAPI_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    module_management                                                  */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Module Management                                                  */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    How to add, upgrade, and remove modules from FreeType.             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The definitions below are used to manage modules within FreeType.  */
-  /*    Modules can be added, upgraded, and removed at runtime.            */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /* module bit flags */
-#define FT_MODULE_FONT_DRIVER         1  /* this module is a font driver  */
-#define FT_MODULE_RENDERER            2  /* this module is a renderer     */
-#define FT_MODULE_HINTER              4  /* this module is a glyph hinter */
-#define FT_MODULE_STYLER              8  /* this module is a styler       */
-
-#define FT_MODULE_DRIVER_SCALABLE     0x100   /* the driver supports      */
-                                              /* scalable fonts           */
-#define FT_MODULE_DRIVER_NO_OUTLINES  0x200   /* the driver does not      */
-                                              /* support vector outlines  */
-#define FT_MODULE_DRIVER_HAS_HINTER   0x400   /* the driver provides its  */
-                                              /* own hinter               */
-
-
-  /* deprecated values */
-#define ft_module_font_driver         FT_MODULE_FONT_DRIVER
-#define ft_module_renderer            FT_MODULE_RENDERER
-#define ft_module_hinter              FT_MODULE_HINTER
-#define ft_module_styler              FT_MODULE_STYLER
-
-#define ft_module_driver_scalable     FT_MODULE_DRIVER_SCALABLE
-#define ft_module_driver_no_outlines  FT_MODULE_DRIVER_NO_OUTLINES
-#define ft_module_driver_has_hinter   FT_MODULE_DRIVER_HAS_HINTER
-
-
-  typedef FT_Pointer  FT_Module_Interface;
-
-  typedef FT_Error
-  (*FT_Module_Constructor)( FT_Module  module );
-
-  typedef void
-  (*FT_Module_Destructor)( FT_Module  module );
-
-  typedef FT_Module_Interface 
-  (*FT_Module_Requester)( FT_Module    module,
-                          const char*  name );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Module_Class                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The module class descriptor.                                       */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    module_flags      :: Bit flags describing the module.              */
-  /*                                                                       */
-  /*    module_size       :: The size of one module object/instance in     */
-  /*                         bytes.                                        */
-  /*                                                                       */
-  /*    module_name       :: The name of the module.                       */
-  /*                                                                       */
-  /*    module_version    :: The version, as a 16.16 fixed number          */
-  /*                         (major.minor).                                */
-  /*                                                                       */
-  /*    module_requires   :: The version of FreeType this module requires  */
-  /*                         (starts at version 2.0, i.e 0x20000)          */
-  /*                                                                       */
-  /*    module_init       :: A function used to initialize (not create) a  */
-  /*                         new module object.                            */
-  /*                                                                       */
-  /*    module_done       :: A function used to finalize (not destroy) a   */
-  /*                         given module object                           */
-  /*                                                                       */
-  /*    get_interface     :: Queries a given module for a specific         */
-  /*                         interface by name.                            */
-  /*                                                                       */
-  typedef struct  FT_Module_Class_
-  {
-    FT_ULong               module_flags;
-    FT_Long                module_size;
-    const FT_String*       module_name;
-    FT_Fixed               module_version;
-    FT_Fixed               module_requires;
-
-    const void*            module_interface;
-
-    FT_Module_Constructor  module_init;
-    FT_Module_Destructor   module_done;
-    FT_Module_Requester    get_interface;
-
-  } FT_Module_Class;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Add_Module                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Adds a new module to a given library instance.                     */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library :: A handle to the library object.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    clazz   :: A pointer to class descriptor for the module.           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    An error will be returned if a module already exists by that name, */
-  /*    or if the module requires a version of FreeType that is too great. */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Add_Module( FT_Library              library,
-                 const FT_Module_Class*  clazz );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Module                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finds a module by its name.                                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library     :: A handle to the library object.                     */
-  /*                                                                       */
-  /*    module_name :: The module's name (as an ASCII string).             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A module handle.  0 if none was found.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    You should better be familiar with FreeType internals to know      */
-  /*    which module to look for :-)                                       */
-  /*                                                                       */
-  FT_EXPORT( FT_Module )
-  FT_Get_Module( FT_Library   library,
-                 const char*  module_name );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Remove_Module                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Removes a given module from a library instance.                    */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library :: A handle to a library object.                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    module  :: A handle to a module object.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The module object is destroyed by the function in case of success. */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Remove_Module( FT_Library  library,
-                    FT_Module   module );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Library                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used to create a new FreeType library instance    */
-  /*    from a given memory object.  It is thus possible to use libraries  */
-  /*    with distinct memory allocators within the same program.           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory   :: A handle to the original memory object.                */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    alibrary :: A pointer to handle of a new library object.           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_New_Library( FT_Memory    memory,
-                  FT_Library  *alibrary );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Done_Library                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Discards a given library object.  This closes all drivers and      */
-  /*    discards all resource objects.                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library :: A handle to the target library.                         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Done_Library( FT_Library  library );
-
-
-
-  typedef void
-  (*FT_DebugHook_Func)( void*  arg );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_Debug_Hook                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Sets a debug hook function for debugging the interpreter of a font */
-  /*    format.                                                            */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library    :: A handle to the library object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    hook_index :: The index of the debug hook.  You should use the     */
-  /*                  values defined in ftobjs.h, e.g.                     */
-  /*                  FT_DEBUG_HOOK_TRUETYPE.                              */
-  /*                                                                       */
-  /*    debug_hook :: The function used to debug the interpreter.          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Currently, four debug hook slots are available, but only two (for  */
-  /*    the TrueType and the Type 1 interpreter) are defined.              */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Set_Debug_Hook( FT_Library         library,
-                     FT_UInt            hook_index,
-                     FT_DebugHook_Func  debug_hook );
-
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Add_Default_Modules                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Adds the set of default drivers to a given library object.         */
-  /*    This is only useful when you create a library object with          */
-  /*    FT_New_Library() (usually to plug a custom memory manager).        */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library :: A handle to a new library object.                       */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Add_Default_Modules( FT_Library  library );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTMODAPI_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftmoderr.h b/dependencies64/sfml/extlibs/headers/freetype/ftmoderr.h
deleted file mode 100644 (file)
index b0115dd..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftmoderr.h                                                             */
-/*                                                                         */
-/*    FreeType module error offsets (specification).                       */
-/*                                                                         */
-/*  Copyright 2001, 2002, 2003, 2004, 2005 by                              */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the FreeType module error offsets.        */
-  /*                                                                       */
-  /* The lower byte gives the error code, the higher byte gives the        */
-  /* module.  The base module has error offset 0.  For example, the error  */
-  /* `FT_Err_Invalid_File_Format' has value 0x003, the error               */
-  /* `TT_Err_Invalid_File_Format' has value 0x1103, the error              */
-  /* `T1_Err_Invalid_File_Format' has value 0x1203, etc.                   */
-  /*                                                                       */
-  /* Undefine the macro FT_CONFIG_OPTION_USE_MODULE_ERRORS in ftoption.h   */
-  /* to make the higher byte always zero (disabling the module error       */
-  /* mechanism).                                                           */
-  /*                                                                       */
-  /* It can also be used to create a module error message table easily     */
-  /* with something like                                                   */
-  /*                                                                       */
-  /*   {                                                                   */
-  /*     #undef __FTMODERR_H__                                             */
-  /*     #define FT_MODERRDEF( e, v, s )  { FT_Mod_Err_ ## e, s },         */
-  /*     #define FT_MODERR_START_LIST     {                                */
-  /*     #define FT_MODERR_END_LIST       { 0, 0 } };                      */
-  /*                                                                       */
-  /*     const struct                                                      */
-  /*     {                                                                 */
-  /*       int          mod_err_offset;                                    */
-  /*       const char*  mod_err_msg                                        */
-  /*     } ft_mod_errors[] =                                               */
-  /*                                                                       */
-  /*     #include FT_MODULE_ERRORS_H                                       */
-  /*   }                                                                   */
-  /*                                                                       */
-  /* To use such a table, all errors must be ANDed with 0xFF00 to remove   */
-  /* the error code.                                                       */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTMODERR_H__
-#define __FTMODERR_H__
-
-
-  /*******************************************************************/
-  /*******************************************************************/
-  /*****                                                         *****/
-  /*****                       SETUP MACROS                      *****/
-  /*****                                                         *****/
-  /*******************************************************************/
-  /*******************************************************************/
-
-
-#undef  FT_NEED_EXTERN_C
-
-#ifndef FT_MODERRDEF
-
-#ifdef FT_CONFIG_OPTION_USE_MODULE_ERRORS
-#define FT_MODERRDEF( e, v, s )  FT_Mod_Err_ ## e = v,
-#else
-#define FT_MODERRDEF( e, v, s )  FT_Mod_Err_ ## e = 0,
-#endif
-
-#define FT_MODERR_START_LIST  enum {
-#define FT_MODERR_END_LIST    FT_Mod_Err_Max };
-
-#ifdef __cplusplus
-#define FT_NEED_EXTERN_C
-  extern "C" {
-#endif
-
-#endif /* !FT_MODERRDEF */
-
-
-  /*******************************************************************/
-  /*******************************************************************/
-  /*****                                                         *****/
-  /*****               LIST MODULE ERROR BASES                   *****/
-  /*****                                                         *****/
-  /*******************************************************************/
-  /*******************************************************************/
-
-
-#ifdef FT_MODERR_START_LIST
-  FT_MODERR_START_LIST
-#endif
-
-
-  FT_MODERRDEF( Base,      0x000, "base module" )
-  FT_MODERRDEF( Autofit,   0x100, "autofitter module" )
-  FT_MODERRDEF( BDF,       0x200, "BDF module" )
-  FT_MODERRDEF( Cache,     0x300, "cache module" )
-  FT_MODERRDEF( CFF,       0x400, "CFF module" )
-  FT_MODERRDEF( CID,       0x500, "CID module" )
-  FT_MODERRDEF( Gzip,      0x600, "Gzip module" )
-  FT_MODERRDEF( LZW,       0x700, "LZW module" )
-  FT_MODERRDEF( OTvalid,   0x800, "OpenType validation module" )
-  FT_MODERRDEF( PCF,       0x900, "PCF module" )
-  FT_MODERRDEF( PFR,       0xA00, "PFR module" )
-  FT_MODERRDEF( PSaux,     0xB00, "PS auxiliary module" )
-  FT_MODERRDEF( PShinter,  0xC00, "PS hinter module" )
-  FT_MODERRDEF( PSnames,   0xD00, "PS names module" )
-  FT_MODERRDEF( Raster,    0xE00, "raster module" )
-  FT_MODERRDEF( SFNT,      0xF00, "SFNT module" )
-  FT_MODERRDEF( Smooth,   0x1000, "smooth raster module" )
-  FT_MODERRDEF( TrueType, 0x1100, "TrueType module" )
-  FT_MODERRDEF( Type1,    0x1200, "Type 1 module" )
-  FT_MODERRDEF( Type42,   0x1300, "Type 42 module" )
-  FT_MODERRDEF( Winfonts, 0x1400, "Windows FON/FNT module" )
-
-
-#ifdef FT_MODERR_END_LIST
-  FT_MODERR_END_LIST
-#endif
-
-
-  /*******************************************************************/
-  /*******************************************************************/
-  /*****                                                         *****/
-  /*****                      CLEANUP                            *****/
-  /*****                                                         *****/
-  /*******************************************************************/
-  /*******************************************************************/
-
-
-#ifdef FT_NEED_EXTERN_C
-  }
-#endif
-
-#undef FT_MODERR_START_LIST
-#undef FT_MODERR_END_LIST
-#undef FT_MODERRDEF
-#undef FT_NEED_EXTERN_C
-
-
-#endif /* __FTMODERR_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftotval.h b/dependencies64/sfml/extlibs/headers/freetype/ftotval.h
deleted file mode 100644 (file)
index a8de58a..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftotval.h                                                              */
-/*                                                                         */
-/*    FreeType API for validating OpenType tables (specification).         */
-/*                                                                         */
-/*  Copyright 2004, 2005 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-/***************************************************************************/
-/*                                                                         */
-/*                                                                         */
-/* Warning: This module might be moved to a different library in the       */
-/*          future to avoid a tight dependency between FreeType and the    */
-/*          OpenType specification.                                        */
-/*                                                                         */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTOTVAL_H__
-#define __FTOTVAL_H__
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    ot_validation                                                      */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    OpenType Validation                                                */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    An API to validate OpenType tables.                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains the declaration of functions to validate     */
-  /*    some OpenType tables (BASE, GDEF, GPOS, GSUB, JSTF).               */
-  /*                                                                       */
-  /*************************************************************************/
-
-
- /**********************************************************************
-  *
-  * @enum:
-  *    FT_VALIDATE_XXX
-  *
-  * @description:
-  *    A list of bit-field constants used with @FT_OpenType_Validate to
-  *    indicate which OpenType tables should be validated.
-  *
-  * @values:
-  *    FT_VALIDATE_BASE ::
-  *      Validate BASE table.
-  *
-  *    FT_VALIDATE_GDEF ::
-  *      Validate GDEF table.
-  *
-  *    FT_VALIDATE_GPOS ::
-  *      Validate GPOS table.
-  *
-  *    FT_VALIDATE_GSUB ::
-  *      Validate GSUB table.
-  *
-  *    FT_VALIDATE_JSTF ::
-  *      Validate JSTF table.
-  *
-  *    FT_VALIDATE_OT ::
-  *      Validate all OpenType tables (BASE, GDEF, GPOS, GSUB, JSTF).
-  *
-  */
-#define FT_VALIDATE_BASE  0x0100
-#define FT_VALIDATE_GDEF  0x0200
-#define FT_VALIDATE_GPOS  0x0400
-#define FT_VALIDATE_GSUB  0x0800
-#define FT_VALIDATE_JSTF  0x1000
-
-#define FT_VALIDATE_OT  FT_VALIDATE_BASE | \
-                        FT_VALIDATE_GDEF | \
-                        FT_VALIDATE_GPOS | \
-                        FT_VALIDATE_GSUB | \
-                        FT_VALIDATE_JSTF
-
-  /* */
-
- /**********************************************************************
-  *
-  * @function:
-  *    FT_OpenType_Validate
-  *
-  * @description:
-  *    Validate various OpenType tables to assure that all offsets and
-  *    indices are valid.  The idea is that a higher-level library which
-  *    actually does the text layout can access those tables without
-  *    error checking (which can be quite time consuming).
-  *
-  * @input:
-  *    face ::
-  *       A handle to the input face.
-  *
-  *    validation_flags ::
-  *       A bit field which specifies the tables to be validated.  See
-  *       @FT_VALIDATE_XXX for possible values.
-  *
-  * @output:
-  *    BASE_table ::
-  *       A pointer to the BASE table.
-  *
-  *    GDEF_table ::
-  *       A pointer to the GDEF table.
-  *
-  *    GPOS_table ::
-  *       A pointer to the GPOS table.
-  *
-  *    GSUB_table ::
-  *       A pointer to the GSUB table.
-  *
-  *    JSTF_table ::
-  *       A pointer to the JSTF table.
-  *
-  * @return:
-  *   FreeType error code.  0 means success.
-  *
-  * @note:
-  *   This function only works with OpenType fonts, returning an error
-  *   otherwise.
-  *
-  *   After use, the application should deallocate the five tables with
-  *   `free'.  A NULL value indicates that the table either doesn't exist
-  *   in the font, or the application hasn't asked for validation.
-  */
-  FT_EXPORT( FT_Error )
-  FT_OpenType_Validate( FT_Face    face,
-                        FT_UInt    validation_flags,
-                        FT_Bytes  *BASE_table, 
-                        FT_Bytes  *GDEF_table, 
-                        FT_Bytes  *GPOS_table, 
-                        FT_Bytes  *GSUB_table, 
-                        FT_Bytes  *JSTF_table );
-
- /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTOTVAL_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftoutln.h b/dependencies64/sfml/extlibs/headers/freetype/ftoutln.h
deleted file mode 100644 (file)
index 76ad60a..0000000
+++ /dev/null
@@ -1,498 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftoutln.h                                                              */
-/*                                                                         */
-/*    Support for the FT_Outline type used to store glyph shapes of        */
-/*    most scalable font formats (specification).                          */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2005 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTOUTLN_H__
-#define __FTOUTLN_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    outline_processing                                                 */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Outline Processing                                                 */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Functions to create, transform, and render vectorial glyph images. */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains routines used to create and destroy scalable */
-  /*    glyph images known as `outlines'.  These can also be measured,     */
-  /*    transformed, and converted into bitmaps and pixmaps.               */
-  /*                                                                       */
-  /* <Order>                                                               */
-  /*    FT_Outline                                                         */
-  /*    FT_OUTLINE_FLAGS                                                   */
-  /*    FT_Outline_New                                                     */
-  /*    FT_Outline_Done                                                    */
-  /*    FT_Outline_Copy                                                    */
-  /*    FT_Outline_Translate                                               */
-  /*    FT_Outline_Transform                                               */
-  /*    FT_Outline_Embolden                                                */
-  /*    FT_Outline_Reverse                                                 */
-  /*    FT_Outline_Check                                                   */
-  /*                                                                       */
-  /*    FT_Outline_Get_CBox                                                */
-  /*    FT_Outline_Get_BBox                                                */
-  /*                                                                       */
-  /*    FT_Outline_Get_Bitmap                                              */
-  /*    FT_Outline_Render                                                  */
-  /*                                                                       */
-  /*    FT_Outline_Decompose                                               */
-  /*    FT_Outline_Funcs                                                   */
-  /*    FT_Outline_MoveTo_Func                                             */
-  /*    FT_Outline_LineTo_Func                                             */
-  /*    FT_Outline_ConicTo_Func                                            */
-  /*    FT_Outline_CubicTo_Func                                            */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Decompose                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Walks over an outline's structure to decompose it into individual  */
-  /*    segments and Bezier arcs.  This function is also able to emit      */
-  /*    `move to' and `close to' operations to indicate the start and end  */
-  /*    of new contours in the outline.                                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    outline        :: A pointer to the source target.                  */
-  /*                                                                       */
-  /*    func_interface :: A table of `emitters', i.e,. function pointers   */
-  /*                      called during decomposition to indicate path     */
-  /*                      operations.                                      */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    user           :: A typeless pointer which is passed to each       */
-  /*                      emitter during the decomposition.  It can be     */
-  /*                      used to store the state during the               */
-  /*                      decomposition.                                   */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means sucess.                              */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Outline_Decompose( FT_Outline*              outline,
-                        const FT_Outline_Funcs*  func_interface,
-                        void*                    user );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_New                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new outline of a given size.                             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library     :: A handle to the library object from where the       */
-  /*                   outline is allocated.  Note however that the new    */
-  /*                   outline will NOT necessarily be FREED, when         */
-  /*                   destroying the library, by FT_Done_FreeType().      */
-  /*                                                                       */
-  /*    numPoints   :: The maximal number of points within the outline.    */
-  /*                                                                       */
-  /*    numContours :: The maximal number of contours within the outline.  */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    anoutline   :: A handle to the new outline.  NULL in case of       */
-  /*                   error.                                              */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The reason why this function takes a `library' parameter is simply */
-  /*    to use the library's memory allocator.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Outline_New( FT_Library   library,
-                  FT_UInt      numPoints,
-                  FT_Int       numContours,
-                  FT_Outline  *anoutline );
-
-
-  FT_EXPORT( FT_Error )
-  FT_Outline_New_Internal( FT_Memory    memory,
-                           FT_UInt      numPoints,
-                           FT_Int       numContours,
-                           FT_Outline  *anoutline );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Done                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Destroys an outline created with FT_Outline_New().                 */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library :: A handle of the library object used to allocate the     */
-  /*               outline.                                                */
-  /*                                                                       */
-  /*    outline :: A pointer to the outline object to be discarded.        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    If the outline's `owner' field is not set, only the outline        */
-  /*    descriptor will be released.                                       */
-  /*                                                                       */
-  /*    The reason why this function takes an `library' parameter is       */
-  /*    simply to use FT_Free().                                           */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Outline_Done( FT_Library   library,
-                   FT_Outline*  outline );
-
-
-  FT_EXPORT( FT_Error )
-  FT_Outline_Done_Internal( FT_Memory    memory,
-                            FT_Outline*  outline );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Check                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Check the contents of an outline descriptor.                       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    outline :: A handle to a source outline.                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Outline_Check( FT_Outline*  outline );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Get_CBox                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Returns an outline's `control box'.  The control box encloses all  */
-  /*    the outline's points, including Bezier control points.  Though it  */
-  /*    coincides with the exact bounding box for most glyphs, it can be   */
-  /*    slightly larger in some situations (like when rotating an outline  */
-  /*    which contains Bezier outside arcs).                               */
-  /*                                                                       */
-  /*    Computing the control box is very fast, while getting the bounding */
-  /*    box can take much more time as it needs to walk over all segments  */
-  /*    and arcs in the outline.  To get the latter, you can use the       */
-  /*    `ftbbox' component which is dedicated to this single task.         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    outline :: A pointer to the source outline descriptor.             */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    acbox   :: The outline's control box.                              */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Outline_Get_CBox( const FT_Outline*  outline,
-                       FT_BBox           *acbox );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Translate                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Applies a simple translation to the points of an outline.          */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    outline :: A pointer to the target outline descriptor.             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    xOffset :: The horizontal offset.                                  */
-  /*                                                                       */
-  /*    yOffset :: The vertical offset.                                    */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Outline_Translate( const FT_Outline*  outline,
-                        FT_Pos             xOffset,
-                        FT_Pos             yOffset );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Copy                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Copies an outline into another one.  Both objects must have the    */
-  /*    same sizes (number of points & number of contours) when this       */
-  /*    function is called.                                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    source :: A handle to the source outline.                          */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    target :: A handle to the target outline.                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Outline_Copy( const FT_Outline*  source,
-                   FT_Outline        *target );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Transform                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Applies a simple 2x2 matrix to all of an outline's points.  Useful */
-  /*    for applying rotations, slanting, flipping, etc.                   */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    outline :: A pointer to the target outline descriptor.             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    matrix  :: A pointer to the transformation matrix.                 */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    You can use FT_Outline_Translate() if you need to translate the    */
-  /*    outline's points.                                                  */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Outline_Transform( const FT_Outline*  outline,
-                        const FT_Matrix*   matrix );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Embolden                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Emboldens an outline.  The new outline will be at most 4 times     */
-  /*    `strength' pixels wider and higher.  You may think of the left and */
-  /*    bottom borders as unchanged.                                       */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    outline  :: A handle to the target outline.                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    strength :: How strong the glyph is emboldened.  Expressed in      */
-  /*                26.6 pixel format.                                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT_DEF( FT_Error )
-  FT_Outline_Embolden( FT_Outline*  outline,
-                       FT_Pos       strength );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Reverse                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Reverses the drawing direction of an outline.  This is used to     */
-  /*    ensure consistent fill conventions for mirrored glyphs.            */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    outline :: A pointer to the target outline descriptor.             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This functions toggles the bit flag `FT_OUTLINE_REVERSE_FILL' in   */
-  /*    the outline's `flags' field.                                       */
-  /*                                                                       */
-  /*    It shouldn't be used by a normal client application, unless it     */
-  /*    knows what it is doing.                                            */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Outline_Reverse( FT_Outline*  outline );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Get_Bitmap                                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Renders an outline within a bitmap.  The outline's image is simply */
-  /*    OR-ed to the target bitmap.                                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library :: A handle to a FreeType library object.                  */
-  /*                                                                       */
-  /*    outline :: A pointer to the source outline descriptor.             */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    abitmap :: A pointer to the target bitmap descriptor.              */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function does NOT CREATE the bitmap, it only renders an       */
-  /*    outline image within the one you pass to it!                       */
-  /*                                                                       */
-  /*    It will use the raster correponding to the default glyph format.   */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Outline_Get_Bitmap( FT_Library        library,
-                         FT_Outline*       outline,
-                         const FT_Bitmap  *abitmap );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Render                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Renders an outline within a bitmap using the current scan-convert. */
-  /*    This functions uses an FT_Raster_Params structure as an argument,  */
-  /*    allowing advanced features like direct composition, translucency,  */
-  /*    etc.                                                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library :: A handle to a FreeType library object.                  */
-  /*                                                                       */
-  /*    outline :: A pointer to the source outline descriptor.             */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    params  :: A pointer to a FT_Raster_Params structure used to       */
-  /*               describe the rendering operation.                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    You should know what you are doing and how FT_Raster_Params works  */
-  /*    to use this function.                                              */
-  /*                                                                       */
-  /*    The field `params.source' will be set to `outline' before the scan */
-  /*    converter is called, which means that the value you give to it is  */
-  /*    actually ignored.                                                  */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Outline_Render( FT_Library         library,
-                     FT_Outline*        outline,
-                     FT_Raster_Params*  params );
-
-
- /**************************************************************************
-  *
-  * @enum:
-  *   FT_Orientation
-  *  
-  * @description:
-  *   A list of values used to describe an outline's contour orientation.
-  *
-  *   The TrueType and Postscript specifications use different conventions
-  *   to determine whether outline contours should be filled or unfilled.
-  *   
-  * @values:
-  *   FT_ORIENTATION_TRUETYPE ::
-  *     According to the TrueType specification, clockwise contours must
-  *     be filled, and counter-clockwise ones must be unfilled.
-  *
-  *   FT_ORIENTATION_POSTSCRIPT ::
-  *     According to the Postscript specification, counter-clockwise contours
-  *     must be filled, and clockwise ones must be unfilled.
-  *
-  *   FT_ORIENTATION_FILL_RIGHT ::
-  *     This is identical to @FT_ORIENTATION_TRUETYPE, but is used to
-  *     remember that in TrueType, everything that is to the right of
-  *     the drawing direction of a contour must be filled.
-  *
-  *   FT_ORIENTATION_FILL_LEFT ::
-  *     This is identical to @FT_ORIENTATION_POSTSCRIPT, but is used to
-  *     remember that in Postscript, everything that is to the left of
-  *     the drawing direction of a contour must be filled.
-  */
-  typedef enum
-  {
-    FT_ORIENTATION_TRUETYPE   = 0,
-    FT_ORIENTATION_POSTSCRIPT = 1,
-    FT_ORIENTATION_FILL_RIGHT = FT_ORIENTATION_TRUETYPE,
-    FT_ORIENTATION_FILL_LEFT  = FT_ORIENTATION_POSTSCRIPT
-  
-  } FT_Orientation;
-
-
- /**************************************************************************
-  *
-  * @function:
-  *   FT_Outline_Get_Orientation
-  *  
-  * @description:
-  *   This function analyzes a glyph outline and tries to compute its
-  *   fill orientation (see @FT_Orientation).  This is done by computing
-  *   the direction of each global horizontal and/or vertical extrema
-  *   within the outline.
-  *
-  *   Note that this will return @FT_ORIENTATION_TRUETYPE for empty
-  *   outlines.
-  *
-  * @input:
-  *   outline ::
-  *     A handle to the source outline.
-  *
-  * @return:
-  *   The orientation.
-  *
-  */
-  FT_EXPORT( FT_Orientation )
-  FT_Outline_Get_Orientation( FT_Outline*  outline );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTOUTLN_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftpfr.h b/dependencies64/sfml/extlibs/headers/freetype/ftpfr.h
deleted file mode 100644 (file)
index 2481659..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftpfr.h                                                                */
-/*                                                                         */
-/*    FreeType API for accessing PFR-specific data (specification only).   */
-/*                                                                         */
-/*  Copyright 2002, 2003, 2004 by                                          */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTPFR_H__
-#define __FTPFR_H__
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    pfr_fonts                                                          */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    PFR Fonts                                                          */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    PFR/TrueDoc specific API.                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains the declaration of PFR-specific functions.   */
-  /*                                                                       */
-  /*************************************************************************/
-
-
- /**********************************************************************
-  *
-  * @function:
-  *    FT_Get_PFR_Metrics
-  *
-  * @description:
-  *    Return the outline and metrics resolutions of a given PFR face.
-  *
-  * @input:
-  *    face :: Handle to the input face.  It can be a non-PFR face.
-  *
-  * @output:
-  *    aoutline_resolution ::
-  *      Outline resolution.  This is equivalent to `face->units_per_EM'.
-  *      Optional (parameter can be NULL).
-  *
-  *    ametrics_resolution ::
-  *      Metrics resolution.  This is equivalent to `outline_resolution'
-  *      for non-PFR fonts.  Optional (parameter can be NULL).
-  *
-  *    ametrics_x_scale ::
-  *      A 16.16 fixed-point number used to scale distance expressed
-  *      in metrics units to device sub-pixels.  This is equivalent to
-  *      `face->size->x_scale', but for metrics only.  Optional (parameter
-  *      can be NULL)
-  *
-  *    ametrics_y_scale ::
-  *      Same as `ametrics_x_scale' but for the vertical direction.
-  *      optional (parameter can be NULL)
-  *
-  * @return:
-  *    FreeType error code.  0 means success.
-  *
-  * @note:
-  *   If the input face is not a PFR, this function will return an error.
-  *   However, in all cases, it will return valid values.
-  */
-  FT_EXPORT( FT_Error )
-  FT_Get_PFR_Metrics( FT_Face    face,
-                      FT_UInt   *aoutline_resolution,
-                      FT_UInt   *ametrics_resolution,
-                      FT_Fixed  *ametrics_x_scale,
-                      FT_Fixed  *ametrics_y_scale );
-
-
- /**********************************************************************
-  *
-  * @function:
-  *    FT_Get_PFR_Kerning
-  *
-  * @description:
-  *    Return the kerning pair corresponding to two glyphs in a PFR face.
-  *    The distance is expressed in metrics units, unlike the result of
-  *    @FT_Get_Kerning.
-  *
-  * @input:
-  *    face  :: A handle to the input face.
-  *
-  *    left  :: Index of the left glyph.
-  *
-  *    right :: Index of the right glyph.
-  *
-  * @output:
-  *    avector :: A kerning vector.
-  *
-  * @return:
-  *    FreeType error code.  0 means success.
-  *
-  * @note:
-  *    This function always return distances in original PFR metrics
-  *    units.  This is unlike @FT_Get_Kerning with the @FT_KERNING_UNSCALED
-  *    mode, which always returns distances converted to outline units.
-  *
-  *    You can use the value of the `x_scale' and `y_scale' parameters
-  *    returned by @FT_Get_PFR_Metrics to scale these to device sub-pixels.
-  */
-  FT_EXPORT( FT_Error )
-  FT_Get_PFR_Kerning( FT_Face     face,
-                      FT_UInt     left,
-                      FT_UInt     right,
-                      FT_Vector  *avector );
-
-
- /**********************************************************************
-  *
-  * @function:
-  *    FT_Get_PFR_Advance
-  *
-  * @description:
-  *    Return a given glyph advance, expressed in original metrics units,
-  *    from a PFR font.
-  *
-  * @input:
-  *    face   :: A handle to the input face.
-  *
-  *    gindex :: The glyph index.
-  *
-  * @output:
-  *    aadvance :: The glyph advance in metrics units.
-  *
-  * @return:
-  *    FreeType error code.  0 means success.
-  *
-  * @note:
-  *    You can use the `x_scale' or `y_scale' results of @FT_Get_PFR_Metrics
-  *    to convert the advance to device sub-pixels (i.e. 1/64th of pixels).
-  */
-  FT_EXPORT( FT_Error )
-  FT_Get_PFR_Advance( FT_Face   face,
-                      FT_UInt   gindex,
-                      FT_Pos   *aadvance );
-
- /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTPFR_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftrender.h b/dependencies64/sfml/extlibs/headers/freetype/ftrender.h
deleted file mode 100644 (file)
index 21b051f..0000000
+++ /dev/null
@@ -1,229 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftrender.h                                                             */
-/*                                                                         */
-/*    FreeType renderer modules public interface (specification).          */
-/*                                                                         */
-/*  Copyright 1996-2001, 2005 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTRENDER_H__
-#define __FTRENDER_H__
-
-
-#include <ft2build.h>
-#include FT_MODULE_H
-#include FT_GLYPH_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    module_management                                                  */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /* create a new glyph object */
-  typedef FT_Error
-  (*FT_Glyph_InitFunc)( FT_Glyph      glyph,
-                        FT_GlyphSlot  slot );
-
-  /* destroys a given glyph object */
-  typedef void
-  (*FT_Glyph_DoneFunc)( FT_Glyph  glyph );
-
-  typedef void
-  (*FT_Glyph_TransformFunc)( FT_Glyph    glyph,
-                             FT_Matrix*  matrix,
-                             FT_Vector*  delta );
-
-  typedef void
-  (*FT_Glyph_GetBBoxFunc)( FT_Glyph  glyph,
-                           FT_BBox*  abbox );
-
-  typedef FT_Error
-  (*FT_Glyph_CopyFunc)( FT_Glyph   source,
-                        FT_Glyph   target );
-
-  typedef FT_Error
-  (*FT_Glyph_PrepareFunc)( FT_Glyph      glyph,
-                           FT_GlyphSlot  slot );
-
-/* deprecated */
-#define FT_Glyph_Init_Func       FT_Glyph_InitFunc
-#define FT_Glyph_Done_Func       FT_Glyph_DoneFunc
-#define FT_Glyph_Transform_Func  FT_Glyph_TransformFunc
-#define FT_Glyph_BBox_Func       FT_Glyph_GetBBoxFunc
-#define FT_Glyph_Copy_Func       FT_Glyph_CopyFunc
-#define FT_Glyph_Prepare_Func    FT_Glyph_PrepareFunc
-
-
-  struct  FT_Glyph_Class_
-  {
-    FT_Long                 glyph_size;
-    FT_Glyph_Format         glyph_format;
-    FT_Glyph_InitFunc       glyph_init;
-    FT_Glyph_DoneFunc       glyph_done;
-    FT_Glyph_CopyFunc       glyph_copy;
-    FT_Glyph_TransformFunc  glyph_transform;
-    FT_Glyph_GetBBoxFunc    glyph_bbox;
-    FT_Glyph_PrepareFunc    glyph_prepare;
-  };
-
-
-  typedef FT_Error
-  (*FT_Renderer_RenderFunc)( FT_Renderer   renderer,
-                             FT_GlyphSlot  slot,
-                             FT_UInt       mode,
-                             FT_Vector*    origin );
-
-  typedef FT_Error
-  (*FT_Renderer_TransformFunc)( FT_Renderer   renderer,
-                                FT_GlyphSlot  slot,
-                                FT_Matrix*    matrix,
-                                FT_Vector*    delta );
-
-
-  typedef void
-  (*FT_Renderer_GetCBoxFunc)( FT_Renderer   renderer,
-                              FT_GlyphSlot  slot,
-                              FT_BBox*      cbox );
-
-
-  typedef FT_Error
-  (*FT_Renderer_SetModeFunc)( FT_Renderer  renderer,
-                              FT_ULong     mode_tag,
-                              FT_Pointer   mode_ptr );
-
-/* deprecated identifiers */
-#define FTRenderer_render  FT_Renderer_RenderFunc
-#define FTRenderer_transform  FT_Renderer_TransformFunc
-#define FTRenderer_getCBox  FT_Renderer_GetCBoxFunc
-#define FTRenderer_setMode  FT_Renderer_SetModeFunc
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Renderer_Class                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The renderer module class descriptor.                              */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    root         :: The root FT_Module_Class fields.                   */
-  /*                                                                       */
-  /*    glyph_format :: The glyph image format this renderer handles.      */
-  /*                                                                       */
-  /*    render_glyph :: A method used to render the image that is in a     */
-  /*                    given glyph slot into a bitmap.                    */
-  /*                                                                       */
-  /*    set_mode     :: A method used to pass additional parameters.       */
-  /*                                                                       */
-  /*    raster_class :: For `FT_GLYPH_FORMAT_OUTLINE' renderers only, this */
-  /*                    is a pointer to its raster's class.                */
-  /*                                                                       */
-  /*    raster       :: For `FT_GLYPH_FORMAT_OUTLINE' renderers only. this */
-  /*                    is a pointer to the corresponding raster object,   */
-  /*                    if any.                                            */
-  /*                                                                       */
-  typedef struct  FT_Renderer_Class_
-  {
-    FT_Module_Class       root;
-
-    FT_Glyph_Format       glyph_format;
-
-    FT_Renderer_RenderFunc     render_glyph;
-    FT_Renderer_TransformFunc  transform_glyph;
-    FT_Renderer_GetCBoxFunc    get_glyph_cbox;
-    FT_Renderer_SetModeFunc    set_mode;
-
-    FT_Raster_Funcs*           raster_class;
-
-  } FT_Renderer_Class;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Renderer                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves the current renderer for a given glyph format.           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library :: A handle to the library object.                         */
-  /*                                                                       */
-  /*    format  :: The glyph format.                                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A renderer handle.  0 if none found.                               */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    An error will be returned if a module already exists by that name, */
-  /*    or if the module requires a version of FreeType that is too great. */
-  /*                                                                       */
-  /*    To add a new renderer, simply use FT_Add_Module().  To retrieve a  */
-  /*    renderer by its name, use FT_Get_Module().                         */
-  /*                                                                       */
-  FT_EXPORT( FT_Renderer )
-  FT_Get_Renderer( FT_Library       library,
-                   FT_Glyph_Format  format );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Set_Renderer                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Sets the current renderer to use, and set additional mode.         */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    library    :: A handle to the library object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    renderer   :: A handle to the renderer object.                     */
-  /*                                                                       */
-  /*    num_params :: The number of additional parameters.                 */
-  /*                                                                       */
-  /*    parameters :: Additional parameters.                               */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    In case of success, the renderer will be used to convert glyph     */
-  /*    images in the renderer's known format into bitmaps.                */
-  /*                                                                       */
-  /*    This doesn't change the current renderer for other formats.        */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Set_Renderer( FT_Library     library,
-                   FT_Renderer    renderer,
-                   FT_UInt        num_params,
-                   FT_Parameter*  parameters );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTRENDER_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftsizes.h b/dependencies64/sfml/extlibs/headers/freetype/ftsizes.h
deleted file mode 100644 (file)
index 9abd94b..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsizes.h                                                              */
-/*                                                                         */
-/*    FreeType size objects management (specification).                    */
-/*                                                                         */
-/*  Copyright 1996-2001, 2003, 2004 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Typical application would normally not need to use these functions.   */
-  /* However, they have been placed in a public API for the rare cases     */
-  /* where they are needed.                                                */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTSIZES_H__
-#define __FTSIZES_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    sizes_management                                                   */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Size Management                                                    */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Managing multiple sizes per face.                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    When creating a new face object (e.g. with @FT_New_Face), an       */
-  /*    @FT_Size object is automatically created and used to store all     */
-  /*    pixel-size dependent information, available in the "face->size"    */
-  /*    field.                                                             */
-  /*                                                                       */
-  /*    It is however possible to create more sizes for a given face,      */
-  /*    mostly in order to manage several character pixel sizes of the     */
-  /*    same font family and style.  See @FT_New_Size and @FT_Done_Size.   */
-  /*                                                                       */
-  /*    Note that @FT_Set_Pixel_Sizes and @FT_Set_Char_Size only           */
-  /*    modify the contents of the current "active" size; you thus need    */
-  /*    to use @FT_Activate_Size to change it.                             */
-  /*                                                                       */
-  /*    99% of applications won't need the functions provided here,        */
-  /*    especially if they use the caching sub-system, so be cautious      */
-  /*    when using these.                                                  */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Size                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new size object from a given face object.                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to a parent face object.                          */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    asize :: A handle to a new size object.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    You need to call @FT_Activate_Size in order to select the new size */
-  /*    for upcoming calls to @FT_Set_Pixel_Sizes, @FT_Set_Char_Size,      */
-  /*    @FT_Load_Glyph, @FT_Load_Char, etc.                                */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_New_Size( FT_Face   face,
-               FT_Size*  size );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Done_Size                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Discards a given size object.  Note that @FT_Done_Face             */
-  /*    automatically discards all size objects allocated with             */
-  /*    @FT_New_Size.                                                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    size :: A handle to a target size object.                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Done_Size( FT_Size  size );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Activate_Size                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Even though it is possible to create several size objects for a    */
-  /*    given face (see @FT_New_Size for details), functions like          */
-  /*    @FT_Load_Glyph or @FT_Load_Char only use the last-created one to   */
-  /*    determine the "current character pixel size".                      */
-  /*                                                                       */
-  /*    This function can be used to "activate" a previously created size  */
-  /*    object.                                                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    size :: A handle to a target size object.                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    If "face" is the size's parent face object, this function changes  */
-  /*    the value of "face->size" to the input size handle.                */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Activate_Size( FT_Size  size );
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTSIZES_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftsnames.h b/dependencies64/sfml/extlibs/headers/freetype/ftsnames.h
deleted file mode 100644 (file)
index 0e2d9a4..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsnames.h                                                             */
-/*                                                                         */
-/*    Simple interface to access SFNT name tables (which are used          */
-/*    to hold font names, copyright info, notices, etc.) (specification).  */
-/*                                                                         */
-/*    This is _not_ used to retrieve glyph names!                          */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FT_SFNT_NAMES_H__
-#define __FT_SFNT_NAMES_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    sfnt_names                                                         */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    SFNT Names                                                         */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Access the names embedded in TrueType and OpenType files.          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The TrueType and OpenType specification allow the inclusion of     */
-  /*    a special `names table' in font files.  This table contains        */
-  /*    textual (and internationalized) information regarding the font,    */
-  /*    like family name, copyright, version, etc.                         */
-  /*                                                                       */
-  /*    The definitions below are used to access them if available.        */
-  /*                                                                       */
-  /*    Note that this has nothing to do with glyph names!                 */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_SfntName                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model an SFNT `name' table entry.              */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    platform_id :: The platform ID for `string'.                       */
-  /*                                                                       */
-  /*    encoding_id :: The encoding ID for `string'.                       */
-  /*                                                                       */
-  /*    language_id :: The language ID for `string'.                       */
-  /*                                                                       */
-  /*    name_id     :: An identifier for `string'.                         */
-  /*                                                                       */
-  /*    string      :: The `name' string.  Note that its format differs    */
-  /*                   depending on the (platform,encoding) pair. It can   */
-  /*                   be a Pascal String, a UTF-16 one, etc..             */
-  /*                                                                       */
-  /*                   Generally speaking, the string is not               */
-  /*                   zero-terminated. Please refer to the TrueType       */
-  /*                   specification for details..                         */
-  /*                                                                       */
-  /*    string_len  :: The length of `string' in bytes.                    */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Possible values for `platform_id', `encoding_id', `language_id',   */
-  /*    and `name_id' are given in the file `ttnameid.h'.  For details     */
-  /*    please refer to the TrueType or OpenType specification.            */
-  /*                                                                       */
-  typedef struct  FT_SfntName_
-  {
-    FT_UShort  platform_id;
-    FT_UShort  encoding_id;
-    FT_UShort  language_id;
-    FT_UShort  name_id;
-
-    FT_Byte*   string;      /* this string is *not* null-terminated! */
-    FT_UInt    string_len;  /* in bytes */
-
-  } FT_SfntName;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Sfnt_Name_Count                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves the number of name strings in the SFNT `name' table.     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to the source face.                               */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The number of strings in the `name' table.                         */
-  /*                                                                       */
-  FT_EXPORT( FT_UInt )
-  FT_Get_Sfnt_Name_Count( FT_Face  face );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Sfnt_Name                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves a string of the SFNT `name' table for a given index.     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face  :: A handle to the source face.                              */
-  /*                                                                       */
-  /*    idx   :: The index of the `name' string.                           */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aname :: The indexed FT_SfntName structure.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The `string' array returned in the `aname' structure is not        */
-  /*    null-terminated.                                                   */
-  /*                                                                       */
-  /*    Use FT_Get_Sfnt_Name_Count() to get the total number of available  */
-  /*    `name' table entries, then do a loop until you get the right       */
-  /*    platform, encoding, and name ID.                                   */
-  /*                                                                       */
-  FT_EXPORT( FT_Error )
-  FT_Get_Sfnt_Name( FT_Face       face,
-                    FT_UInt       idx,
-                    FT_SfntName  *aname );
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FT_SFNT_NAMES_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftstroke.h b/dependencies64/sfml/extlibs/headers/freetype/ftstroke.h
deleted file mode 100644 (file)
index c6c96de..0000000
+++ /dev/null
@@ -1,710 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftstroke.h                                                             */
-/*                                                                         */
-/*    FreeType path stroker (specification).                               */
-/*                                                                         */
-/*  Copyright 2002, 2003, 2004 by                                          */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FT_STROKE_H__
-#define __FT_STROKE_H__
-
-#include <ft2build.h>
-#include FT_OUTLINE_H
-#include FT_GLYPH_H
-
-
-FT_BEGIN_HEADER
-
-
- /************************************************************************
-  *
-  * <Section>
-  *    glyph_stroker
-  *
-  * <Title>
-  *    Glyph Stroker
-  *
-  * <Abstract>
-  *    Generating bordered and stroked glyphs.
-  *
-  * <Description>
-  *    This component generates stroked outlines of a given vectorial
-  *    glyph.  It also allows you to retrieve the `outside' and/or the
-  *    `inside' borders of the stroke.
-  *
-  *    This can be useful to generate `bordered' glyph, i.e., glyphs
-  *    displayed with a coloured (and anti-aliased) border around their
-  *    shape.
-  */
-
-
- /**************************************************************
-  *
-  * @type:
-  *   FT_Stroker
-  *
-  * @description:
-  *   Opaque handler to a path stroker object.
-  */
-  typedef struct FT_StrokerRec_*  FT_Stroker;
-
-
-  /**************************************************************
-   *
-   * @enum:
-   *   FT_Stroker_LineJoin
-   *
-   * @description:
-   *   These values determine how two joining lines are rendered
-   *   in a stroker.
-   *
-   * @values:
-   *   FT_STROKER_LINEJOIN_ROUND ::
-   *     Used to render rounded line joins.  Circular arcs are used
-   *     to join two lines smoothly.
-   *
-   *   FT_STROKER_LINEJOIN_BEVEL ::
-   *     Used to render beveled line joins; i.e., the two joining lines
-   *     are extended until they intersect.
-   *
-   *   FT_STROKER_LINEJOIN_MITER ::
-   *     Same as beveled rendering, except that an additional line
-   *     break is added if the angle between the two joining lines
-   *     is too closed (this is useful to avoid unpleasant spikes
-   *     in beveled rendering).
-   */
-  typedef enum
-  {
-    FT_STROKER_LINEJOIN_ROUND = 0,
-    FT_STROKER_LINEJOIN_BEVEL,
-    FT_STROKER_LINEJOIN_MITER
-
-  } FT_Stroker_LineJoin;
-
-
-  /**************************************************************
-   *
-   * @enum:
-   *   FT_Stroker_LineCap
-   *
-   * @description:
-   *   These values determine how the end of opened sub-paths are
-   *   rendered in a stroke.
-   *
-   * @values:
-   *   FT_STROKER_LINECAP_BUTT ::
-   *     The end of lines is rendered as a full stop on the last
-   *     point itself.
-   *
-   *   FT_STROKER_LINECAP_ROUND ::
-   *     The end of lines is rendered as a half-circle around the
-   *     last point.
-   *
-   *   FT_STROKER_LINECAP_SQUARE ::
-   *     The end of lines is rendered as a square around the
-   *     last point.
-   */
-  typedef enum
-  {
-    FT_STROKER_LINECAP_BUTT = 0,
-    FT_STROKER_LINECAP_ROUND,
-    FT_STROKER_LINECAP_SQUARE
-
-  } FT_Stroker_LineCap;
-
-
-  /**************************************************************
-   *
-   * @enum:
-   *   FT_StrokerBorder
-   *
-   * @description:
-   *   These values are used to select a given stroke border
-   *   in @FT_Stroker_GetBorderCounts and @FT_Stroker_ExportBorder.
-   *
-   * @values:
-   *   FT_STROKER_BORDER_LEFT ::
-   *     Select the left border, relative to the drawing direction.
-   *
-   *   FT_STROKER_BORDER_RIGHT ::
-   *     Select the right border, relative to the drawing direction.
-   *
-   * @note:
-   *   Applications are generally interested in the `inside' and `outside'
-   *   borders.  However, there is no direct mapping between these and
-   *   the `left' / `right' ones, since this really depends on the glyph's
-   *   drawing orientation, which varies between font formats.
-   *
-   *   You can however use @FT_Outline_GetInsideBorder and
-   *   @FT_Outline_GetOutsideBorder to get these.
-   */
-  typedef enum
-  {
-    FT_STROKER_BORDER_LEFT = 0,
-    FT_STROKER_BORDER_RIGHT
-
-  } FT_StrokerBorder;
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Outline_GetInsideBorder
-   *
-   * @description:
-   *   Retrieve the @FT_StrokerBorder value corresponding to the
-   *   `inside' borders of a given outline.
-   *
-   * @input:
-   *   outline ::
-   *     The source outline handle.
-   *
-   * @return:
-   *   The border index.  @FT_STROKER_BORDER_LEFT for empty or invalid
-   *   outlines.
-   */
-  FT_EXPORT( FT_StrokerBorder )
-  FT_Outline_GetInsideBorder( FT_Outline*  outline );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Outline_GetOutsideBorder
-   *
-   * @description:
-   *   Retrieve the @FT_StrokerBorder value corresponding to the
-   *   `outside' borders of a given outline.
-   *
-   * @input:
-   *   outline ::
-   *     The source outline handle.
-   *
-   * @return:
-   *   The border index.  @FT_STROKER_BORDER_LEFT for empty or invalid
-   *   outlines.
-   */
-  FT_EXPORT( FT_StrokerBorder )
-  FT_Outline_GetOutsideBorder( FT_Outline*  outline );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_New
-   *
-   * @description:
-   *   Create a new stroker object.
-   *
-   * @input:
-   *   memory ::
-   *     The memory manager handle.
-   *
-   * @output:
-   *   A new stroker object handle.  NULL in case of error.
-   *
-   * @return:
-   *    FreeType error code.  0 means success.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Stroker_New( FT_Memory    memory,
-                  FT_Stroker  *astroker );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_Set
-   *
-   * @description:
-   *   Reset a stroker object's attributes.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   *   radius ::
-   *     The border radius.
-   *
-   *   line_cap ::
-   *     The line cap style.
-   *
-   *   line_join ::
-   *     The line join style.
-   *
-   *   miter_limit ::
-   *     The miter limit for the FT_STROKER_LINEJOIN_MITER style,
-   *     expressed as 16.16 fixed point value.
-   *
-   * @note:
-   *   The radius is expressed in the same units that the outline
-   *   coordinates.
-   */
-  FT_EXPORT( void )
-  FT_Stroker_Set( FT_Stroker           stroker,
-                  FT_Fixed             radius,
-                  FT_Stroker_LineCap   line_cap,
-                  FT_Stroker_LineJoin  line_join,
-                  FT_Fixed             miter_limit );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_Rewind
-   *
-   * @description:
-   *   Reset a stroker object without changing its attributes.
-   *   You should call this function before beginning a new
-   *   series of calls to @FT_Stroker_BeginSubPath or
-   *   @FT_Stroker_EndSubPath.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   */
-  FT_EXPORT( void )
-  FT_Stroker_Rewind( FT_Stroker  stroker );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_ParseOutline
-   *
-   * @description:
-   *   A convenience function used to parse a whole outline with
-   *   the stroker.  The resulting outline(s) can be retrieved
-   *   later by functions like @FT_Stroker_GetCounts and @FT_Stroker_Export.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   *   outline ::
-   *     The source outline.
-   *
-   *   opened ::
-   *     A boolean.  If TRUE, the outline is treated as an open path
-   *     instead of a closed one.
-   *
-   * @return:
-   *   FreeType error code.  0 means success.
-   *
-   * @note:
-   *   If `opened' is 0 (the default), the outline is treated as a closed
-   *   path, and the stroker will generate two distinct `border' outlines.
-   *
-   *   If `opened' is 1, the outline is processed as an open path, and the
-   *   stroker will generate a single `stroke' outline.
-   *
-   *   This function calls @FT_Stroker_Rewind automatically.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Stroker_ParseOutline( FT_Stroker   stroker,
-                           FT_Outline*  outline,
-                           FT_Bool      opened );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_BeginSubPath
-   *
-   * @description:
-   *   Start a new sub-path in the stroker.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   *   to ::
-   *     A pointer to the start vector.
-   *
-   *   open ::
-   *     A boolean.  If TRUE, the sub-path is treated as an open one.
-   *
-   * @return:
-   *   FreeType error code.  0 means success.
-   *
-   * @note:
-   *   This function is useful when you need to stroke a path that is
-   *   not stored as a @FT_Outline object.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Stroker_BeginSubPath( FT_Stroker  stroker,
-                           FT_Vector*  to,
-                           FT_Bool     open );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_EndSubPath
-   *
-   * @description:
-   *   Close the current sub-path in the stroker.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   * @return:
-   *   FreeType error code.  0 means success.
-   *
-   * @note:
-   *   You should call this function after @FT_Stroker_BeginSubPath.
-   *   If the subpath was not `opened', this function will `draw' a
-   *   single line segment to the start position when needed.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Stroker_EndSubPath( FT_Stroker  stroker );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_LineTo
-   *
-   * @description:
-   *   `Draw' a single line segment in the stroker's current sub-path,
-   *   from the last position.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   *   to ::
-   *     A pointer to the destination point.
-   *
-   * @return:
-   *   FreeType error code.  0 means success.
-   *
-   * @note:
-   *   You should call this function between @FT_Stroker_BeginSubPath and
-   *   @FT_Stroker_EndSubPath.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Stroker_LineTo( FT_Stroker  stroker,
-                     FT_Vector*  to );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_ConicTo
-   *
-   * @description:
-   *   `Draw; a single quadratic bezier in the stroker's current sub-path,
-   *   from the last position.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   *   control ::
-   *     A pointer to a Bézier control point.
-   *
-   *   to ::
-   *     A pointer to the destination point.
-   *
-   * @return:
-   *   FreeType error code.  0 means success.
-   *
-   * @note:
-   *   You should call this function between @FT_Stroker_BeginSubPath and
-   *   @FT_Stroker_EndSubPath.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Stroker_ConicTo( FT_Stroker  stroker,
-                      FT_Vector*  control,
-                      FT_Vector*  to );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_CubicTo
-   *
-   * @description:
-   *   `Draw' a single cubic Bézier in the stroker's current sub-path,
-   *   from the last position.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   *   control1 ::
-   *     A pointer to the first Bézier control point.
-   *
-   *   control2 ::
-   *     A pointer to second Bézier control point.
-   *
-   *   to ::
-   *     A pointer to the destination point.
-   *
-   * @return:
-   *   FreeType error code.  0 means success.
-   *
-   * @note:
-   *   You should call this function between @FT_Stroker_BeginSubPath and
-   *   @FT_Stroker_EndSubPath.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Stroker_CubicTo( FT_Stroker  stroker,
-                      FT_Vector*  control1,
-                      FT_Vector*  control2,
-                      FT_Vector*  to );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_GetBorderCounts
-   *
-   * @description:
-   *   Vall this function once you have finished parsing your paths
-   *   with the stroker.  It will return the number of points and
-   *   contours necessary to export one of the `border' or `stroke'
-   *   outlines generated by the stroker.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   *   border ::
-   *     The border index.
-   *
-   * @output:
-   *   anum_points ::
-   *     The number of points.
-   *
-   *   anum_contours ::
-   *     The number of contours.
-   *
-   * @return:
-   *   FreeType error code.  0 means success.
-   *
-   * @note:
-   *   When an outline, or a sub-path, is `closed', the stroker generates
-   *   two independent `border' outlines, named `left' and `right'.
-   *
-   *   When the outline, or a sub-path, is `opened', the stroker merges
-   *   the `border' outlines with caps.  The `left' border receives all
-   *   points, while the `right' border becomes empty.
-   *
-   *   Use the function @FT_Stroker_GetCounts instead if you want to
-   *   retrieve the counts associated to both borders.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Stroker_GetBorderCounts( FT_Stroker        stroker,
-                              FT_StrokerBorder  border,
-                              FT_UInt          *anum_points,
-                              FT_UInt          *anum_contours );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_ExportBorder
-   *
-   * @description:
-   *   Call this function after @FT_Stroker_GetBorderCounts to
-   *   export the corresponding border to your own @FT_Outline
-   *   structure.
-   *
-   *   Note that this function will append the border points and
-   *   contours to your outline, but will not try to resize its
-   *   arrays.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   *   border ::
-   *     The border index.
-   *
-   *   outline ::
-   *     The target outline handle.
-   *
-   * @note:
-   *   Always call this function after @FT_Stroker_GetBorderCounts to
-   *   get sure that there is enough room in your @FT_Outline object to
-   *   receive all new data.
-   *
-   *   When an outline, or a sub-path, is `closed', the stroker generates
-   *   two independent `border' outlines, named `left' and `right'
-   *
-   *   When the outline, or a sub-path, is `opened', the stroker merges
-   *   the `border' outlines with caps. The `left' border receives all
-   *   points, while the `right' border becomes empty.
-   *
-   *   Use the function @FT_Stroker_Export instead if you want to
-   *   retrieve all borders at once.
-   */
-  FT_EXPORT( void )
-  FT_Stroker_ExportBorder( FT_Stroker        stroker,
-                           FT_StrokerBorder  border,
-                           FT_Outline*       outline );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_GetCounts
-   *
-   * @description:
-   *   Call this function once you have finished parsing your paths
-   *   with the stroker.  It returns the number of points and
-   *   contours necessary to export all points/borders from the stroked
-   *   outline/path.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   * @output:
-   *   anum_points ::
-   *     The number of points.
-   *
-   *   anum_contours ::
-   *     The number of contours.
-   *
-   * @return:
-   *   FreeType error code.  0 means success.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Stroker_GetCounts( FT_Stroker  stroker,
-                        FT_UInt    *anum_points,
-                        FT_UInt    *anum_contours );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_Export
-   *
-   * @description:
-   *   Call this function after @FT_Stroker_GetBorderCounts to
-   *   export the all borders to your own @FT_Outline structure.
-   *
-   *   Note that this function will append the border points and
-   *   contours to your outline, but will not try to resize its
-   *   arrays.
-   *
-   * @input:
-   *   stroker ::
-   *     The target stroker handle.
-   *
-   *   outline ::
-   *     The target outline handle.
-   */
-  FT_EXPORT( void )
-  FT_Stroker_Export( FT_Stroker   stroker,
-                     FT_Outline*  outline );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Stroker_Done
-   *
-   * @description:
-   *   Destroy a stroker object.
-   *
-   * @input:
-   *   stroker ::
-   *     A stroker handle.  Can be NULL.
-   */
-  FT_EXPORT( void )
-  FT_Stroker_Done( FT_Stroker  stroker );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Glyph_Stroke
-   *
-   * @description:
-   *   Stroke a given outline glyph object with a given stroker.
-   *
-   * @inout:
-   *   pglyph :: Source glyph handle on input, new glyph handle
-   *             on output.
-   *
-   * @input:
-   *   stroker ::
-   *     A stroker handle.
-   *
-   *   destroy ::
-   *     A Boolean.  If TRUE, the source glyph object is destroyed
-   *     on success.
-   *
-   * @return:
-   *    FreeType error code.  0 means success.
-   *
-   * @note:
-   *   The source glyph is untouched in case of error.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Glyph_Stroke( FT_Glyph    *pglyph,
-                   FT_Stroker   stroker,
-                   FT_Bool      destroy );
-
-
-  /**************************************************************
-   *
-   * @function:
-   *   FT_Glyph_StrokeBorder
-   *
-   * @description:
-   *   Stroke a given outline glyph object with a given stroker, but
-   *   only return either its inside or outside border.
-   *
-   * @inout:
-   *   pglyph ::
-   *     Source glyph handle on input, new glyph handle on output.
-   *
-   * @input:
-   *   stroker ::
-   *     A stroker handle.
-   *
-   *   inside ::
-   *     A Boolean.  If TRUE, return the inside border, otherwise
-   *     the outside border.
-   *
-   *   destroy ::
-   *     A Boolean.  If TRUE, the source glyph object is destroyed
-   *     on success.
-   *
-   * @return:
-   *    FreeType error code.  0 means success.
-   *
-   * @note:
-   *   The source glyph is untouched in case of error.
-   */
-  FT_EXPORT( FT_Error )
-  FT_Glyph_StrokeBorder( FT_Glyph    *pglyph,
-                         FT_Stroker   stroker,
-                         FT_Bool      inside,
-                         FT_Bool      destroy );
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __FT_STROKE_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftsynth.h b/dependencies64/sfml/extlibs/headers/freetype/ftsynth.h
deleted file mode 100644 (file)
index f0c7385..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsynth.h                                                              */
-/*                                                                         */
-/*    FreeType synthesizing code for emboldening and slanting              */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 2000-2001, 2003 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*********                                                       *********/
-  /*********        WARNING, THIS IS ALPHA CODE, THIS API          *********/
-  /*********    IS DUE TO CHANGE UNTIL STRICTLY NOTIFIED BY THE    *********/
-  /*********            FREETYPE DEVELOPMENT TEAM                  *********/
-  /*********                                                       *********/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-#ifndef __FTSYNTH_H__
-#define __FTSYNTH_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /* This code is completely experimental -- use with care! */
-  /* It will probably be completely rewritten in the future */
-  /* or even integrated into the library.                   */
-  FT_EXPORT( void )
-  FT_GlyphSlot_Embolden( FT_GlyphSlot  slot );
-
-
-  FT_EXPORT( void )
-  FT_GlyphSlot_Oblique( FT_GlyphSlot  slot );
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __FTSYNTH_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftsysio.h b/dependencies64/sfml/extlibs/headers/freetype/ftsysio.h
deleted file mode 100644 (file)
index f8e4954..0000000
+++ /dev/null
@@ -1,195 +0,0 @@
-#ifndef __FT_SYSTEM_IO_H__
-#define __FT_SYSTEM_IO_H__
-
- /************************************************************************/
- /************************************************************************/
- /*****                                                              *****/
- /*****    NOTE: THE CONTENT OF THIS FILE IS NOT CURRENTLY USED      *****/
- /*****          IN NORMAL BUILDS.  CONSIDER IT EXPERIMENTAL.        *****/
- /*****                                                              *****/
- /************************************************************************/
- /************************************************************************/
-
-
- /********************************************************************
-  *
-  *  designing custom streams is a bit different now
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  *
-  */
-
-#include <ft2build.h>
-#include FT_INTERNAL_OBJECT_H
-
-FT_BEGIN_HEADER
-
- /*@*******************************************************************
-  *
-  * @type: FT_Stream
-  *
-  * @description:
-  *   handle to an input stream object. These are also @FT_Object handles
-  */
-  typedef struct FT_StreamRec_*    FT_Stream;
-
-
- /*@*******************************************************************
-  *
-  * @type: FT_Stream_Class
-  *
-  * @description:
-  *   opaque handle to a @FT_Stream_ClassRec class structure describing
-  *   the methods of input streams
-  */
-  typedef const struct FT_Stream_ClassRec_*   FT_Stream_Class;
-
-
- /*@*******************************************************************
-  *
-  * @functype: FT_Stream_ReadFunc
-  *
-  * @description:
-  *   a method used to read bytes from an input stream into memory
-  *
-  * @input:
-  *   stream  :: target stream handle
-  *   buffer  :: target buffer address
-  *   size    :: number of bytes to read
-  *
-  * @return:
-  *   number of bytes effectively read. Must be <= 'size'.
-  */
-  typedef FT_ULong  (*FT_Stream_ReadFunc)( FT_Stream   stream,
-                                           FT_Byte*    buffer,
-                                           FT_ULong    size );
-
-
- /*@*******************************************************************
-  *
-  * @functype: FT_Stream_SeekFunc
-  *
-  * @description:
-  *   a method used to seek to a new position within a stream
-  *
-  * @input:
-  *   stream  :: target stream handle
-  *   pos     :: new read position, from start of stream
-  *
-  * @return:
-  *   error code. 0 means success
-  */
-  typedef FT_Error  (*FT_Stream_SeekFunc)( FT_Stream   stream,
-                                           FT_ULong    pos );
-
-
- /*@*******************************************************************
-  *
-  * @struct: FT_Stream_ClassRec
-  *
-  * @description:
-  *   a structure used to describe an input stream class
-  *
-  * @input:
-  *   clazz       :: root @FT_ClassRec fields
-  *   stream_read :: stream byte read method
-  *   stream_seek :: stream seek method
-  */
-  typedef struct FT_Stream_ClassRec_
-  {
-    FT_ClassRec          clazz;
-    FT_Stream_ReadFunc   stream_read;
-    FT_Stream_SeekFunc   stream_seek;
-
-  } FT_Stream_ClassRec;
-
- /* */
-
-#define  FT_STREAM_CLASS(x)        ((FT_Stream_Class)(x))
-#define  FT_STREAM_CLASS__READ(x)  FT_STREAM_CLASS(x)->stream_read
-#define  FT_STREAM_CLASS__SEEK(x)  FT_STREAM_CLASS(x)->stream_seek;
-
- /*@*******************************************************************
-  *
-  * @struct: FT_StreamRec
-  *
-  * @description:
-  *   the input stream object structure. See @FT_Stream_ClassRec for
-  *   its class descriptor
-  *
-  * @fields:
-  *   object      :: root @FT_ObjectRec fields
-  *   size        :: size of stream in bytes (0 if unknown)
-  *   pos         :: current position within stream
-  *   base        :: for memory-based streams, the address of the stream's
-  *                  first data byte in memory. NULL otherwise
-  *
-  *   cursor      :: the current cursor position within an input stream
-  *                  frame. Only valid within a FT_FRAME_ENTER .. FT_FRAME_EXIT
-  *                  block; NULL otherwise
-  *
-  *   limit       :: the current frame limit within a FT_FRAME_ENTER ..
-  *                  FT_FRAME_EXIT block. NULL otherwise
-  */
-  typedef struct FT_StreamRec_
-  {
-    FT_ObjectRec        object;
-    FT_ULong            size;
-    FT_ULong            pos;
-    const FT_Byte*      base;
-    const FT_Byte*      cursor;
-    const FT_Byte*      limit;
-
-  } FT_StreamRec;
-
- /* some useful macros */
-#define  FT_STREAM(x)    ((FT_Stream)(x))
-#define  FT_STREAM_P(x)  ((FT_Stream*)(x))
-
-#define  FT_STREAM__READ(x)  FT_STREAM_CLASS__READ(FT_OBJECT__CLASS(x))
-#define  FT_STREAM__SEEK(x)  FT_STREAM_CLASS__SEEK(FT_OBJECT__CLASS(x))
-
-#define  FT_STREAM_IS_BASED(x)  ( FT_STREAM(x)->base != NULL )
-
- /* */
-
- /* create new memory-based stream */
-  FT_BASE( FT_Error )   ft_stream_new_memory( const FT_Byte*  stream_base,
-                                              FT_ULong        stream_size,
-                                              FT_Memory       memory,
-                                              FT_Stream      *astream );
-
-  FT_BASE( FT_Error )   ft_stream_new_iso( const char*  pathanme,
-                                           FT_Memory    memory,
-                                           FT_Stream   *astream );
-
-
- /* handle to default stream class implementation for a given build */
- /* this is used by "FT_New_Face"                                   */
- /*                                                                 */
-  FT_APIVAR( FT_Type )   ft_stream_default_type;
-
-FT_END_HEADER
-
-#endif /* __FT_SYSTEM_STREAM_H__ */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftsysmem.h b/dependencies64/sfml/extlibs/headers/freetype/ftsysmem.h
deleted file mode 100644 (file)
index 8de0c4d..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-#ifndef __FT_SYSTEM_MEMORY_H__
-#define __FT_SYSTEM_MEMORY_H__
-
-#include <ft2build.h>
-
-FT_BEGIN_HEADER
-
- /************************************************************************/
- /************************************************************************/
- /*****                                                              *****/
- /*****    NOTE: THE CONTENT OF THIS FILE IS NOT CURRENTLY USED      *****/
- /*****          IN NORMAL BUILDS.  CONSIDER IT EXPERIMENTAL.        *****/
- /*****                                                              *****/
- /************************************************************************/
- /************************************************************************/
-
-
- /*@**********************************************************************
-  *
-  * @type: FT_Memory
-  *
-  * @description:
-  *   opaque handle to a memory manager handle. Note that since FreeType
-  *   2.2, the memory manager structure FT_MemoryRec is hidden to client
-  *   applications.
-  *
-  *   however, you can still define custom allocators easily using the
-  *   @ft_memory_new API
-  */
-  typedef struct FT_MemoryRec_*   FT_Memory;
-
-
- /*@**********************************************************************
-  *
-  * @functype: FT_Memory_AllocFunc
-  *
-  * @description:
-  *   a function used to allocate a block of memory.
-  *
-  * @input:
-  *   size     :: size of blocks in bytes. Always > 0 !!
-  *   mem_data :: memory-manager specific optional argument
-  *               (see @ft_memory_new)
-  *
-  * @return:
-  *   address of new block. NULL in case of memory exhaustion
-  */
-  typedef FT_Pointer  (*FT_Memory_AllocFunc)( FT_ULong   size,
-                                              FT_Pointer mem_data );
-
-
- /*@**********************************************************************
-  *
-  * @functype: FT_Memory_FreeFunc
-  *
-  * @description:
-  *   a function used to release a block of memory created through
-  *   @FT_Memory_AllocFunc or @FT_Memory_ReallocFunc
-  *
-  * @input:
-  *   block    :: address of target memory block. cannot be NULL !!
-  *   mem_data :: memory-manager specific optional argument
-  *               (see @ft_memory_new)
-  */
-  typedef void        (*FT_Memory_FreeFunc) ( FT_Pointer  block,
-                                              FT_Pointer  mem_data );
-
-
- /*@**********************************************************************
-  *
-  * @functype: FT_Memory_ReallocFunc
-  *
-  * @description:
-  *   a function used to reallocate a memory block.
-  *
-  * @input:
-  *   block    :: address of target memory block. cannot be NULL !!
-  *   new_size :: new requested size in bytes
-  *   cur_size :: current block size in bytes
-  *   mem_data :: memory-manager specific optional argument
-  *               (see @ft_memory_new)
-  */
-  typedef FT_Pointer  (*FT_Memory_ReallocFunc)( FT_Pointer   block,
-                                                FT_ULong     new_size,
-                                                FT_ULong     cur_size,
-                                                FT_Pointer   mem_data );
-
-
- /*@**********************************************************************
-  *
-  * @functype: FT_Memory_CreateFunc
-  *
-  * @description:
-  *   a function used to create a @FT_Memory object to model a
-  *   memory manager
-  *
-  * @input:
-  *   size      :: size of memory manager structure in bytes
-  *   init_data :: optional initialisation argument
-  *
-  * @output:
-  *   amem_data :: memory-manager specific argument to block management
-  *                routines.
-  *
-  * @return:
-  *   handle to new memory manager object. NULL in case of failure
-  */
-  typedef FT_Pointer  (*FT_Memory_CreateFunc)( FT_UInt     size,
-                                               FT_Pointer  init_data,
-                                               FT_Pointer *amem_data );
-
-
- /*@**********************************************************************
-  *
-  * @functype: FT_Memory_DestroyFunc
-  *
-  * @description:
-  *   a function used to destroy a given @FT_Memory manager
-  *
-  * @input:
-  *   memory   :: target memory manager handle
-  *   mem_data :: option manager-specific argument
-  */
-  typedef void        (*FT_Memory_DestroyFunc)( FT_Memory  memory,
-                                                FT_Pointer mem_data );
-
-
- /*@**********************************************************************
-  *
-  * @struct: FT_Memory_FuncsRec
-  *
-  * @description:
-  *   a function used to hold all methods of a given memory manager
-  *   implementation.
-  *
-  * @fields:
-  *   mem_alloc   :: block allocation routine
-  *   mem_free    :: block release routine
-  *   mem_realloc :: block re-allocation routine
-  *   mem_create  :: manager creation routine
-  *   mem_destroy :: manager destruction routine
-  */
-  typedef struct FT_Memory_FuncsRec_
-  {
-    FT_Memory_AllocFunc     mem_alloc;
-    FT_Memory_FreeFunc      mem_free;
-    FT_Memory_ReallocFunc   mem_realloc;
-    FT_Memory_CreateFunc    mem_create;
-    FT_Memory_DestroyFunc   mem_destroy;
-
-  } FT_Memory_FuncsRec, *FT_Memory_Funcs;
-
-
- /*@**********************************************************************
-  *
-  * @type: FT_Memory_Funcs
-  *
-  * @description:
-  *   a pointer to a constant @FT_Memory_FuncsRec structure used to
-  *   describe a given memory manager implementation.
-  */
-  typedef const FT_Memory_FuncsRec*  FT_Memory_Funcs;
-
-
- /*@**********************************************************************
-  *
-  * @function: ft_memory_new
-  *
-  * @description:
-  *   create a new memory manager, given a set of memory methods
-  *
-  * @input:
-  *   mem_funcs     :: handle to memory manager implementation descriptor
-  *   mem_init_data :: optional initialisation argument, passed to
-  *                    @FT_Memory_CreateFunc
-  *
-  * @return:
-  *   new memory manager handle. NULL in case of failure
-  */
-  FT_BASE( FT_Memory )
-  ft_memory_new( FT_Memory_Funcs  mem_funcs,
-                 FT_Pointer       mem_init_data );
-
-
- /*@**********************************************************************
-  *
-  * @function: ft_memory_destroy
-  *
-  * @description:
-  *   destroy a given memory manager
-  *
-  * @input:
-  *   memory :: handle to target memory manager
-  */
-  FT_BASE( void )
-  ft_memory_destroy( FT_Memory  memory );
-
-/* */
-
-FT_END_HEADER
-
-#endif /* __FT_SYSTEM_MEMORY_H__ */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftsystem.h b/dependencies64/sfml/extlibs/headers/freetype/ftsystem.h
deleted file mode 100644 (file)
index d1c55f7..0000000
+++ /dev/null
@@ -1,309 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsystem.h                                                             */
-/*                                                                         */
-/*    FreeType low-level system interface definition (specification).      */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTSYSTEM_H__
-#define __FTSYSTEM_H__
-
-
-#include <ft2build.h>
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    system_interface                                                   */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    System Interface                                                   */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    How FreeType manages memory and i/o.                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains various definitions related to memory        */
-  /*    management and i/o access.  You need to understand this            */
-  /*    information if you want to use a custom memory manager or you own  */
-  /*    input i/o streams.                                                 */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*                  M E M O R Y   M A N A G E M E N T                    */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @type:                                                                */
-  /*    FT_Memory                                                          */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A handle to a given memory manager object, defined with a          */
-  /*    @FT_MemoryRec structure.                                           */
-  /*                                                                       */
-  typedef struct FT_MemoryRec_*  FT_Memory;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    FT_Alloc_Func                                                      */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A function used to allocate `size' bytes from `memory'.            */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    memory :: A handle to the source memory manager.                   */
-  /*                                                                       */
-  /*    size   :: The size in bytes to allocate.                           */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    Address of new memory block.  0 in case of failure.                */
-  /*                                                                       */
-  typedef void*
-  (*FT_Alloc_Func)( FT_Memory  memory,
-                    long       size );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    FT_Free_Func                                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A function used to release a given block of memory.                */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    memory :: A handle to the source memory manager.                   */
-  /*                                                                       */
-  /*    block  :: The address of the target memory block.                  */
-  /*                                                                       */
-  typedef void
-  (*FT_Free_Func)( FT_Memory  memory,
-                   void*      block );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    FT_Realloc_Func                                                    */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    a function used to re-allocate a given block of memory.            */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    memory   :: A handle to the source memory manager.                 */
-  /*                                                                       */
-  /*    cur_size :: The block's current size in bytes.                     */
-  /*                                                                       */
-  /*    new_size :: The block's requested new size.                        */
-  /*                                                                       */
-  /*    block    :: The block's current address.                           */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    New block address.  0 in case of memory shortage.                  */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*   In case of error, the old block must still be available.            */
-  /*                                                                       */
-  typedef void*
-  (*FT_Realloc_Func)( FT_Memory  memory,
-                      long       cur_size,
-                      long       new_size,
-                      void*      block );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @struct:                                                              */
-  /*    FT_MemoryRec                                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A structure used to describe a given memory manager to FreeType 2. */
-  /*                                                                       */
-  /* @fields:                                                              */
-  /*    user    :: A generic typeless pointer for user data.               */
-  /*                                                                       */
-  /*    alloc   :: A pointer type to an allocation function.               */
-  /*                                                                       */
-  /*    free    :: A pointer type to an memory freeing function.           */
-  /*                                                                       */
-  /*    realloc :: A pointer type to a reallocation function.              */
-  /*                                                                       */
-  struct  FT_MemoryRec_
-  {
-    void*            user;
-    FT_Alloc_Func    alloc;
-    FT_Free_Func     free;
-    FT_Realloc_Func  realloc;
-  };
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*                       I / O   M A N A G E M E N T                     */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @type:                                                                */
-  /*    FT_Stream                                                          */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A handle to an input stream.                                       */
-  /*                                                                       */
-  typedef struct FT_StreamRec_*  FT_Stream;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @struct:                                                              */
-  /*    FT_StreamDesc                                                      */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A union type used to store either a long or a pointer.  This is    */
-  /*    used to store a file descriptor or a FILE* in an input stream.     */
-  /*                                                                       */
-  typedef union  FT_StreamDesc_
-  {
-    long   value;
-    void*  pointer;
-
-  } FT_StreamDesc;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    FT_Stream_IoFunc                                                   */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A function used to seek and read data from a given input stream.   */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    stream :: A handle to the source stream.                           */
-  /*                                                                       */
-  /*    offset :: The offset of read in stream (always from start).        */
-  /*                                                                       */
-  /*    buffer :: The address of the read buffer.                          */
-  /*                                                                       */
-  /*    count  :: The number of bytes to read from the stream.             */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    The number of bytes effectively read by the stream.                */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    This function might be called to perform a seek or skip operation  */
-  /*    with a `count' of 0.                                               */
-  /*                                                                       */
-  typedef unsigned long
-  (*FT_Stream_IoFunc)( FT_Stream       stream,
-                       unsigned long   offset,
-                       unsigned char*  buffer,
-                       unsigned long   count );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    FT_Stream_CloseFunc                                                */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A function used to close a given input stream.                     */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*   stream :: A handle to the target stream.                            */
-  /*                                                                       */
-  typedef void
-  (*FT_Stream_CloseFunc)( FT_Stream  stream );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @struct:                                                              */
-  /*    FT_StreamRec                                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*   A structure used to describe an input stream.                       */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*   base       :: For memory-based streams, this is the address of the  */
-  /*                 first stream byte in memory.  This field should       */
-  /*                 always be set to NULL for disk-based streams.         */
-  /*                                                                       */
-  /*   size       :: The stream size in bytes.                             */
-  /*                                                                       */
-  /*   pos        :: The current position within the stream.               */
-  /*                                                                       */
-  /*   descriptor :: This field is a union that can hold an integer or a   */
-  /*                 pointer.  It is used by stream implementations to     */
-  /*                 store file descriptors or FILE* pointers.             */
-  /*                                                                       */
-  /*   pathname   :: This field is completely ignored by FreeType.         */
-  /*                 However, it is often useful during debugging to use   */
-  /*                 it to store the stream's filename (where available).  */
-  /*                                                                       */
-  /*   read       :: The stream's input function.                          */
-  /*                                                                       */
-  /*   close      :: The stream;s close function.                          */
-  /*                                                                       */
-  /*   memory     :: The memory manager to use to preload frames.  This is */
-  /*                 set internally by FreeType and shouldn't be touched   */
-  /*                 by stream implementations.                            */
-  /*                                                                       */
-  /*   cursor     :: This field is set and used internally by FreeType     */
-  /*                 when parsing frames.                                  */
-  /*                                                                       */
-  /*   limit      :: This field is set and used internally by FreeType     */
-  /*                 when parsing frames.                                  */
-  /*                                                                       */
-  typedef struct  FT_StreamRec_
-  {
-    unsigned char*       base;
-    unsigned long        size;
-    unsigned long        pos;
-
-    FT_StreamDesc        descriptor;
-    FT_StreamDesc        pathname;
-    FT_Stream_IoFunc     read;
-    FT_Stream_CloseFunc  close;
-
-    FT_Memory            memory;
-    unsigned char*       cursor;
-    unsigned char*       limit;
-
-  } FT_StreamRec;
-
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTSYSTEM_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/fttrigon.h b/dependencies64/sfml/extlibs/headers/freetype/fttrigon.h
deleted file mode 100644 (file)
index 0462265..0000000
+++ /dev/null
@@ -1,315 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  fttrigon.h                                                             */
-/*                                                                         */
-/*    FreeType trigonometric functions (specification).                    */
-/*                                                                         */
-/*  Copyright 2001, 2003 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTTRIGON_H__
-#define __FTTRIGON_H__
-
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @section:                                                             */
-  /*   computations                                                        */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @type:                                                                */
-  /*    FT_Angle                                                           */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    This type is used to model angle values in FreeType.  Note that    */
-  /*    the angle is a 16.16 fixed float value expressed in degrees.       */
-  /*                                                                       */
-  typedef FT_Fixed  FT_Angle;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_ANGLE_PI                                                        */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*   The angle pi expressed in @FT_Angle units.                          */
-  /*                                                                       */
-#define FT_ANGLE_PI  ( 180L << 16 )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_ANGLE_2PI                                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    The angle 2*pi expressed in @FT_Angle units.                       */
-  /*                                                                       */
-#define FT_ANGLE_2PI  ( FT_ANGLE_PI * 2 )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_ANGLE_PI2                                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    The angle pi/2 expressed in @FT_Angle units.                       */
-  /*                                                                       */
-#define FT_ANGLE_PI2  ( FT_ANGLE_PI / 2 )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @macro:                                                               */
-  /*    FT_ANGLE_PI4                                                       */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    The angle pi/4 expressed in @FT_Angle units.                       */
-  /*                                                                       */
-#define FT_ANGLE_PI4  ( FT_ANGLE_PI / 4 )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Sin                                                             */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Return the sinus of a given angle in fixed point format.           */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    angle :: The input angle.                                          */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    The sinus value.                                                   */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    If you need both the sinus and cosinus for a given angle, use the  */
-  /*    function @FT_Vector_Unit.                                          */
-  /*                                                                       */
-  FT_EXPORT( FT_Fixed )
-  FT_Sin( FT_Angle  angle );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Cos                                                             */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Return the cosinus of a given angle in fixed point format.         */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    angle :: The input angle.                                          */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    The cosinus value.                                                 */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    If you need both the sinus and cosinus for a given angle, use the  */
-  /*    function @FT_Vector_Unit.                                          */
-  /*                                                                       */
-  FT_EXPORT( FT_Fixed )
-  FT_Cos( FT_Angle  angle );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Tan                                                             */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Return the tangent of a given angle in fixed point format.         */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    angle :: The input angle.                                          */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    The tangent value.                                                 */
-  /*                                                                       */
-  FT_EXPORT( FT_Fixed )
-  FT_Tan( FT_Angle  angle );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Atan2                                                           */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Return the arc-tangent corresponding to a given vector (x,y) in    */
-  /*    the 2d plane.                                                      */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    x :: The horizontal vector coordinate.                             */
-  /*                                                                       */
-  /*    y :: The vertical vector coordinate.                               */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    The arc-tangent value (i.e. angle).                                */
-  /*                                                                       */
-  FT_EXPORT( FT_Angle )
-  FT_Atan2( FT_Fixed  x,
-            FT_Fixed  y );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Angle_Diff                                                      */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Return the difference between two angles.  The result is always    */
-  /*    constrained to the ]-PI..PI] interval.                             */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    angle1 :: First angle.                                             */
-  /*                                                                       */
-  /*    angle2 :: Second angle.                                            */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    Contrainted value of `value2-value1'.                              */
-  /*                                                                       */
-  FT_EXPORT( FT_Angle )
-  FT_Angle_Diff( FT_Angle  angle1,
-                 FT_Angle  angle2 );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Vector_Unit                                                     */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Return the unit vector corresponding to a given angle.  After the  */
-  /*    call, the value of `vec.x' will be `sin(angle)', and the value of  */
-  /*    `vec.y' will be `cos(angle)'.                                      */
-  /*                                                                       */
-  /*    This function is useful to retrieve both the sinus and cosinus of  */
-  /*    a given angle quickly.                                             */
-  /*                                                                       */
-  /* @output:                                                              */
-  /*    vec   :: The address of target vector.                             */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    angle :: The address of angle.                                     */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Vector_Unit( FT_Vector*  vec,
-                  FT_Angle    angle );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Vector_Rotate                                                   */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Rotate a vector by a given angle.                                  */
-  /*                                                                       */
-  /* @inout:                                                               */
-  /*    vec   :: The address of target vector.                             */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    angle :: The address of angle.                                     */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Vector_Rotate( FT_Vector*  vec,
-                    FT_Angle    angle );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*   FT_Vector_Length                                                    */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*   Return the length of a given vector.                                */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*   vec :: The address of target vector.                                */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*   The vector length, expressed in the same units that the original    */
-  /*   vector coordinates.                                                 */
-  /*                                                                       */
-  FT_EXPORT( FT_Fixed )
-  FT_Vector_Length( FT_Vector*  vec );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Vector_Polarize                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Compute both the length and angle of a given vector.               */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    vec    :: The address of source vector.                            */
-  /*                                                                       */
-  /* @output:                                                              */
-  /*    length :: The vector length.                                       */
-  /*    angle  :: The vector angle.                                        */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Vector_Polarize( FT_Vector*  vec,
-                      FT_Fixed   *length,
-                      FT_Angle   *angle );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @function:                                                            */
-  /*    FT_Vector_From_Polar                                               */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    Compute vector coordinates from a length and angle.                */
-  /*                                                                       */
-  /* @output:                                                              */
-  /*    vec    :: The address of source vector.                            */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    length :: The vector length.                                       */
-  /*    angle  :: The vector angle.                                        */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Vector_From_Polar( FT_Vector*  vec,
-                        FT_Fixed    length,
-                        FT_Angle    angle );
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTTRIGON_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/fttypes.h b/dependencies64/sfml/extlibs/headers/freetype/fttypes.h
deleted file mode 100644 (file)
index 7727ebb..0000000
+++ /dev/null
@@ -1,582 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  fttypes.h                                                              */
-/*                                                                         */
-/*    FreeType simple types definitions (specification only).              */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2004 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTTYPES_H__
-#define __FTTYPES_H__
-
-
-#include <ft2build.h>
-#include FT_CONFIG_CONFIG_H
-#include FT_SYSTEM_H
-#include FT_IMAGE_H
-
-#include <stddef.h>
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    basic_types                                                        */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Basic Data Types                                                   */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    The basic data types defined by the library.                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains the basic data types defined by FreeType 2,  */
-  /*    ranging from simple scalar types to bitmap descriptors.  More      */
-  /*    font-specific structures are defined in a different section.       */
-  /*                                                                       */
-  /* <Order>                                                               */
-  /*    FT_Byte                                                            */
-  /*    FT_Bytes                                                           */
-  /*    FT_Char                                                            */
-  /*    FT_Int                                                             */
-  /*    FT_UInt                                                            */
-  /*    FT_Short                                                           */
-  /*    FT_UShort                                                          */
-  /*    FT_Long                                                            */
-  /*    FT_ULong                                                           */
-  /*    FT_Bool                                                            */
-  /*    FT_Offset                                                          */
-  /*    FT_PtrDist                                                         */
-  /*    FT_String                                                          */
-  /*    FT_Tag                                                             */
-  /*    FT_Error                                                           */
-  /*    FT_Fixed                                                           */
-  /*    FT_Pointer                                                         */
-  /*    FT_Pos                                                             */
-  /*    FT_Vector                                                          */
-  /*    FT_BBox                                                            */
-  /*    FT_Matrix                                                          */
-  /*    FT_FWord                                                           */
-  /*    FT_UFWord                                                          */
-  /*    FT_F2Dot14                                                         */
-  /*    FT_UnitVector                                                      */
-  /*    FT_F26Dot6                                                         */
-  /*                                                                       */
-  /*                                                                       */
-  /*    FT_Generic                                                         */
-  /*    FT_Generic_Finalizer                                               */
-  /*                                                                       */
-  /*    FT_Bitmap                                                          */
-  /*    FT_Pixel_Mode                                                      */
-  /*    FT_Palette_Mode                                                    */
-  /*    FT_Glyph_Format                                                    */
-  /*    FT_IMAGE_TAG                                                       */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Bool                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A typedef of unsigned char, used for simple booleans.              */
-  /*                                                                       */
-  typedef unsigned char  FT_Bool;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_FWord                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A signed 16-bit integer used to store a distance in original font  */
-  /*    units.                                                             */
-  /*                                                                       */
-  typedef signed short  FT_FWord;   /* distance in FUnits */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_UFWord                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An unsigned 16-bit integer used to store a distance in original    */
-  /*    font units.                                                        */
-  /*                                                                       */
-  typedef unsigned short  FT_UFWord;  /* unsigned distance */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Char                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple typedef for the _signed_ char type.                       */
-  /*                                                                       */
-  typedef signed char  FT_Char;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Byte                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple typedef for the _unsigned_ char type.                     */
-  /*                                                                       */
-  typedef unsigned char  FT_Byte;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Bytes                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A typedef for constant memory areas.                               */
-  /*                                                                       */
-  typedef const FT_Byte*  FT_Bytes;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Tag                                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A typedef for 32bit tags (as used in the SFNT format).             */
-  /*                                                                       */
-  typedef FT_UInt32  FT_Tag;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_String                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple typedef for the char type, usually used for strings.      */
-  /*                                                                       */
-  typedef char  FT_String;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Short                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A typedef for signed short.                                        */
-  /*                                                                       */
-  typedef signed short  FT_Short;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_UShort                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A typedef for unsigned short.                                      */
-  /*                                                                       */
-  typedef unsigned short  FT_UShort;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Int                                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A typedef for the int type.                                        */
-  /*                                                                       */
-  typedef signed int  FT_Int;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_UInt                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A typedef for the unsigned int type.                               */
-  /*                                                                       */
-  typedef unsigned int  FT_UInt;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Long                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A typedef for signed long.                                         */
-  /*                                                                       */
-  typedef signed long  FT_Long;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_ULong                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A typedef for unsigned long.                                       */
-  /*                                                                       */
-  typedef unsigned long  FT_ULong;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_F2Dot14                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A signed 2.14 fixed float type used for unit vectors.              */
-  /*                                                                       */
-  typedef signed short  FT_F2Dot14;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_F26Dot6                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A signed 26.6 fixed float type used for vectorial pixel            */
-  /*    coordinates.                                                       */
-  /*                                                                       */
-  typedef signed long  FT_F26Dot6;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Fixed                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This type is used to store 16.16 fixed float values, like scales   */
-  /*    or matrix coefficients.                                            */
-  /*                                                                       */
-  typedef signed long  FT_Fixed;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Error                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The FreeType error code type.  A value of 0 is always interpreted  */
-  /*    as a successful operation.                                         */
-  /*                                                                       */
-  typedef int  FT_Error;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Pointer                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple typedef for a typeless pointer.                           */
-  /*                                                                       */
-  typedef void*  FT_Pointer;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_Offset                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This is equivalent to the ANSI C `size_t' type, i.e. the largest   */
-  /*    _unsigned_ integer type used to express a file size or position,   */
-  /*    or a memory block size.                                            */
-  /*                                                                       */
-  typedef size_t  FT_Offset;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_PtrDist                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This is equivalent to the ANSI C `ptrdiff_t' type, i.e. the        */
-  /*    largest _signed_ integer type used to express the distance         */
-  /*    between two pointers.                                              */
-  /*                                                                       */
-  typedef ft_ptrdiff_t  FT_PtrDist;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_UnitVector                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple structure used to store a 2D vector unit vector.  Uses    */
-  /*    FT_F2Dot14 types.                                                  */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    x :: Horizontal coordinate.                                        */
-  /*                                                                       */
-  /*    y :: Vertical coordinate.                                          */
-  /*                                                                       */
-  typedef struct  FT_UnitVector_
-  {
-    FT_F2Dot14  x;
-    FT_F2Dot14  y;
-
-  } FT_UnitVector;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Matrix                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple structure used to store a 2x2 matrix.  Coefficients are   */
-  /*    in 16.16 fixed float format.  The computation performed is:        */
-  /*                                                                       */
-  /*       {                                                               */
-  /*          x' = x*xx + y*xy                                             */
-  /*          y' = x*yx + y*yy                                             */
-  /*       }                                                               */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    xx :: Matrix coefficient.                                          */
-  /*                                                                       */
-  /*    xy :: Matrix coefficient.                                          */
-  /*                                                                       */
-  /*    yx :: Matrix coefficient.                                          */
-  /*                                                                       */
-  /*    yy :: Matrix coefficient.                                          */
-  /*                                                                       */
-  typedef struct  FT_Matrix_
-  {
-    FT_Fixed  xx, xy;
-    FT_Fixed  yx, yy;
-
-  } FT_Matrix;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Data                                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Read-only binary data represented as a pointer and a length.       */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    pointer :: The data.                                               */
-  /*                                                                       */
-  /*    length  :: The length of the data in bytes.                        */
-  /*                                                                       */
-  typedef struct  FT_Data_
-  {
-    const FT_Byte*  pointer;
-    FT_Int          length;
-
-  } FT_Data;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_Generic_Finalizer                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Describes a function used to destroy the `client' data of any      */
-  /*    FreeType object.  See the description of the FT_Generic type for   */
-  /*    details of usage.                                                  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    The address of the FreeType object which is under finalization.    */
-  /*    Its client data is accessed through its `generic' field.           */
-  /*                                                                       */
-  typedef void  (*FT_Generic_Finalizer)(void*  object);
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Generic                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Client applications often need to associate their own data to a    */
-  /*    variety of FreeType core objects.  For example, a text layout API  */
-  /*    might want to associate a glyph cache to a given size object.      */
-  /*                                                                       */
-  /*    Most FreeType object contains a `generic' field, of type           */
-  /*    FT_Generic, which usage is left to client applications and font    */
-  /*    servers.                                                           */
-  /*                                                                       */
-  /*    It can be used to store a pointer to client-specific data, as well */
-  /*    as the address of a `finalizer' function, which will be called by  */
-  /*    FreeType when the object is destroyed (for example, the previous   */
-  /*    client example would put the address of the glyph cache destructor */
-  /*    in the `finalizer' field).                                         */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    data      :: A typeless pointer to any client-specified data. This */
-  /*                 field is completely ignored by the FreeType library.  */
-  /*                                                                       */
-  /*    finalizer :: A pointer to a `generic finalizer' function, which    */
-  /*                 will be called when the object is destroyed.  If this */
-  /*                 field is set to NULL, no code will be called.         */
-  /*                                                                       */
-  typedef struct  FT_Generic_
-  {
-    void*                 data;
-    FT_Generic_Finalizer  finalizer;
-
-  } FT_Generic;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Macro>                                                               */
-  /*    FT_MAKE_TAG                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This macro converts four letter tags which are used to label       */
-  /*    TrueType tables into an unsigned long to be used within FreeType.  */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The produced values *must* be 32bit integers.  Don't redefine this */
-  /*    macro.                                                             */
-  /*                                                                       */
-#define FT_MAKE_TAG( _x1, _x2, _x3, _x4 ) \
-          ( ( (FT_ULong)_x1 << 24 ) |     \
-            ( (FT_ULong)_x2 << 16 ) |     \
-            ( (FT_ULong)_x3 <<  8 ) |     \
-              (FT_ULong)_x4         )
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*                                                                       */
-  /*                    L I S T   M A N A G E M E N T                      */
-  /*                                                                       */
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    list_processing                                                    */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_ListNode                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*     Many elements and objects in FreeType are listed through a        */
-  /*     FT_List record (see FT_ListRec).  As its name suggests, a         */
-  /*     FT_ListNode is a handle to a single list element.                 */
-  /*                                                                       */
-  typedef struct FT_ListNodeRec_*  FT_ListNode;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    FT_List                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a list record (see FT_ListRec).                        */
-  /*                                                                       */
-  typedef struct FT_ListRec_*  FT_List;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_ListNodeRec                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to hold a single list element.                    */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    prev :: The previous element in the list.  NULL if first.          */
-  /*                                                                       */
-  /*    next :: The next element in the list.  NULL if last.               */
-  /*                                                                       */
-  /*    data :: A typeless pointer to the listed object.                   */
-  /*                                                                       */
-  typedef struct  FT_ListNodeRec_
-  {
-    FT_ListNode  prev;
-    FT_ListNode  next;
-    void*        data;
-
-  } FT_ListNodeRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_ListRec                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to hold a simple doubly-linked list.  These are   */
-  /*    used in many parts of FreeType.                                    */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    head :: The head (first element) of doubly-linked list.            */
-  /*                                                                       */
-  /*    tail :: The tail (last element) of doubly-linked list.             */
-  /*                                                                       */
-  typedef struct  FT_ListRec_
-  {
-    FT_ListNode  head;
-    FT_ListNode  tail;
-
-  } FT_ListRec;
-
-
-  /* */
-
-#define FT_IS_EMPTY( list )  ( (list).head == 0 )
-
-  /* return base error code (without module-specific prefix) */
-#define FT_ERROR_BASE( x )    ( (x) & 0xFF )
-
-  /* return module error code */
-#define FT_ERROR_MODULE( x )  ( (x) & 0xFF00U )
-
-#define FT_BOOL( x )  ( (FT_Bool)( x ) )
-
-FT_END_HEADER
-
-#endif /* __FTTYPES_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftwinfnt.h b/dependencies64/sfml/extlibs/headers/freetype/ftwinfnt.h
deleted file mode 100644 (file)
index 355b7e9..0000000
+++ /dev/null
@@ -1,257 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftwinfnt.h                                                             */
-/*                                                                         */
-/*    FreeType API for accessing Windows fnt-specific data.                */
-/*                                                                         */
-/*  Copyright 2003, 2004 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTWINFNT_H__
-#define __FTWINFNT_H__
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    winfnt_fonts                                                       */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Window FNT Files                                                   */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Windows FNT specific API.                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains the declaration of Windows FNT specific      */
-  /*    functions.                                                         */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************
-   *
-   * @enum:
-   *   FT_WinFNT_ID_XXX
-   *
-   * @description:
-   *   A list of valid values for the `charset' byte in
-   *   @FT_WinFNT_HeaderRec.  Exact mapping tables for the various cpXXXX
-   *   encodings (except for cp1361) can be found at ftp://ftp.unicode.org
-   *   in the MAPPINGS/VENDORS/MICSFT/WINDOWS subdirectory.  cp1361 is
-   *   roughly a superset of MAPPINGS/OBSOLETE/EASTASIA/KSC/JOHAB.TXT.
-   *
-   * @values:
-   *   FT_WinFNT_ID_DEFAULT ::
-   *     This is used for font enumeration and font creation as a 
-   *     `don't care' value.  Valid font files don't contain this value.
-   *     When querying for information about the character set of the font
-   *     that is currently selected into a specified device context, this
-   *     return value (of the related Windows API) simply denotes failure.
-   *
-   *   FT_WinFNT_ID_SYMBOL ::
-   *     There is no known mapping table available.
-   *
-   *   FT_WinFNT_ID_MAC ::
-   *     Mac Roman encoding.
-   *
-   *   FT_WinFNT_ID_OEM ::
-   *     From Michael Pöttgen <michael@poettgen.de>:
-   *       The `Windows Font Mapping' article says that FT_WinFNT_ID_OEM
-   *       is used for the charset of vector fonts, like `modern.fon',
-   *       `roman.fon', and `script.fon' on Windows.
-   *
-   *       The `CreateFont' documentation says: The FT_WinFNT_ID_OEM value
-   *       specifies a character set that is operating-system dependent.
-   *
-   *       The `IFIMETRICS' documentation from the `Windows Driver
-   *       Development Kit' says: This font supports an OEM-specific
-   *       character set.  The OEM character set is system dependent.
-   *
-   *       In general OEM, as opposed to ANSI (i.e., cp1252), denotes the
-   *       second default codepage that most international versions of
-   *       Windows have.  It is one of the OEM codepages from
-   *
-   *         http://www.microsoft.com/globaldev/reference/cphome.mspx,
-   *    
-   *       and is used for the `DOS boxes', to support legacy applications.
-   *       A German Windows version for example usually uses ANSI codepage
-   *       1252 and OEM codepage 850.
-   *
-   *   FT_WinFNT_ID_CP874 ::
-   *     A superset of Thai TIS 620 and ISO 8859-11.
-   *
-   *   FT_WinFNT_ID_CP932 ::
-   *     A superset of Japanese Shift-JIS (with minor deviations).
-   *
-   *   FT_WinFNT_ID_CP936 ::
-   *     A superset of simplified Chinese GB 2312-1980 (with different
-   *     ordering and minor deviations).
-   *
-   *   FT_WinFNT_ID_CP949 ::
-   *     A superset of Korean Hangul KS C 5601-1987 (with different
-   *     ordering and minor deviations).
-   *
-   *   FT_WinFNT_ID_CP950 ::
-   *     A superset of traditional Chinese Big 5 ETen (with different
-   *     ordering and minor deviations).
-   *
-   *   FT_WinFNT_ID_CP1250 ::
-   *     A superset of East European ISO 8859-2 (with slightly different
-   *     ordering).
-   *
-   *   FT_WinFNT_ID_CP1251 ::
-   *     A superset of Russian ISO 8859-5 (with different ordering).
-   *
-   *   FT_WinFNT_ID_CP1252 ::
-   *     ANSI encoding.  A superset of ISO 8859-1.
-   *
-   *   FT_WinFNT_ID_CP1253 ::
-   *     A superset of Greek ISO 8859-7 (with minor modifications).
-   *     
-   *   FT_WinFNT_ID_CP1254 ::
-   *     A superset of Turkish ISO 8859-9.
-   *     
-   *   FT_WinFNT_ID_CP1255 ::
-   *     A superset of Hebrew ISO 8859-8 (with some modifications).
-   *
-   *   FT_WinFNT_ID_CP1256 ::
-   *     A superset of Arabic ISO 8859-6 (with different ordering).
-   *
-   *   FT_WinFNT_ID_CP1257 ::
-   *     A superset of Baltic ISO 8859-13 (with some deviations).
-   *
-   *   FT_WinFNT_ID_CP1258 ::
-   *     For Vietnamese.  This encoding doesn't cover all necessary
-   *     characters.
-   *
-   *   FT_WinFNT_ID_CP1361 ::
-   *     Korean (Johab).
-   */
-
-#define FT_WinFNT_ID_CP1252    0
-#define FT_WinFNT_ID_DEFAULT   1
-#define FT_WinFNT_ID_SYMBOL    2
-#define FT_WinFNT_ID_MAC      77
-#define FT_WinFNT_ID_CP932   128
-#define FT_WinFNT_ID_CP949   129
-#define FT_WinFNT_ID_CP1361  130
-#define FT_WinFNT_ID_CP936   134
-#define FT_WinFNT_ID_CP950   136
-#define FT_WinFNT_ID_CP1253  161
-#define FT_WinFNT_ID_CP1254  162
-#define FT_WinFNT_ID_CP1258  163
-#define FT_WinFNT_ID_CP1255  177
-#define FT_WinFNT_ID_CP1256  178
-#define FT_WinFNT_ID_CP1257  186
-#define FT_WinFNT_ID_CP1251  204
-#define FT_WinFNT_ID_CP874   222
-#define FT_WinFNT_ID_CP1250  238
-#define FT_WinFNT_ID_OEM     255
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_WinFNT_HeaderRec                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Windows FNT Header info.                                           */
-  /*                                                                       */
-  typedef struct  FT_WinFNT_HeaderRec_
-  {
-    FT_UShort  version;
-    FT_ULong   file_size;
-    FT_Byte    copyright[60];
-    FT_UShort  file_type;
-    FT_UShort  nominal_point_size;
-    FT_UShort  vertical_resolution;
-    FT_UShort  horizontal_resolution;
-    FT_UShort  ascent;
-    FT_UShort  internal_leading;
-    FT_UShort  external_leading;
-    FT_Byte    italic;
-    FT_Byte    underline;
-    FT_Byte    strike_out;
-    FT_UShort  weight;
-    FT_Byte    charset;
-    FT_UShort  pixel_width;
-    FT_UShort  pixel_height;
-    FT_Byte    pitch_and_family;
-    FT_UShort  avg_width;
-    FT_UShort  max_width;
-    FT_Byte    first_char;
-    FT_Byte    last_char;
-    FT_Byte    default_char;
-    FT_Byte    break_char;
-    FT_UShort  bytes_per_row;
-    FT_ULong   device_offset;
-    FT_ULong   face_name_offset;
-    FT_ULong   bits_pointer;
-    FT_ULong   bits_offset;
-    FT_Byte    reserved;
-    FT_ULong   flags;
-    FT_UShort  A_space;
-    FT_UShort  B_space;
-    FT_UShort  C_space;
-    FT_UShort  color_table_offset;
-    FT_ULong   reserved1[4];
-
-  } FT_WinFNT_HeaderRec, *FT_WinFNT_Header;
-
-
- /**********************************************************************
-  *
-  * @function:
-  *    FT_Get_WinFNT_Header
-  *
-  * @description:
-  *    Retrieve a Windows FNT font info header.
-  *
-  * @input:
-  *    face    :: A handle to the input face.
-  *
-  * @output:
-  *    aheader :: The WinFNT header.
-  *
-  * @return:
-  *   FreeType error code.  0 means success.
-  *
-  * @note:
-  *   This function only works with Windows FNT faces, returning an error
-  *   otherwise.
-  */
-  FT_EXPORT( FT_Error )
-  FT_Get_WinFNT_Header( FT_Face               face,
-                        FT_WinFNT_HeaderRec  *aheader );
-
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __FTWINFNT_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ftxf86.h b/dependencies64/sfml/extlibs/headers/freetype/ftxf86.h
deleted file mode 100644 (file)
index 3362883..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftxf86.h                                                               */
-/*                                                                         */
-/*    Support functions for X11.                                           */
-/*                                                                         */
-/*  Copyright 2002, 2003, 2004 by                                          */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTXF86_H__
-#define __FTXF86_H__
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-  /* this comment is intentionally disabled for now, to prevent this       */
-  /* function from appearing in the API Reference.                         */
-
-  /*@***********************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_X11_Font_Format                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Return a string describing the format of a given face as an X11    */
-  /*    FONT_PROPERTY.  It should only be used by the FreeType 2 font      */
-  /*    backend of the XFree86 font server.                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: Input face handle.                                         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Font format string.  NULL in case of error.                        */
-  /*                                                                       */
-  FT_EXPORT( const char* )
-  FT_Get_X11_Font_Format( FT_Face  face );
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __FTXF86_H__ */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/autohint.h b/dependencies64/sfml/extlibs/headers/freetype/internal/autohint.h
deleted file mode 100644 (file)
index 22340af..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  autohint.h                                                             */
-/*                                                                         */
-/*    High-level `autohint' module-specific interface (specification).     */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* The auto-hinter is used to load and automatically hint glyphs if a    */
-  /* format-specific hinter isn't available.                               */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __AUTOHINT_H__
-#define __AUTOHINT_H__
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* A small technical note regarding automatic hinting in order to        */
-  /* clarify this module interface.                                        */
-  /*                                                                       */
-  /* An automatic hinter might compute two kinds of data for a given face: */
-  /*                                                                       */
-  /* - global hints: Usually some metrics that describe global properties  */
-  /*                 of the face.  It is computed by scanning more or less */
-  /*                 agressively the glyphs in the face, and thus can be   */
-  /*                 very slow to compute (even if the size of global      */
-  /*                 hints is really small).                               */
-  /*                                                                       */
-  /* - glyph hints:  These describe some important features of the glyph   */
-  /*                 outline, as well as how to align them.  They are      */
-  /*                 generally much faster to compute than global hints.   */
-  /*                                                                       */
-  /* The current FreeType auto-hinter does a pretty good job while         */
-  /* performing fast computations for both global and glyph hints.         */
-  /* However, we might be interested in introducing more complex and       */
-  /* powerful algorithms in the future, like the one described in the John */
-  /* D. Hobby paper, which unfortunately requires a lot more horsepower.   */
-  /*                                                                       */
-  /* Because a sufficiently sophisticated font management system would     */
-  /* typically implement an LRU cache of opened face objects to reduce     */
-  /* memory usage, it is a good idea to be able to avoid recomputing       */
-  /* global hints every time the same face is re-opened.                   */
-  /*                                                                       */
-  /* We thus provide the ability to cache global hints outside of the face */
-  /* object, in order to speed up font re-opening time.  Of course, this   */
-  /* feature is purely optional, so most client programs won't even notice */
-  /* it.                                                                   */
-  /*                                                                       */
-  /* I initially thought that it would be a good idea to cache the glyph   */
-  /* hints too.  However, my general idea now is that if you really need   */
-  /* to cache these too, you are simply in need of a new font format,      */
-  /* where all this information could be stored within the font file and   */
-  /* decoded on the fly.                                                   */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-
-FT_BEGIN_HEADER
-
-
-  typedef struct FT_AutoHinterRec_  *FT_AutoHinter;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_AutoHinter_GlobalGetFunc                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Retrieves the global hints computed for a given face object the    */
-  /*    resulting data is dissociated from the face and will survive a     */
-  /*    call to FT_Done_Face().  It must be discarded through the API      */
-  /*    FT_AutoHinter_GlobalDoneFunc().                                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    hinter        :: A handle to the source auto-hinter.               */
-  /*                                                                       */
-  /*    face          :: A handle to the source face object.               */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    global_hints  :: A typeless pointer to the global hints.           */
-  /*                                                                       */
-  /*    global_len    :: The size in bytes of the global hints.            */
-  /*                                                                       */
-  typedef void
-  (*FT_AutoHinter_GlobalGetFunc)( FT_AutoHinter  hinter,
-                                  FT_Face        face,
-                                  void**         global_hints,
-                                  long*          global_len );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_AutoHinter_GlobalDoneFunc                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Discards the global hints retrieved through                        */
-  /*    FT_AutoHinter_GlobalGetFunc().  This is the only way these hints   */
-  /*    are freed from memory.                                             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    hinter :: A handle to the auto-hinter module.                      */
-  /*                                                                       */
-  /*    global :: A pointer to retrieved global hints to discard.          */
-  /*                                                                       */
-  typedef void
-  (*FT_AutoHinter_GlobalDoneFunc)( FT_AutoHinter  hinter,
-                                   void*          global );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_AutoHinter_GlobalResetFunc                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used to recompute the global metrics in a given   */
-  /*    font.  This is useful when global font data changes (e.g. Multiple */
-  /*    Masters fonts where blend coordinates change).                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    hinter :: A handle to the source auto-hinter.                      */
-  /*                                                                       */
-  /*    face   :: A handle to the face.                                    */
-  /*                                                                       */
-  typedef void
-  (*FT_AutoHinter_GlobalResetFunc)( FT_AutoHinter  hinter,
-                                    FT_Face        face );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    FT_AutoHinter_GlyphLoadFunc                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used to load, scale, and automatically hint a     */
-  /*    glyph from a given face.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face        :: A handle to the face.                               */
-  /*                                                                       */
-  /*    glyph_index :: The glyph index.                                    */
-  /*                                                                       */
-  /*    load_flags  :: The load flags.                                     */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function is capable of loading composite glyphs by hinting    */
-  /*    each sub-glyph independently (which improves quality).             */
-  /*                                                                       */
-  /*    It will call the font driver with FT_Load_Glyph(), with            */
-  /*    FT_LOAD_NO_SCALE set.                                              */
-  /*                                                                       */
-  typedef FT_Error
-  (*FT_AutoHinter_GlyphLoadFunc)( FT_AutoHinter  hinter,
-                                  FT_GlyphSlot   slot,
-                                  FT_Size        size,
-                                  FT_UInt        glyph_index,
-                                  FT_Int32       load_flags );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_AutoHinter_ServiceRec                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The auto-hinter module's interface.                                */
-  /*                                                                       */
-  typedef struct  FT_AutoHinter_ServiceRec_
-  {
-    FT_AutoHinter_GlobalResetFunc  reset_face;
-    FT_AutoHinter_GlobalGetFunc    get_global_hints;
-    FT_AutoHinter_GlobalDoneFunc   done_global_hints;
-    FT_AutoHinter_GlyphLoadFunc    load_glyph;
-
-  } FT_AutoHinter_ServiceRec, *FT_AutoHinter_Service;
-
-
-FT_END_HEADER
-
-#endif /* __AUTOHINT_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftcalc.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftcalc.h
deleted file mode 100644 (file)
index 0df502c..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcalc.h                                                               */
-/*                                                                         */
-/*    Arithmetic computations (specification).                             */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTCALC_H__
-#define __FTCALC_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_FixedSqrt                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Computes the square root of a 16.16 fixed point value.             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    x :: The value to compute the root for.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result of `sqrt(x)'.                                           */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function is not very fast.                                    */
-  /*                                                                       */
-  FT_EXPORT( FT_Int32 )
-  FT_SqrtFixed( FT_Int32  x );
-
-
-#define SQRT_32( x )  FT_Sqrt32( x )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Sqrt32                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Computes the square root of an Int32 integer (which will be        */
-  /*    handled as an unsigned long value).                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    x :: The value to compute the root for.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result of `sqrt(x)'.                                           */
-  /*                                                                       */
-  FT_EXPORT( FT_Int32 )
-  FT_Sqrt32( FT_Int32  x );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* FT_MulDiv() and FT_MulFix() are declared in freetype.h.               */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_MulDiv_No_Round                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A very simple function used to perform the computation `(a*b)/c'   */
-  /*    (without rounding) with maximal accuracy (it uses a 64-bit         */
-  /*    intermediate integer whenever necessary).                          */
-  /*                                                                       */
-  /*    This function isn't necessarily as fast as some processor specific */
-  /*    operations, but is at least completely portable.                   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    a :: The first multiplier.                                         */
-  /*    b :: The second multiplier.                                        */
-  /*    c :: The divisor.                                                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The result of `(a*b)/c'.  This function never traps when trying to */
-  /*    divide by zero; it simply returns `MaxInt' or `MinInt' depending   */
-  /*    on the signs of `a' and `b'.                                       */
-  /*                                                                       */
-  FT_BASE( FT_Long )
-  FT_MulDiv_No_Round( FT_Long  a,
-                      FT_Long  b,
-                      FT_Long  c );
-
-#endif /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
-
-
-#define INT_TO_F26DOT6( x )    ( (FT_Long)(x) << 6  )
-#define INT_TO_F2DOT14( x )    ( (FT_Long)(x) << 14 )
-#define INT_TO_FIXED( x )      ( (FT_Long)(x) << 16 )
-#define F2DOT14_TO_FIXED( x )  ( (FT_Long)(x) << 2  )
-#define FLOAT_TO_FIXED( x )    ( (FT_Long)( x * 65536.0 ) )
-
-#define ROUND_F26DOT6( x )     ( x >= 0 ? (    ( (x) + 32 ) & -64 )     \
-                                        : ( -( ( 32 - (x) ) & -64 ) ) )
-
-
-FT_END_HEADER
-
-#endif /* __FTCALC_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftdebug.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftdebug.h
deleted file mode 100644 (file)
index ce142c5..0000000
+++ /dev/null
@@ -1,244 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftdebug.h                                                              */
-/*                                                                         */
-/*    Debugging and logging component (specification).                     */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2004 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/*                                                                         */
-/*  IMPORTANT: A description of FreeType's debugging support can be        */
-/*             found in "docs/DEBUG.TXT".  Read it if you need to use or   */
-/*             understand this code.                                       */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTDEBUG_H__
-#define __FTDEBUG_H__
-
-
-#include <ft2build.h>
-#include FT_CONFIG_CONFIG_H
-#include FT_FREETYPE_H
-
-
-FT_BEGIN_HEADER
-
-
-  /* force the definition of FT_DEBUG_LEVEL_ERROR if FT_DEBUG_LEVEL_TRACE */
-  /* is already defined; this simplifies the following #ifdefs            */
-  /*                                                                      */
-#ifdef FT_DEBUG_LEVEL_TRACE
-#undef  FT_DEBUG_LEVEL_ERROR
-#define FT_DEBUG_LEVEL_ERROR
-#endif
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Define the trace enums as well as the trace levels array when they    */
-  /* are needed.                                                           */
-  /*                                                                       */
-  /*************************************************************************/
-
-#ifdef FT_DEBUG_LEVEL_TRACE
-
-#define FT_TRACE_DEF( x )  trace_ ## x ,
-
-  /* defining the enumeration */
-  typedef enum
-  {
-#include FT_INTERNAL_TRACE_H
-    trace_count
-
-  } FT_Trace;
-
-
-  /* defining the array of trace levels, provided by `src/base/ftdebug.c' */
-  extern int  ft_trace_levels[trace_count];
-
-#undef FT_TRACE_DEF
-
-#endif /* FT_DEBUG_LEVEL_TRACE */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Define the FT_TRACE macro                                             */
-  /*                                                                       */
-  /* IMPORTANT!                                                            */
-  /*                                                                       */
-  /* Each component must define the macro FT_COMPONENT to a valid FT_Trace */
-  /* value before using any TRACE macro.                                   */
-  /*                                                                       */
-  /*************************************************************************/
-
-#ifdef FT_DEBUG_LEVEL_TRACE
-
-#define FT_TRACE( level, varformat )                      \
-          do                                              \
-          {                                               \
-            if ( ft_trace_levels[FT_COMPONENT] >= level ) \
-              FT_Message varformat;                       \
-          } while ( 0 )
-
-#else /* !FT_DEBUG_LEVEL_TRACE */
-
-#define FT_TRACE( level, varformat )  do ; while ( 0 )      /* nothing */
-
-#endif /* !FT_DEBUG_LEVEL_TRACE */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Trace_Get_Count                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Return the number of available trace components.                   */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The number of trace components.  0 if FreeType 2 is not built with */
-  /*    FT_DEBUG_LEVEL_TRACE definition.                                   */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function may be useful if you want to access elements of      */
-  /*    the internal `ft_trace_levels' array by an index.                  */
-  /*                                                                       */
-  FT_EXPORT( FT_Int )
-  FT_Trace_Get_Count( void );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Trace_Get_Name                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Return the name of a trace component.                              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    The index of the trace component.                                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The name of the trace component.  This is a statically allocated   */
-  /*    C string, so do not free it after use.  NULL if FreeType 2 is not  */
-  /*    built with FT_DEBUG_LEVEL_TRACE definition.                        */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Use @FT_Trace_Get_Count to get the number of available trace       */
-  /*    components.                                                        */
-  /*                                                                       */
-  /*    This function may be useful if you want to control FreeType 2's    */
-  /*    debug level in your appliaciton.                                   */
-  /*                                                                       */
-  FT_EXPORT( const char * )
-  FT_Trace_Get_Name( FT_Int  idx );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* You need two opening resp. closing parentheses!                       */
-  /*                                                                       */
-  /* Example: FT_TRACE0(( "Value is %i", foo ))                            */
-  /*                                                                       */
-  /*************************************************************************/
-
-#define FT_TRACE0( varformat )  FT_TRACE( 0, varformat )
-#define FT_TRACE1( varformat )  FT_TRACE( 1, varformat )
-#define FT_TRACE2( varformat )  FT_TRACE( 2, varformat )
-#define FT_TRACE3( varformat )  FT_TRACE( 3, varformat )
-#define FT_TRACE4( varformat )  FT_TRACE( 4, varformat )
-#define FT_TRACE5( varformat )  FT_TRACE( 5, varformat )
-#define FT_TRACE6( varformat )  FT_TRACE( 6, varformat )
-#define FT_TRACE7( varformat )  FT_TRACE( 7, varformat )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*  Define the FT_ERROR macro                                            */
-  /*                                                                       */
-  /*************************************************************************/
-
-#ifdef FT_DEBUG_LEVEL_ERROR
-
-#define FT_ERROR( varformat )  FT_Message  varformat
-
-#else  /* !FT_DEBUG_LEVEL_ERROR */
-
-#define FT_ERROR( varformat )  do ; while ( 0 )      /* nothing */
-
-#endif /* !FT_DEBUG_LEVEL_ERROR */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Define the FT_ASSERT macro                                            */
-  /*                                                                       */
-  /*************************************************************************/
-
-#ifdef FT_DEBUG_LEVEL_ERROR
-
-#define FT_ASSERT( condition )                                      \
-          do                                                        \
-          {                                                         \
-            if ( !( condition ) )                                   \
-              FT_Panic( "assertion failed on line %d of file %s\n", \
-                        __LINE__, __FILE__ );                       \
-          } while ( 0 )
-
-#else /* !FT_DEBUG_LEVEL_ERROR */
-
-#define FT_ASSERT( condition )  do ; while ( 0 )
-
-#endif /* !FT_DEBUG_LEVEL_ERROR */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*  Define 'FT_Message' and 'FT_Panic' when needed                       */
-  /*                                                                       */
-  /*************************************************************************/
-
-#ifdef FT_DEBUG_LEVEL_ERROR
-
-#include "stdio.h"  /* for vprintf() */
-
-  /* print a message */
-  FT_EXPORT( void )
-  FT_Message( const char*  fmt, ... );
-
-  /* print a message and exit */
-  FT_EXPORT( void )
-  FT_Panic( const char*  fmt, ... );
-
-#endif /* FT_DEBUG_LEVEL_ERROR */
-
-
-  FT_BASE( void )
-  ft_debug_init( void );
-
-
-#if defined( _MSC_VER )      /* Visual C++ (and Intel C++) */
-
-  /* we disable the warning `conditional expression is constant' here */
-  /* in order to compile cleanly with the maximum level of warnings   */
-#pragma warning( disable : 4127 )
-
-#endif /* _MSC_VER */
-
-
-FT_END_HEADER
-
-#endif /* __FTDEBUG_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftdriver.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftdriver.h
deleted file mode 100644 (file)
index 02f585d..0000000
+++ /dev/null
@@ -1,206 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftdriver.h                                                             */
-/*                                                                         */
-/*    FreeType font driver interface (specification).                      */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTDRIVER_H__
-#define __FTDRIVER_H__
-
-
-#include <ft2build.h>
-#include FT_MODULE_H
-
-
-FT_BEGIN_HEADER
-
-
-  typedef FT_Error
-  (*FT_Face_InitFunc)( FT_Stream      stream,
-                       FT_Face        face,
-                       FT_Int         typeface_index,
-                       FT_Int         num_params,
-                       FT_Parameter*  parameters );
-
-  typedef void
-  (*FT_Face_DoneFunc)( FT_Face  face );
-
-
-  typedef FT_Error
-  (*FT_Size_InitFunc)( FT_Size  size );
-
-  typedef void
-  (*FT_Size_DoneFunc)( FT_Size  size );
-
-
-  typedef FT_Error
-  (*FT_Slot_InitFunc)( FT_GlyphSlot  slot );
-
-  typedef void
-  (*FT_Slot_DoneFunc)( FT_GlyphSlot  slot );
-
-
-  typedef FT_Error
-  (*FT_Size_ResetPointsFunc)( FT_Size     size,
-                              FT_F26Dot6  char_width,
-                              FT_F26Dot6  char_height,
-                              FT_UInt     horz_resolution,
-                              FT_UInt     vert_resolution );
-
-  typedef FT_Error
-  (*FT_Size_ResetPixelsFunc)( FT_Size  size,
-                              FT_UInt  pixel_width,
-                              FT_UInt  pixel_height );
-
-  typedef FT_Error
-  (*FT_Slot_LoadFunc)( FT_GlyphSlot  slot,
-                       FT_Size       size,
-                       FT_UInt       glyph_index,
-                       FT_Int32      load_flags );
-
-
-  typedef FT_UInt
-  (*FT_CharMap_CharIndexFunc)( FT_CharMap  charmap,
-                               FT_Long     charcode );
-
-  typedef FT_Long
-  (*FT_CharMap_CharNextFunc)( FT_CharMap  charmap,
-                              FT_Long     charcode );
-
-  typedef FT_Error
-  (*FT_Face_GetKerningFunc)( FT_Face     face,
-                             FT_UInt     left_glyph,
-                             FT_UInt     right_glyph,
-                             FT_Vector*  kerning );
-
-
-  typedef FT_Error
-  (*FT_Face_AttachFunc)( FT_Face    face,
-                         FT_Stream  stream );
-
-
-  typedef FT_Error
-  (*FT_Face_GetAdvancesFunc)( FT_Face     face,
-                              FT_UInt     first,
-                              FT_UInt     count,
-                              FT_Bool     vertical,
-                              FT_UShort*  advances );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Driver_ClassRec                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The font driver class.  This structure mostly contains pointers to */
-  /*    driver methods.                                                    */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    root             :: The parent module.                             */
-  /*                                                                       */
-  /*    face_object_size :: The size of a face object in bytes.            */
-  /*                                                                       */
-  /*    size_object_size :: The size of a size object in bytes.            */
-  /*                                                                       */
-  /*    slot_object_size :: The size of a glyph object in bytes.           */
-  /*                                                                       */
-  /*    init_face        :: The format-specific face constructor.          */
-  /*                                                                       */
-  /*    done_face        :: The format-specific face destructor.           */
-  /*                                                                       */
-  /*    init_size        :: The format-specific size constructor.          */
-  /*                                                                       */
-  /*    done_size        :: The format-specific size destructor.           */
-  /*                                                                       */
-  /*    init_slot        :: The format-specific slot constructor.          */
-  /*                                                                       */
-  /*    done_slot        :: The format-specific slot destructor.           */
-  /*                                                                       */
-  /*    set_char_sizes   :: A handle to a function used to set the new     */
-  /*                        character size in points + resolution.  Can be */
-  /*                        set to 0 to indicate default behaviour.        */
-  /*                                                                       */
-  /*    set_pixel_sizes  :: A handle to a function used to set the new     */
-  /*                        character size in pixels.  Can be set to 0 to  */
-  /*                        indicate default behaviour.                    */
-  /*                                                                       */
-  /*    load_glyph       :: A function handle to load a given glyph image  */
-  /*                        in a slot.  This field is mandatory!           */
-  /*                                                                       */
-  /*    get_char_index   :: A function handle to return the glyph index of */
-  /*                        a given character for a given charmap.  This   */
-  /*                        field is mandatory!                            */
-  /*                                                                       */
-  /*    get_kerning      :: A function handle to return the unscaled       */
-  /*                        kerning for a given pair of glyphs.  Can be    */
-  /*                        set to 0 if the format doesn't support         */
-  /*                        kerning.                                       */
-  /*                                                                       */
-  /*    attach_file      :: This function handle is used to read           */
-  /*                        additional data for a face from another        */
-  /*                        file/stream.  For example, this can be used to */
-  /*                        add data from AFM or PFM files on a Type 1     */
-  /*                        face, or a CIDMap on a CID-keyed face.         */
-  /*                                                                       */
-  /*    get_advances     :: A function handle used to return advance       */
-  /*                        widths of 'count' glyphs (in font units),      */
-  /*                        starting at `first'.  The `vertical' flag must */
-  /*                        be set to get vertical advance heights.  The   */
-  /*                        `advances' buffer is caller-allocated.         */
-  /*                        Currently not implemented.  The idea of this   */
-  /*                        function is to be able to perform              */
-  /*                        device-independent text layout without loading */
-  /*                        a single glyph image.                          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Most function pointers, with the exception of `load_glyph' and     */
-  /*    `get_char_index' can be set to 0 to indicate a default behaviour.  */
-  /*                                                                       */
-  typedef struct  FT_Driver_ClassRec_
-  {
-    FT_Module_Class           root;
-
-    FT_Long                   face_object_size;
-    FT_Long                   size_object_size;
-    FT_Long                   slot_object_size;
-
-    FT_Face_InitFunc          init_face;
-    FT_Face_DoneFunc          done_face;
-
-    FT_Size_InitFunc          init_size;
-    FT_Size_DoneFunc          done_size;
-
-    FT_Slot_InitFunc          init_slot;
-    FT_Slot_DoneFunc          done_slot;
-
-    FT_Size_ResetPointsFunc   set_char_sizes;
-    FT_Size_ResetPixelsFunc   set_pixel_sizes;
-
-    FT_Slot_LoadFunc          load_glyph;
-
-    FT_Face_GetKerningFunc    get_kerning;
-    FT_Face_AttachFunc        attach_file;
-    FT_Face_GetAdvancesFunc   get_advances;
-
-  } FT_Driver_ClassRec, *FT_Driver_Class;
-
-
-FT_END_HEADER
-
-#endif /* __FTDRIVER_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftgloadr.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftgloadr.h
deleted file mode 100644 (file)
index abc56e2..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftgloadr.h                                                             */
-/*                                                                         */
-/*    The FreeType glyph loader (specification).                           */
-/*                                                                         */
-/*  Copyright 2002, 2003 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTGLOADR_H__
-#define __FTGLOADR_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_GlyphLoader                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The glyph loader is an internal object used to load several glyphs */
-  /*    together (for example, in the case of composites).                 */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The glyph loader implementation is not part of the high-level API, */
-  /*    hence the forward structure declaration.                           */
-  /*                                                                       */
-  typedef struct FT_GlyphLoaderRec_*  FT_GlyphLoader ;
-
-
-#define FT_SUBGLYPH_FLAG_ARGS_ARE_WORDS          1
-#define FT_SUBGLYPH_FLAG_ARGS_ARE_XY_VALUES      2
-#define FT_SUBGLYPH_FLAG_ROUND_XY_TO_GRID        4
-#define FT_SUBGLYPH_FLAG_SCALE                   8
-#define FT_SUBGLYPH_FLAG_XY_SCALE             0x40
-#define FT_SUBGLYPH_FLAG_2X2                  0x80
-#define FT_SUBGLYPH_FLAG_USE_MY_METRICS      0x200
-
-
-  typedef struct  FT_SubGlyphRec_
-  {
-    FT_Int     index;
-    FT_UShort  flags;
-    FT_Int     arg1;
-    FT_Int     arg2;
-    FT_Matrix  transform;
-    
-  } FT_SubGlyphRec;
-
-
-  typedef struct  FT_GlyphLoadRec_
-  {
-    FT_Outline   outline;       /* outline             */
-    FT_Vector*   extra_points;  /* extra points table  */
-    FT_UInt      num_subglyphs; /* number of subglyphs */
-    FT_SubGlyph  subglyphs;     /* subglyphs           */
-
-  } FT_GlyphLoadRec, *FT_GlyphLoad;
-
-
-  typedef struct  FT_GlyphLoaderRec_
-  {
-    FT_Memory        memory;
-    FT_UInt          max_points;
-    FT_UInt          max_contours;
-    FT_UInt          max_subglyphs;
-    FT_Bool          use_extra;
-
-    FT_GlyphLoadRec  base;
-    FT_GlyphLoadRec  current;
-
-    void*            other;            /* for possible future extension? */
-
-  } FT_GlyphLoaderRec;
-
-
-  /* create new empty glyph loader */
-  FT_BASE( FT_Error )
-  FT_GlyphLoader_New( FT_Memory        memory,
-                      FT_GlyphLoader  *aloader );
-
-  /* add an extra points table to a glyph loader */
-  FT_BASE( FT_Error )
-  FT_GlyphLoader_CreateExtra( FT_GlyphLoader  loader );
-
-  /* destroy a glyph loader */
-  FT_BASE( void )
-  FT_GlyphLoader_Done( FT_GlyphLoader  loader );
-
-  /* reset a glyph loader (frees everything int it) */
-  FT_BASE( void )
-  FT_GlyphLoader_Reset( FT_GlyphLoader  loader );
-
-  /* rewind a glyph loader */
-  FT_BASE( void )
-  FT_GlyphLoader_Rewind( FT_GlyphLoader  loader );
-
-  /* check that there is enough space to add `n_points' and `n_contours' */
-  /* to the glyph loader                                                 */
-  FT_BASE( FT_Error )
-  FT_GlyphLoader_CheckPoints( FT_GlyphLoader  loader,
-                              FT_UInt         n_points,
-                              FT_UInt         n_contours );
-
-  /* check that there is enough space to add `n_subs' sub-glyphs to */
-  /* a glyph loader                                                 */
-  FT_BASE( FT_Error )
-  FT_GlyphLoader_CheckSubGlyphs( FT_GlyphLoader  loader,
-                                 FT_UInt         n_subs );
-
-  /* prepare a glyph loader, i.e. empty the current glyph */
-  FT_BASE( void )
-  FT_GlyphLoader_Prepare( FT_GlyphLoader  loader );
-
-  /* add the current glyph to the base glyph */
-  FT_BASE( void )
-  FT_GlyphLoader_Add( FT_GlyphLoader  loader );
-
-  /* copy points from one glyph loader to another */
-  FT_BASE( FT_Error )
-  FT_GlyphLoader_CopyPoints( FT_GlyphLoader  target,
-                             FT_GlyphLoader  source );
-
- /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTGLOADR_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftmemory.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftmemory.h
deleted file mode 100644 (file)
index d93a077..0000000
+++ /dev/null
@@ -1,445 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftmemory.h                                                             */
-/*                                                                         */
-/*    The FreeType memory management macros (specification).               */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2004, 2005 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTMEMORY_H__
-#define __FTMEMORY_H__
-
-
-#include <ft2build.h>
-#include FT_CONFIG_CONFIG_H
-#include FT_TYPES_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Macro>                                                               */
-  /*    FT_SET_ERROR                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This macro is used to set an implicit `error' variable to a given  */
-  /*    expression's value (usually a function call), and convert it to a  */
-  /*    boolean which is set whenever the value is != 0.                   */
-  /*                                                                       */
-#undef  FT_SET_ERROR
-#define FT_SET_ERROR( expression ) \
-          ( ( error = (expression) ) != 0 )
-
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /****                           M E M O R Y                           ****/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-#ifdef FT_DEBUG_MEMORY
-
-  FT_BASE( FT_Error )
-  FT_Alloc_Debug( FT_Memory    memory,
-                  FT_Long      size,
-                  void*       *P,
-                  const char*  file_name,
-                  FT_Long      line_no );
-
-  FT_BASE( FT_Error )
-  FT_QAlloc_Debug( FT_Memory    memory,
-                   FT_Long      size,
-                   void*       *P,
-                   const char*  file_name,
-                   FT_Long      line_no );
-
-  FT_BASE( FT_Error )
-  FT_Realloc_Debug( FT_Memory    memory,
-                    FT_Long      current,
-                    FT_Long      size,
-                    void*       *P,
-                    const char*  file_name,
-                    FT_Long      line_no );
-
-  FT_BASE( FT_Error )
-  FT_QRealloc_Debug( FT_Memory    memory,
-                     FT_Long      current,
-                     FT_Long      size,
-                     void*       *P,
-                     const char*  file_name,
-                     FT_Long      line_no );
-
-  FT_BASE( void )
-  FT_Free_Debug( FT_Memory    memory,
-                 FT_Pointer   block,
-                 const char*  file_name,
-                 FT_Long      line_no );
-
-#endif
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Alloc                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Allocates a new block of memory.  The returned area is always      */
-  /*    zero-filled; this is a strong convention in many FreeType parts.   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory :: A handle to a given `memory object' which handles        */
-  /*              allocation.                                              */
-  /*                                                                       */
-  /*    size   :: The size in bytes of the block to allocate.              */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    P      :: A pointer to the fresh new block.  It should be set to   */
-  /*              NULL if `size' is 0, or in case of error.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_BASE( FT_Error )
-  FT_Alloc( FT_Memory  memory,
-            FT_Long    size,
-            void*     *P );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_QAlloc                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Allocates a new block of memory.  The returned area is *not*       */
-  /*    zero-filled, making allocation quicker.                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory :: A handle to a given `memory object' which handles        */
-  /*              allocation.                                              */
-  /*                                                                       */
-  /*    size   :: The size in bytes of the block to allocate.              */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    P      :: A pointer to the fresh new block.  It should be set to   */
-  /*              NULL if `size' is 0, or in case of error.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_BASE( FT_Error )
-  FT_QAlloc( FT_Memory  memory,
-             FT_Long    size,
-             void*     *p );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Realloc                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Reallocates a block of memory pointed to by `*P' to `Size' bytes   */
-  /*    from the heap, possibly changing `*P'.  The returned area is       */
-  /*    zero-filled.                                                       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory  :: A handle to a given `memory object' which handles       */
-  /*               reallocation.                                           */
-  /*                                                                       */
-  /*    current :: The current block size in bytes.                        */
-  /*                                                                       */
-  /*    size    :: The new block size in bytes.                            */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    P       :: A pointer to the fresh new block.  It should be set to  */
-  /*               NULL if `size' is 0, or in case of error.               */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    All callers of FT_Realloc() _must_ provide the current block size  */
-  /*    as well as the new one.                                            */
-  /*                                                                       */
-  FT_BASE( FT_Error )
-  FT_Realloc( FT_Memory  memory,
-              FT_Long    current,
-              FT_Long    size,
-              void*     *P );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_QRealloc                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Reallocates a block of memory pointed to by `*P' to `Size' bytes   */
-  /*    from the heap, possibly changing `*P'.  The returned area is *not* */
-  /*    zero-filled, making reallocation quicker.                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory  :: A handle to a given `memory object' which handles       */
-  /*               reallocation.                                           */
-  /*                                                                       */
-  /*    current :: The current block size in bytes.                        */
-  /*                                                                       */
-  /*    size    :: The new block size in bytes.                            */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    P       :: A pointer to the fresh new block.  It should be set to  */
-  /*               NULL if `size' is 0, or in case of error.               */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    All callers of FT_Realloc() _must_ provide the current block size  */
-  /*    as well as the new one.                                            */
-  /*                                                                       */
-  FT_BASE( FT_Error )
-  FT_QRealloc( FT_Memory  memory,
-               FT_Long    current,
-               FT_Long    size,
-               void*     *p );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Free                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Releases a given block of memory allocated through FT_Alloc().     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory :: A handle to a given `memory object' which handles        */
-  /*              memory deallocation                                      */
-  /*                                                                       */
-  /*    P      :: This is the _address_ of a _pointer_ which points to the */
-  /*              allocated block.  It is always set to NULL on exit.      */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    If P or *P is NULL, this function should return successfully.      */
-  /*    This is a strong convention within all of FreeType and its         */
-  /*    drivers.                                                           */
-  /*                                                                       */
-  FT_BASE( void )
-  FT_Free( FT_Memory  memory,
-           void*     *P );
-
-
-#define FT_MEM_SET( dest, byte, count )     ft_memset( dest, byte, count )
-
-#define FT_MEM_COPY( dest, source, count )  ft_memcpy( dest, source, count )
-
-#define FT_MEM_MOVE( dest, source, count )  ft_memmove( dest, source, count )
-
-
-#define FT_MEM_ZERO( dest, count )  FT_MEM_SET( dest, 0, count )
-
-#define FT_ZERO( p )                FT_MEM_ZERO( p, sizeof ( *(p) ) )
-
-#define FT_ARRAY_ZERO( dest, count )                        \
-          FT_MEM_ZERO( dest, (count) * sizeof ( *(dest) ) )
-
-#define FT_ARRAY_COPY( dest, source, count )                        \
-          FT_MEM_COPY( dest, source, (count) * sizeof ( *(dest) ) )
-
-#define FT_ARRAY_MOVE( dest, source, count )                        \
-          FT_MEM_MOVE( dest, source, (count) * sizeof ( *(dest) ) )
-
-
-  /*
-   *  Return the maximum number of adressable elements in an array.
-   *  We limit ourselves to INT_MAX, rather than UINT_MAX, to avoid
-   *  any problems.
-   */
-#define FT_ARRAY_MAX( ptr )           ( FT_INT_MAX / sizeof ( *(ptr) ) )
-
-#define FT_ARRAY_CHECK( ptr, count )  ( (count) <= FT_ARRAY_MAX( ptr ) )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* We first define FT_MEM_ALLOC, FT_MEM_REALLOC, and FT_MEM_FREE.  All   */
-  /* macros use an _implicit_ `memory' parameter to access the current     */
-  /* memory allocator.                                                     */
-  /*                                                                       */
-
-#ifdef FT_DEBUG_MEMORY
-
-#define FT_MEM_ALLOC( _pointer_, _size_ )              \
-          FT_Alloc_Debug( memory, _size_,              \
-                          (void**)(void*)&(_pointer_), \
-                          __FILE__, __LINE__ )
-
-#define FT_MEM_REALLOC( _pointer_, _current_, _size_ )   \
-          FT_Realloc_Debug( memory, _current_, _size_,   \
-                            (void**)(void*)&(_pointer_), \
-                            __FILE__, __LINE__ )
-
-#define FT_MEM_QALLOC( _pointer_, _size_ )              \
-          FT_QAlloc_Debug( memory, _size_,              \
-                           (void**)(void*)&(_pointer_), \
-                           __FILE__, __LINE__ )
-
-#define FT_MEM_QREALLOC( _pointer_, _current_, _size_ )   \
-          FT_QRealloc_Debug( memory, _current_, _size_,   \
-                             (void**)(void*)&(_pointer_), \
-                             __FILE__, __LINE__ )
-
-#define FT_MEM_FREE( _pointer_ )                              \
-          FT_Free_Debug( memory, (void**)(void*)&(_pointer_), \
-                         __FILE__, __LINE__ )
-
-
-#else  /* !FT_DEBUG_MEMORY */
-
-
-#define FT_MEM_ALLOC( _pointer_, _size_ )         \
-          FT_Alloc( memory, _size_,               \
-                    (void**)(void*)&(_pointer_) )
-
-#define FT_MEM_FREE( _pointer_ )                 \
-          FT_Free( memory,                       \
-                   (void**)(void*)&(_pointer_) )
-
-#define FT_MEM_REALLOC( _pointer_, _current_, _size_ ) \
-          FT_Realloc( memory, _current_, _size_,       \
-                      (void**)(void*)&(_pointer_) )
-
-#define FT_MEM_QALLOC( _pointer_, _size_ )         \
-          FT_QAlloc( memory, _size_,               \
-                     (void**)(void*)&(_pointer_) )
-
-#define FT_MEM_QREALLOC( _pointer_, _current_, _size_ ) \
-          FT_QRealloc( memory, _current_, _size_,       \
-          (void**)(void*)&(_pointer_) )
-
-#endif /* !FT_DEBUG_MEMORY */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* The following functions macros expect that their pointer argument is  */
-  /* _typed_ in order to automatically compute array element sizes.        */
-  /*                                                                       */
-
-#define FT_MEM_NEW( _pointer_ )                              \
-          FT_MEM_ALLOC( _pointer_, sizeof ( *(_pointer_) ) )
-
-#define FT_MEM_NEW_ARRAY( _pointer_, _count_ )                           \
-          FT_MEM_ALLOC( _pointer_, (_count_) * sizeof ( *(_pointer_) ) )
-
-#define FT_MEM_RENEW_ARRAY( _pointer_, _old_, _new_ )                    \
-          FT_MEM_REALLOC( _pointer_, (_old_) * sizeof ( *(_pointer_) ),  \
-                                     (_new_) * sizeof ( *(_pointer_) ) )
-
-#define FT_MEM_QNEW( _pointer_ )                              \
-          FT_MEM_QALLOC( _pointer_, sizeof ( *(_pointer_) ) )
-
-#define FT_MEM_QNEW_ARRAY( _pointer_, _count_ )                           \
-          FT_MEM_QALLOC( _pointer_, (_count_) * sizeof ( *(_pointer_) ) )
-
-#define FT_MEM_QRENEW_ARRAY( _pointer_, _old_, _new_ )                    \
-          FT_MEM_QREALLOC( _pointer_, (_old_) * sizeof ( *(_pointer_) ),  \
-                                      (_new_) * sizeof ( *(_pointer_) ) )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* the following macros are obsolete but kept for compatibility reasons  */
-  /*                                                                       */
-
-#define FT_MEM_ALLOC_ARRAY( _pointer_, _count_, _type_ )           \
-          FT_MEM_ALLOC( _pointer_, (_count_) * sizeof ( _type_ ) )
-
-#define FT_MEM_REALLOC_ARRAY( _pointer_, _old_, _new_, _type_ )    \
-          FT_MEM_REALLOC( _pointer_, (_old_) * sizeof ( _type ),   \
-                                     (_new_) * sizeof ( _type_ ) )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* The following macros are variants of their FT_MEM_XXXX equivalents;   */
-  /* they are used to set an _implicit_ `error' variable and return TRUE   */
-  /* if an error occured (i.e. if 'error != 0').                           */
-  /*                                                                       */
-
-#define FT_ALLOC( _pointer_, _size_ )                       \
-          FT_SET_ERROR( FT_MEM_ALLOC( _pointer_, _size_ ) )
-
-#define FT_REALLOC( _pointer_, _current_, _size_ )                       \
-          FT_SET_ERROR( FT_MEM_REALLOC( _pointer_, _current_, _size_ ) )
-
-#define FT_QALLOC( _pointer_, _size_ )                       \
-          FT_SET_ERROR( FT_MEM_QALLOC( _pointer_, _size_ ) )
-
-#define FT_QREALLOC( _pointer_, _current_, _size_ )                       \
-          FT_SET_ERROR( FT_MEM_QREALLOC( _pointer_, _current_, _size_ ) )
-
-
-#define FT_FREE( _pointer_ )       \
-          FT_MEM_FREE( _pointer_ )
-
-
-#define FT_NEW( _pointer_ )                              \
-          FT_ALLOC( _pointer_, sizeof ( *(_pointer_) ) )
-
-#define FT_NEW_ARRAY( _pointer_, _count_ )                           \
-          FT_ALLOC( _pointer_, sizeof ( *(_pointer_) ) * (_count_) )
-
-#define FT_RENEW_ARRAY( _pointer_, _old_, _new_ )                    \
-          FT_REALLOC( _pointer_, sizeof ( *(_pointer_) ) * (_old_),  \
-                                 sizeof ( *(_pointer_) ) * (_new_) )
-
-#define FT_QNEW( _pointer_ )                              \
-          FT_QALLOC( _pointer_, sizeof ( *(_pointer_) ) )
-
-#define FT_QNEW_ARRAY( _pointer_, _count_ )                           \
-          FT_QALLOC( _pointer_, sizeof ( *(_pointer_) ) * (_count_) )
-
-#define FT_QRENEW_ARRAY( _pointer_, _old_, _new_ )                    \
-          FT_QREALLOC( _pointer_, sizeof ( *(_pointer_) ) * (_old_),  \
-                                  sizeof ( *(_pointer_) ) * (_new_) )
-
-
-#define FT_ALLOC_ARRAY( _pointer_, _count_, _type_ )           \
-          FT_ALLOC( _pointer_, (_count_) * sizeof ( _type_ ) )
-
-#define FT_REALLOC_ARRAY( _pointer_, _old_, _new_, _type_ )   \
-          FT_REALLOC( _pointer, (_old_) * sizeof ( _type_ ),  \
-                                (_new_) * sizeof ( _type_ ) )
-
-
- /* */
-
-
-FT_END_HEADER
-
-#endif /* __FTMEMORY_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftobjs.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftobjs.h
deleted file mode 100644 (file)
index e8e3ee7..0000000
+++ /dev/null
@@ -1,749 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftobjs.h                                                               */
-/*                                                                         */
-/*    The FreeType private base classes (specification).                   */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004, 2005 by                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*  This file contains the definition of all internal FreeType classes.  */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTOBJS_H__
-#define __FTOBJS_H__
-
-#include <ft2build.h>
-#include FT_RENDER_H
-#include FT_SIZES_H
-#include FT_INTERNAL_MEMORY_H
-#include FT_INTERNAL_GLYPH_LOADER_H
-#include FT_INTERNAL_DRIVER_H
-#include FT_INTERNAL_AUTOHINT_H
-#include FT_INTERNAL_SERVICE_H
-
-#ifdef FT_CONFIG_OPTION_INCREMENTAL
-#include FT_INCREMENTAL_H
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Some generic definitions.                                             */
-  /*                                                                       */
-#ifndef TRUE
-#define TRUE  1
-#endif
-
-#ifndef FALSE
-#define FALSE  0
-#endif
-
-#ifndef NULL
-#define NULL  (void*)0
-#endif
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* The min and max functions missing in C.  As usual, be careful not to  */
-  /* write things like FT_MIN( a++, b++ ) to avoid side effects.           */
-  /*                                                                       */
-#define FT_MIN( a, b )  ( (a) < (b) ? (a) : (b) )
-#define FT_MAX( a, b )  ( (a) > (b) ? (a) : (b) )
-
-#define FT_ABS( a )     ( (a) < 0 ? -(a) : (a) )
-
-
-#define FT_PAD_FLOOR( x, n )  ( (x) & ~((n)-1) )
-#define FT_PAD_ROUND( x, n )  FT_PAD_FLOOR( (x) + ((n)/2), n )
-#define FT_PAD_CEIL( x, n )   FT_PAD_FLOOR( (x) + ((n)-1), n )
-
-#define FT_PIX_FLOOR( x )     ( (x) & ~63 )
-#define FT_PIX_ROUND( x )     FT_PIX_FLOOR( (x) + 32 )
-#define FT_PIX_CEIL( x )      FT_PIX_FLOOR( (x) + 63 )
-
-
-  /*
-   *  Return the highest power of 2 that is <= value; this correspond to
-   *  the highest bit in a given 32-bit value.
-   */
-  FT_BASE( FT_UInt32 )
-  ft_highpow2( FT_UInt32  value );
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /****                       C H A R M A P S                           ****/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /* handle to internal charmap object */
-  typedef struct FT_CMapRec_*              FT_CMap;
-
-  /* handle to charmap class structure */
-  typedef const struct FT_CMap_ClassRec_*  FT_CMap_Class;
-
-  /* internal charmap object structure */
-  typedef struct  FT_CMapRec_
-  {
-    FT_CharMapRec  charmap;
-    FT_CMap_Class  clazz;
-
-  } FT_CMapRec;
-
-  /* typecase any pointer to a charmap handle */
-#define FT_CMAP( x )              ((FT_CMap)( x ))
-
-  /* obvious macros */
-#define FT_CMAP_PLATFORM_ID( x )  FT_CMAP( x )->charmap.platform_id
-#define FT_CMAP_ENCODING_ID( x )  FT_CMAP( x )->charmap.encoding_id
-#define FT_CMAP_ENCODING( x )     FT_CMAP( x )->charmap.encoding
-#define FT_CMAP_FACE( x )         FT_CMAP( x )->charmap.face
-
-
-  /* class method definitions */
-  typedef FT_Error
-  (*FT_CMap_InitFunc)( FT_CMap     cmap,
-                       FT_Pointer  init_data );
-
-  typedef void
-  (*FT_CMap_DoneFunc)( FT_CMap  cmap );
-
-  typedef FT_UInt
-  (*FT_CMap_CharIndexFunc)( FT_CMap    cmap,
-                            FT_UInt32  char_code );
-
-  typedef FT_UInt
-  (*FT_CMap_CharNextFunc)( FT_CMap     cmap,
-                           FT_UInt32  *achar_code );
-
-
-  typedef struct  FT_CMap_ClassRec_
-  {
-    FT_ULong               size;
-    FT_CMap_InitFunc       init;
-    FT_CMap_DoneFunc       done;
-    FT_CMap_CharIndexFunc  char_index;
-    FT_CMap_CharNextFunc   char_next;
-
-  } FT_CMap_ClassRec;
-
-
-  /* create a new charmap and add it to charmap->face */
-  FT_BASE( FT_Error )
-  FT_CMap_New( FT_CMap_Class  clazz,
-               FT_Pointer     init_data,
-               FT_CharMap     charmap,
-               FT_CMap       *acmap );
-
-  /* destroy a charmap and remove it from face's list */
-  FT_BASE( void )
-  FT_CMap_Done( FT_CMap  cmap );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Face_InternalRec                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This structure contains the internal fields of each FT_Face        */
-  /*    object.  These fields may change between different releases of     */
-  /*    FreeType.                                                          */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    max_points ::                                                      */
-  /*      The maximal number of points used to store the vectorial outline */
-  /*      of any glyph in this face.  If this value cannot be known in     */
-  /*      advance, or if the face isn't scalable, this should be set to 0. */
-  /*      Only relevant for scalable formats.                              */
-  /*                                                                       */
-  /*    max_contours ::                                                    */
-  /*      The maximal number of contours used to store the vectorial       */
-  /*      outline of any glyph in this face.  If this value cannot be      */
-  /*      known in advance, or if the face isn't scalable, this should be  */
-  /*      set to 0.  Only relevant for scalable formats.                   */
-  /*                                                                       */
-  /*    transform_matrix ::                                                */
-  /*      A 2x2 matrix of 16.16 coefficients used to transform glyph       */
-  /*      outlines after they are loaded from the font.  Only used by the  */
-  /*      convenience functions.                                           */
-  /*                                                                       */
-  /*    transform_delta ::                                                 */
-  /*      A translation vector used to transform glyph outlines after they */
-  /*      are loaded from the font.  Only used by the convenience          */
-  /*      functions.                                                       */
-  /*                                                                       */
-  /*    transform_flags ::                                                 */
-  /*      Some flags used to classify the transform.  Only used by the     */
-  /*      convenience functions.                                           */
-  /*                                                                       */
-  /*    services ::                                                        */
-  /*      A cache for frequently used services.  It should be only         */
-  /*      accessed with the macro `FT_FACE_LOOKUP_SERVICE'.                */
-  /*                                                                       */
-  /*    incremental_interface ::                                           */
-  /*      If non-null, the interface through which glyph data and metrics  */
-  /*      are loaded incrementally for faces that do not provide all of    */
-  /*      this data when first opened.  This field exists only if          */
-  /*      @FT_CONFIG_OPTION_INCREMENTAL is defined.                        */
-  /*                                                                       */
-  typedef struct  FT_Face_InternalRec_
-  {
-    FT_UShort           max_points;
-    FT_Short            max_contours;
-
-    FT_Matrix           transform_matrix;
-    FT_Vector           transform_delta;
-    FT_Int              transform_flags;
-
-    FT_ServiceCacheRec  services;
-
-#ifdef FT_CONFIG_OPTION_INCREMENTAL
-    FT_Incremental_InterfaceRec*  incremental_interface;
-#endif
-
-  } FT_Face_InternalRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_Slot_InternalRec                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This structure contains the internal fields of each FT_GlyphSlot   */
-  /*    object.  These fields may change between different releases of     */
-  /*    FreeType.                                                          */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    loader            :: The glyph loader object used to load outlines */
-  /*                         into the glyph slot.                          */
-  /*                                                                       */
-  /*    flags             :: Possible values are zero or                   */
-  /*                         FT_GLYPH_OWN_BITMAP.  The latter indicates    */
-  /*                         that the FT_GlyphSlot structure owns the      */
-  /*                         bitmap buffer.                                */
-  /*                                                                       */
-  /*    glyph_transformed :: Boolean.  Set to TRUE when the loaded glyph   */
-  /*                         must be transformed through a specific        */
-  /*                         font transformation.  This is _not_ the same  */
-  /*                         as the face transform set through             */
-  /*                         FT_Set_Transform().                           */
-  /*                                                                       */
-  /*    glyph_matrix      :: The 2x2 matrix corresponding to the glyph     */
-  /*                         transformation, if necessary.                 */
-  /*                                                                       */
-  /*    glyph_delta       :: The 2d translation vector corresponding to    */
-  /*                         the glyph transformation, if necessary.       */
-  /*                                                                       */
-  /*    glyph_hints       :: Format-specific glyph hints management.       */
-  /*                                                                       */
-
-#define FT_GLYPH_OWN_BITMAP  0x1
-
-  typedef struct  FT_Slot_InternalRec_
-  {
-    FT_GlyphLoader  loader;
-    FT_UInt         flags;
-    FT_Bool         glyph_transformed;
-    FT_Matrix       glyph_matrix;
-    FT_Vector       glyph_delta;
-    void*           glyph_hints;
-
-  } FT_GlyphSlot_InternalRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /****                         M O D U L E S                           ****/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_ModuleRec                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A module object instance.                                          */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    clazz   :: A pointer to the module's class.                        */
-  /*                                                                       */
-  /*    library :: A handle to the parent library object.                  */
-  /*                                                                       */
-  /*    memory  :: A handle to the memory manager.                         */
-  /*                                                                       */
-  /*    generic :: A generic structure for user-level extensibility (?).   */
-  /*                                                                       */
-  typedef struct  FT_ModuleRec_
-  {
-    FT_Module_Class*  clazz;
-    FT_Library        library;
-    FT_Memory         memory;
-    FT_Generic        generic;
-
-  } FT_ModuleRec;
-
-
-  /* typecast an object to a FT_Module */
-#define FT_MODULE( x )          ((FT_Module)( x ))
-#define FT_MODULE_CLASS( x )    FT_MODULE( x )->clazz
-#define FT_MODULE_LIBRARY( x )  FT_MODULE( x )->library
-#define FT_MODULE_MEMORY( x )   FT_MODULE( x )->memory
-
-
-#define FT_MODULE_IS_DRIVER( x )  ( FT_MODULE_CLASS( x )->module_flags & \
-                                    FT_MODULE_FONT_DRIVER )
-
-#define FT_MODULE_IS_RENDERER( x )  ( FT_MODULE_CLASS( x )->module_flags & \
-                                      FT_MODULE_RENDERER )
-
-#define FT_MODULE_IS_HINTER( x )  ( FT_MODULE_CLASS( x )->module_flags & \
-                                    FT_MODULE_HINTER )
-
-#define FT_MODULE_IS_STYLER( x )  ( FT_MODULE_CLASS( x )->module_flags & \
-                                    FT_MODULE_STYLER )
-
-#define FT_DRIVER_IS_SCALABLE( x )  ( FT_MODULE_CLASS( x )->module_flags & \
-                                      FT_MODULE_DRIVER_SCALABLE )
-
-#define FT_DRIVER_USES_OUTLINES( x )  !( FT_MODULE_CLASS( x )->module_flags & \
-                                         FT_MODULE_DRIVER_NO_OUTLINES )
-
-#define FT_DRIVER_HAS_HINTER( x )  ( FT_MODULE_CLASS( x )->module_flags & \
-                                     FT_MODULE_DRIVER_HAS_HINTER )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Module_Interface                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finds a module and returns its specific interface as a typeless    */
-  /*    pointer.                                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library     :: A handle to the library object.                     */
-  /*                                                                       */
-  /*    module_name :: The module's name (as an ASCII string).             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A module-specific interface if available, 0 otherwise.             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    You should better be familiar with FreeType internals to know      */
-  /*    which module to look for, and what its interface is :-)            */
-  /*                                                                       */
-  FT_BASE( const void* )
-  FT_Get_Module_Interface( FT_Library   library,
-                           const char*  mod_name );
-
-  FT_BASE( FT_Pointer )
-  ft_module_get_service( FT_Module    module,
-                         const char*  service_id );
-
- /* */
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /****               FACE, SIZE & GLYPH SLOT OBJECTS                   ****/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /* a few macros used to perform easy typecasts with minimal brain damage */
-
-#define FT_FACE( x )          ((FT_Face)(x))
-#define FT_SIZE( x )          ((FT_Size)(x))
-#define FT_SLOT( x )          ((FT_GlyphSlot)(x))
-
-#define FT_FACE_DRIVER( x )   FT_FACE( x )->driver
-#define FT_FACE_LIBRARY( x )  FT_FACE_DRIVER( x )->root.library
-#define FT_FACE_MEMORY( x )   FT_FACE( x )->memory
-#define FT_FACE_STREAM( x )   FT_FACE( x )->stream
-
-#define FT_SIZE_FACE( x )     FT_SIZE( x )->face
-#define FT_SLOT_FACE( x )     FT_SLOT( x )->face
-
-#define FT_FACE_SLOT( x )     FT_FACE( x )->glyph
-#define FT_FACE_SIZE( x )     FT_FACE( x )->size
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_GlyphSlot                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    It is sometimes useful to have more than one glyph slot for a      */
-  /*    given face object.  This function is used to create additional     */
-  /*    slots.  All of them are automatically discarded when the face is   */
-  /*    destroyed.                                                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face  :: A handle to a parent face object.                         */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    aslot :: A handle to a new glyph slot object.                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  FT_BASE( FT_Error )
-  FT_New_GlyphSlot( FT_Face        face,
-                    FT_GlyphSlot  *aslot );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Done_GlyphSlot                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Destroys a given glyph slot.  Remember however that all slots are  */
-  /*    automatically destroyed with its parent.  Using this function is   */
-  /*    not always mandatory.                                              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    slot :: A handle to a target glyph slot.                           */
-  /*                                                                       */
-  FT_BASE( void )
-  FT_Done_GlyphSlot( FT_GlyphSlot  slot );
-
- /* */
-
- /*
-  * Free the bitmap of a given glyphslot when needed
-  * (i.e., only when it was allocated with ft_glyphslot_alloc_bitmap).
-  */
-  FT_BASE( void )
-  ft_glyphslot_free_bitmap( FT_GlyphSlot  slot );
-
-
- /*
-  * Allocate a new bitmap buffer in a glyph slot.
-  */
-  FT_BASE( FT_Error )
-  ft_glyphslot_alloc_bitmap( FT_GlyphSlot  slot,
-                             FT_ULong      size );
-
-
- /*
-  * Set the bitmap buffer in a glyph slot to a given pointer.
-  * The buffer will not be freed by a later call to ft_glyphslot_free_bitmap.
-  */
-  FT_BASE( void )
-  ft_glyphslot_set_bitmap( FT_GlyphSlot  slot,
-                           FT_Byte*      buffer );
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /****                        R E N D E R E R S                        ****/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-#define FT_RENDERER( x )      ((FT_Renderer)( x ))
-#define FT_GLYPH( x )         ((FT_Glyph)( x ))
-#define FT_BITMAP_GLYPH( x )  ((FT_BitmapGlyph)( x ))
-#define FT_OUTLINE_GLYPH( x ) ((FT_OutlineGlyph)( x ))
-
-
-  typedef struct  FT_RendererRec_
-  {
-    FT_ModuleRec            root;
-    FT_Renderer_Class*      clazz;
-    FT_Glyph_Format         glyph_format;
-    FT_Glyph_Class          glyph_class;
-
-    FT_Raster               raster;
-    FT_Raster_Render_Func   raster_render;
-    FT_Renderer_RenderFunc  render;
-
-  } FT_RendererRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /****                    F O N T   D R I V E R S                      ****/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /* typecast a module into a driver easily */
-#define FT_DRIVER( x )        ((FT_Driver)(x))
-
-  /* typecast a module as a driver, and get its driver class */
-#define FT_DRIVER_CLASS( x )  FT_DRIVER( x )->clazz
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_DriverRec                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The root font driver class.  A font driver is responsible for      */
-  /*    managing and loading font files of a given format.                 */
-  /*                                                                       */
-  /*  <Fields>                                                             */
-  /*     root         :: Contains the fields of the root module class.     */
-  /*                                                                       */
-  /*     clazz        :: A pointer to the font driver's class.  Note that  */
-  /*                     this is NOT root.clazz.  `class' wasn't used      */
-  /*                     as it is a reserved word in C++.                  */
-  /*                                                                       */
-  /*     faces_list   :: The list of faces currently opened by this        */
-  /*                     driver.                                           */
-  /*                                                                       */
-  /*     extensions   :: A typeless pointer to the driver's extensions     */
-  /*                     registry, if they are supported through the       */
-  /*                     configuration macro FT_CONFIG_OPTION_EXTENSIONS.  */
-  /*                                                                       */
-  /*     glyph_loader :: The glyph loader for all faces managed by this    */
-  /*                     driver.  This object isn't defined for unscalable */
-  /*                     formats.                                          */
-  /*                                                                       */
-  typedef struct  FT_DriverRec_
-  {
-    FT_ModuleRec     root;
-    FT_Driver_Class  clazz;
-
-    FT_ListRec       faces_list;
-    void*            extensions;
-
-    FT_GlyphLoader   glyph_loader;
-
-  } FT_DriverRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /****                       L I B R A R I E S                         ****/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-/* this hook is used by the TrueType debugger. It must be set to an alternate
- * truetype bytecode interpreter function
- */
-#define FT_DEBUG_HOOK_TRUETYPE            0
-
-
-/* set this debug hook to a non-null pointer to force unpatented hinting
- * for all faces when both TT_CONFIG_OPTION_BYTECODE_INTERPRETER and
- * TT_CONFIG_OPTION_UNPATENTED_HINTING are defined. this is only used
- * during debugging
- */
-#define FT_DEBUG_HOOK_UNPATENTED_HINTING  1
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    FT_LibraryRec                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The FreeType library class.  This is the root of all FreeType      */
-  /*    data.  Use FT_New_Library() to create a library object, and        */
-  /*    FT_Done_Library() to discard it and all child objects.             */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    memory           :: The library's memory object.  Manages memory   */
-  /*                        allocation.                                    */
-  /*                                                                       */
-  /*    generic          :: Client data variable.  Used to extend the      */
-  /*                        Library class by higher levels and clients.    */
-  /*                                                                       */
-  /*    version_major    :: The major version number of the library.       */
-  /*                                                                       */
-  /*    version_minor    :: The minor version number of the library.       */
-  /*                                                                       */
-  /*    version_patch    :: The current patch level of the library.        */
-  /*                                                                       */
-  /*    num_modules      :: The number of modules currently registered     */
-  /*                        within this library.  This is set to 0 for new */
-  /*                        libraries.  New modules are added through the  */
-  /*                        FT_Add_Module() API function.                  */
-  /*                                                                       */
-  /*    modules          :: A table used to store handles to the currently */
-  /*                        registered modules. Note that each font driver */
-  /*                        contains a list of its opened faces.           */
-  /*                                                                       */
-  /*    renderers        :: The list of renderers currently registered     */
-  /*                        within the library.                            */
-  /*                                                                       */
-  /*    cur_renderer     :: The current outline renderer.  This is a       */
-  /*                        shortcut used to avoid parsing the list on     */
-  /*                        each call to FT_Outline_Render().  It is a     */
-  /*                        handle to the current renderer for the         */
-  /*                        FT_GLYPH_FORMAT_OUTLINE format.                */
-  /*                                                                       */
-  /*    auto_hinter      :: XXX                                            */
-  /*                                                                       */
-  /*    raster_pool      :: The raster object's render pool.  This can     */
-  /*                        ideally be changed dynamically at run-time.    */
-  /*                                                                       */
-  /*    raster_pool_size :: The size of the render pool in bytes.          */
-  /*                                                                       */
-  /*    debug_hooks      :: XXX                                            */
-  /*                                                                       */
-  typedef struct  FT_LibraryRec_
-  {
-    FT_Memory          memory;           /* library's memory manager */
-
-    FT_Generic         generic;
-
-    FT_Int             version_major;
-    FT_Int             version_minor;
-    FT_Int             version_patch;
-
-    FT_UInt            num_modules;
-    FT_Module          modules[FT_MAX_MODULES];  /* module objects  */
-
-    FT_ListRec         renderers;        /* list of renderers        */
-    FT_Renderer        cur_renderer;     /* current outline renderer */
-    FT_Module          auto_hinter;
-
-    FT_Byte*           raster_pool;      /* scan-line conversion */
-                                         /* render pool          */
-    FT_ULong           raster_pool_size; /* size of render pool in bytes */
-
-    FT_DebugHook_Func  debug_hooks[4];
-
-  } FT_LibraryRec;
-
-
-  FT_BASE( FT_Renderer )
-  FT_Lookup_Renderer( FT_Library       library,
-                      FT_Glyph_Format  format,
-                      FT_ListNode*     node );
-
-  FT_BASE( FT_Error )
-  FT_Render_Glyph_Internal( FT_Library      library,
-                            FT_GlyphSlot    slot,
-                            FT_Render_Mode  render_mode );
-
-  typedef const char*
-  (*FT_Face_GetPostscriptNameFunc)( FT_Face  face );
-
-  typedef FT_Error
-  (*FT_Face_GetGlyphNameFunc)( FT_Face     face,
-                               FT_UInt     glyph_index,
-                               FT_Pointer  buffer,
-                               FT_UInt     buffer_max );
-
-  typedef FT_UInt
-  (*FT_Face_GetGlyphNameIndexFunc)( FT_Face     face,
-                                    FT_String*  glyph_name );
-
-
-#ifndef FT_CONFIG_OPTION_NO_DEFAULT_SYSTEM
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Memory                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a new memory object.                                       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A pointer to the new memory object.  0 in case of error.           */
-  /*                                                                       */
-  FT_EXPORT( FT_Memory )
-  FT_New_Memory( void );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Done_Memory                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Discards memory manager.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory :: A handle to the memory manager.                          */
-  /*                                                                       */
-  FT_EXPORT( void )
-  FT_Done_Memory( FT_Memory  memory );
-
-#endif /* !FT_CONFIG_OPTION_NO_DEFAULT_SYSTEM */
-
-
-  /* Define default raster's interface.  The default raster is located in  */
-  /* `src/base/ftraster.c'.                                                */
-  /*                                                                       */
-  /* Client applications can register new rasters through the              */
-  /* FT_Set_Raster() API.                                                  */
-
-#ifndef FT_NO_DEFAULT_RASTER
-  FT_EXPORT_VAR( FT_Raster_Funcs )  ft_default_raster;
-#endif
-
-
-FT_END_HEADER
-
-#endif /* __FTOBJS_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftrfork.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftrfork.h
deleted file mode 100644 (file)
index e7b1002..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftrfork.h                                                              */
-/*                                                                         */
-/*    Embedded resource forks accessor (specification).                    */
-/*                                                                         */
-/*  Copyright 2004 by                                                      */
-/*  Masatake YAMATO and Redhat K.K.                                        */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/* Development of the code in this file is support of                      */
-/* Information-technology Promotion Agency, Japan.                         */
-/***************************************************************************/
-
-
-#ifndef __FTRFORK_H__
-#define __FTRFORK_H__
-
-
-#include <ft2build.h>
-#include FT_INTERNAL_OBJECTS_H
-
-
-FT_BEGIN_HEADER
-
-
-  /* Number of guessing rules supported in `FT_Raccess_Guess'.            */
-  /* Don't forget to increment the number if you add a new guessing rule. */
-#define FT_RACCESS_N_RULES  8
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Raccess_Guess                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Guess a file name and offset where the actual resource fork is     */
-  /*    stored.  The macro FT_RACCESS_N_RULES holds the number of          */
-  /*    guessing rules;  the guessed result for the Nth rule is            */
-  /*    represented as a triplet: a new file name (new_names[N]), a file   */
-  /*    offset (offsets[N]), and an error code (errors[N]).                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library ::                                                         */
-  /*      A FreeType library instance.                                     */
-  /*                                                                       */
-  /*    stream ::                                                          */
-  /*      A file stream containing the resource fork.                      */
-  /*                                                                       */
-  /*    base_name ::                                                       */
-  /*      The (base) file name of the resource fork used for some          */
-  /*      guessing rules.                                                  */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    new_names ::                                                       */
-  /*      An array of guessed file names in which the resource forks may   */
-  /*      exist.  If `new_names[N]' is NULL, the guessed file name is      */
-  /*      equal to `base_name'.                                            */
-  /*                                                                       */
-  /*    offsets ::                                                         */
-  /*      An array of guessed file offsets.  `offsets[N]' holds the file   */
-  /*      offset of the possible start of the resource fork in file        */
-  /*      `new_names[N]'.                                                  */
-  /*                                                                       */
-  /*    errors ::                                                          */
-  /*      An array of FreeType error codes.  `errors[N]' is the error      */
-  /*      code of Nth guessing rule function.  If `errors[N]' is not       */
-  /*      FT_Err_Ok, `new_names[N]' and `offsets[N]' are meaningless.      */
-  /*                                                                       */
-  FT_BASE( void )
-  FT_Raccess_Guess( FT_Library  library,
-                    FT_Stream   stream,
-                    char*       base_name,
-                    char**      new_names,
-                    FT_Long*    offsets,
-                    FT_Error*   errors );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Raccess_Get_HeaderInfo                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Get the information from the header of resource fork.  The         */
-  /*    information includes the file offset where the resource map        */
-  /*    starts, and the file offset where the resource data starts.        */
-  /*    `FT_Raccess_Get_DataOffsets' requires these two data.              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library ::                                                         */
-  /*      A FreeType library instance.                                     */
-  /*                                                                       */
-  /*    stream ::                                                          */
-  /*      A file stream containing the resource fork.                      */
-  /*                                                                       */
-  /*    rfork_offset ::                                                    */
-  /*      The file offset where the resource fork starts.                  */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    map_offset ::                                                      */
-  /*      The file offset where the resource map starts.                   */
-  /*                                                                       */
-  /*    rdata_pos ::                                                       */
-  /*      The file offset where the resource data starts.                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  FT_Err_Ok means success.                     */
-  /*                                                                       */
-  FT_BASE( FT_Error )
-  FT_Raccess_Get_HeaderInfo( FT_Library  library,
-                             FT_Stream   stream,
-                             FT_Long     rfork_offset,
-                             FT_Long    *map_offset,
-                             FT_Long    *rdata_pos );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Raccess_Get_DataOffsets                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Get the data offsets for a tag in a resource fork.  Offsets are    */
-  /*    stored in an array because, in some cases, resources in a resource */
-  /*    fork have the same tag.                                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    library ::                                                         */
-  /*      A FreeType library instance.                                     */
-  /*                                                                       */
-  /*    stream ::                                                          */
-  /*      A file stream containing the resource fork.                      */
-  /*                                                                       */
-  /*    map_offset ::                                                      */
-  /*      The file offset where the resource map starts.                   */
-  /*                                                                       */
-  /*    rdata_pos ::                                                       */
-  /*      The file offset where the resource data starts.                  */
-  /*                                                                       */
-  /*    tag ::                                                             */
-  /*      The resource tag.                                                */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    offsets ::                                                         */
-  /*      The stream offsets for the resource data specified by `tag'.     */
-  /*      This array is allocated by the function, so you have to call     */
-  /*      @FT_Free after use.                                              */
-  /*                                                                       */
-  /*    count ::                                                           */
-  /*      The length of offsets array.                                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  FT_Err_Ok means success.                     */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Normally you should use `FT_Raccess_Get_HeaderInfo' to get the     */
-  /*    value for `map_offset' and `rdata_pos'.                            */
-  /*                                                                       */
-  FT_BASE( FT_Error )
-  FT_Raccess_Get_DataOffsets( FT_Library  library,
-                              FT_Stream   stream,
-                              FT_Long     map_offset,
-                              FT_Long     rdata_pos,
-                              FT_Long     tag,
-                              FT_Long   **offsets,
-                              FT_Long    *count );
-
-
-FT_END_HEADER
-
-#endif /* __FTRFORK_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftserv.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftserv.h
deleted file mode 100644 (file)
index 0850f56..0000000
+++ /dev/null
@@ -1,323 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftserv.h                                                               */
-/*                                                                         */
-/*    The FreeType services (specification only).                          */
-/*                                                                         */
-/*  Copyright 2003, 2004, 2005 by                                          */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*  Each module can export one or more `services'.  Each service is      */
-  /*  identified by a constant string and modeled by a pointer; the latter */
-  /*  generally corresponds to a structure containing function pointers.   */
-  /*                                                                       */
-  /*  Note that a service's data cannot be a mere function pointer because */
-  /*  in C it is possible that function pointers might be implemented      */
-  /*  differently than data pointers (e.g. 48 bits instead of 32).         */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FTSERV_H__
-#define __FTSERV_H__
-
-
-FT_BEGIN_HEADER
-
-#if defined( _MSC_VER )      /* Visual C++ (and Intel C++) */
-
-  /* we disable the warning `conditional expression is constant' here */
-  /* in order to compile cleanly with the maximum level of warnings   */
-#pragma warning( disable : 4127 )
-
-#endif /* _MSC_VER */
-
-  /*
-   * @macro:
-   *   FT_FACE_FIND_SERVICE
-   *
-   * @description:
-   *   This macro is used to look up a service from a face's driver module.
-   *
-   * @input:
-   *   face ::
-   *     The source face handle.
-   *
-   *   id ::
-   *     A string describing the service as defined in the service's
-   *     header files (e.g. FT_SERVICE_ID_MULTI_MASTERS which expands to
-   *     `multi-masters').  It is automatically prefixed with
-   *     `FT_SERVICE_ID_'.
-   *
-   * @output:
-   *   ptr ::
-   *     A variable that receives the service pointer.  Will be NULL
-   *     if not found.
-   */
-#ifdef __cplusplus
-
-#define FT_FACE_FIND_SERVICE( face, ptr, id )                               \
-  FT_BEGIN_STMNT                                                            \
-    FT_Module    module = FT_MODULE( FT_FACE( face )->driver );             \
-    FT_Pointer   _tmp_  = NULL;                                             \
-    FT_Pointer*  _pptr_ = (FT_Pointer*)&(ptr);                              \
-                                                                            \
-                                                                            \
-    if ( module->clazz->get_interface )                                     \
-      _tmp_ = module->clazz->get_interface( module, FT_SERVICE_ID_ ## id ); \
-    *_pptr_ = _tmp_;                                                        \
-  FT_END_STMNT
-
-#else /* !C++ */
-
-#define FT_FACE_FIND_SERVICE( face, ptr, id )                               \
-  FT_BEGIN_STMNT                                                            \
-    FT_Module   module = FT_MODULE( FT_FACE( face )->driver );              \
-    FT_Pointer  _tmp_  = NULL;                                              \
-                                                                            \
-    if ( module->clazz->get_interface )                                     \
-      _tmp_ = module->clazz->get_interface( module, FT_SERVICE_ID_ ## id ); \
-    ptr = _tmp_;                                                            \
-  FT_END_STMNT
-
-#endif /* !C++ */
-
-  /*
-   * @macro:
-   *   FT_FACE_FIND_GLOBAL_SERVICE
-   *
-   * @description:
-   *   This macro is used to look up a service from all modules.
-   *
-   * @input:
-   *   face ::
-   *     The source face handle.
-   *
-   *   id ::
-   *     A string describing the service as defined in the service's
-   *     header files (e.g. FT_SERVICE_ID_MULTI_MASTERS which expands to
-   *     `multi-masters').  It is automatically prefixed with
-   *     `FT_SERVICE_ID_'.
-   *
-   * @output:
-   *   ptr ::
-   *     A variable that receives the service pointer.  Will be NULL
-   *     if not found.
-   */
-#ifdef __cplusplus
-
-#define FT_FACE_FIND_GLOBAL_SERVICE( face, ptr, id )               \
-  FT_BEGIN_STMNT                                                   \
-    FT_Module    module = FT_MODULE( FT_FACE( face )->driver );    \
-    FT_Pointer   _tmp_;                                            \
-    FT_Pointer*  _pptr_ = (FT_Pointer*)&(ptr);                     \
-                                                                   \
-                                                                   \
-    _tmp_ = ft_module_get_service( module, FT_SERVICE_ID_ ## id ); \
-    *_pptr_ = _tmp_;                                               \
-  FT_END_STMNT
-
-#else /* !C++ */
-
-#define FT_FACE_FIND_GLOBAL_SERVICE( face, ptr, id )               \
-  FT_BEGIN_STMNT                                                   \
-    FT_Module   module = FT_MODULE( FT_FACE( face )->driver );     \
-    FT_Pointer  _tmp_;                                             \
-                                                                   \
-                                                                   \
-    _tmp_ = ft_module_get_service( module, FT_SERVICE_ID_ ## id ); \
-    ptr   = _tmp_;                                                 \
-  FT_END_STMNT
-
-#endif /* !C++ */
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****         S E R V I C E   D E S C R I P T O R S                 *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /*
-   *  The following structure is used to _describe_ a given service
-   *  to the library.  This is useful to build simple static service lists.
-   */
-  typedef struct  FT_ServiceDescRec_
-  {
-    const char*  serv_id;     /* service name         */
-    const void*  serv_data;   /* service pointer/data */
-
-  } FT_ServiceDescRec;
-
-  typedef const FT_ServiceDescRec*  FT_ServiceDesc;
-
-
-  /*
-   *  Parse a list of FT_ServiceDescRec descriptors and look for
-   *  a specific service by ID.  Note that the last element in the
-   *  array must be { NULL, NULL }, and that the function should
-   *  return NULL if the service isn't available.
-   *
-   *  This function can be used by modules to implement their
-   *  `get_service' method.
-   */
-  FT_BASE( FT_Pointer )
-  ft_service_list_lookup( FT_ServiceDesc  service_descriptors,
-                          const char*     service_id );
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****             S E R V I C E S   C A C H E                       *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /*
-   *  This structure is used to store a cache for several frequently used
-   *  services.  It is the type of `face->internal->services'.  You
-   *  should only use FT_FACE_LOOKUP_SERVICE to access it.
-   *
-   *  All fields should have the type FT_Pointer to relax compilation
-   *  dependencies.  We assume the developer isn't completely stupid.
-   *
-   *  Each field must be named `service_XXXX' where `XXX' corresponds to
-   *  the correct FT_SERVICE_ID_XXXX macro.  See the definition of
-   *  FT_FACE_LOOKUP_SERVICE below how this is implemented.
-   *
-   */
-  typedef struct  FT_ServiceCacheRec_
-  {
-    FT_Pointer  service_POSTSCRIPT_FONT_NAME;
-    FT_Pointer  service_MULTI_MASTERS;
-    FT_Pointer  service_GLYPH_DICT;
-    FT_Pointer  service_PFR_METRICS;
-    FT_Pointer  service_WINFNT;
-
-  } FT_ServiceCacheRec, *FT_ServiceCache;
-
-
-  /*
-   *  A magic number used within the services cache.
-   */
-#define FT_SERVICE_UNAVAILABLE  ((FT_Pointer)-2)  /* magic number */
-
-
-  /*
-   * @macro:
-   *   FT_FACE_LOOKUP_SERVICE
-   *
-   * @description:
-   *   This macro is used to lookup a service from a face's driver module
-   *   using its cache.
-   *
-   * @input:
-   *   face::
-   *     The source face handle containing the cache.
-   *
-   *   field ::
-   *     The field name in the cache.
-   *
-   *   id ::
-   *     The service ID.
-   *
-   * @output:
-   *   ptr ::
-   *     A variable receiving the service data.  NULL if not available.
-   */
-#ifdef __cplusplus
-
-#define FT_FACE_LOOKUP_SERVICE( face, ptr, id )                \
-  FT_BEGIN_STMNT                                               \
-    FT_Pointer   svc;                                          \
-    FT_Pointer*  Pptr = (FT_Pointer*)&(ptr);                   \
-                                                               \
-                                                               \
-    svc = FT_FACE( face )->internal->services. service_ ## id; \
-    if ( svc == FT_SERVICE_UNAVAILABLE )                       \
-      svc = NULL;                                              \
-    else if ( svc == NULL )                                    \
-    {                                                          \
-      FT_FACE_FIND_SERVICE( face, svc, id );                   \
-                                                               \
-      FT_FACE( face )->internal->services. service_ ## id =    \
-        (FT_Pointer)( svc != NULL ? svc                        \
-                                  : FT_SERVICE_UNAVAILABLE );  \
-    }                                                          \
-    *Pptr = svc;                                               \
-  FT_END_STMNT
-
-#else /* !C++ */
-
-#define FT_FACE_LOOKUP_SERVICE( face, ptr, id )                \
-  FT_BEGIN_STMNT                                               \
-    FT_Pointer  svc;                                           \
-                                                               \
-                                                               \
-    svc = FT_FACE( face )->internal->services. service_ ## id; \
-    if ( svc == FT_SERVICE_UNAVAILABLE )                       \
-      svc = NULL;                                              \
-    else if ( svc == NULL )                                    \
-    {                                                          \
-      FT_FACE_FIND_SERVICE( face, svc, id );                   \
-                                                               \
-      FT_FACE( face )->internal->services. service_ ## id =    \
-        (FT_Pointer)( svc != NULL ? svc                        \
-                                  : FT_SERVICE_UNAVAILABLE );  \
-    }                                                          \
-    ptr = svc;                                                 \
-  FT_END_STMNT
-
-#endif /* !C++ */
-
-  /*
-   *  A macro used to define new service structure types.
-   */
-
-#define FT_DEFINE_SERVICE( name )            \
-  typedef struct FT_Service_ ## name ## Rec_ \
-    FT_Service_ ## name ## Rec ;             \
-  typedef struct FT_Service_ ## name ## Rec_ \
-    const * FT_Service_ ## name ;            \
-  struct FT_Service_ ## name ## Rec_
-
-  /* */
-
-  /*
-   *  The header files containing the services.
-   */
-
-#define FT_SERVICE_BDF_H                <freetype/internal/services/svbdf.h>
-#define FT_SERVICE_GLYPH_DICT_H         <freetype/internal/services/svgldict.h>
-#define FT_SERVICE_MULTIPLE_MASTERS_H   <freetype/internal/services/svmm.h>
-#define FT_SERVICE_OPENTYPE_VALIDATE_H  <freetype/internal/services/svotval.h>
-#define FT_SERVICE_PFR_H                <freetype/internal/services/svpfr.h>
-#define FT_SERVICE_POSTSCRIPT_CMAPS_H   <freetype/internal/services/svpscmap.h>
-#define FT_SERVICE_POSTSCRIPT_INFO_H    <freetype/internal/services/svpsinfo.h>
-#define FT_SERVICE_POSTSCRIPT_NAME_H    <freetype/internal/services/svpostnm.h>
-#define FT_SERVICE_SFNT_H               <freetype/internal/services/svsfnt.h>
-#define FT_SERVICE_TT_CMAP_H            <freetype/internal/services/svttcmap.h>
-#define FT_SERVICE_WINFNT_H             <freetype/internal/services/svwinfnt.h>
-#define FT_SERVICE_XFREE86_NAME_H       <freetype/internal/services/svxf86nm.h>
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __FTSERV_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftstream.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftstream.h
deleted file mode 100644 (file)
index 1fa9db4..0000000
+++ /dev/null
@@ -1,536 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftstream.h                                                             */
-/*                                                                         */
-/*    Stream handling (specification).                                     */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2004, 2005 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTSTREAM_H__
-#define __FTSTREAM_H__
-
-
-#include <ft2build.h>
-#include FT_SYSTEM_H
-#include FT_INTERNAL_OBJECTS_H
-
-
-FT_BEGIN_HEADER
-
-
-  /* format of an 8-bit frame_op value:           */
-  /*                                              */
-  /* bit  76543210                                */
-  /*      xxxxxxes                                */
-  /*                                              */
-  /* s is set to 1 if the value is signed.        */
-  /* e is set to 1 if the value is little-endian. */
-  /* xxx is a command.                            */
-
-#define FT_FRAME_OP_SHIFT         2
-#define FT_FRAME_OP_SIGNED        1
-#define FT_FRAME_OP_LITTLE        2
-#define FT_FRAME_OP_COMMAND( x )  ( x >> FT_FRAME_OP_SHIFT )
-
-#define FT_MAKE_FRAME_OP( command, little, sign ) \
-          ( ( command << FT_FRAME_OP_SHIFT ) | ( little << 1 ) | sign )
-
-#define FT_FRAME_OP_END    0
-#define FT_FRAME_OP_START  1  /* start a new frame     */
-#define FT_FRAME_OP_BYTE   2  /* read 1-byte value     */
-#define FT_FRAME_OP_SHORT  3  /* read 2-byte value     */
-#define FT_FRAME_OP_LONG   4  /* read 4-byte value     */
-#define FT_FRAME_OP_OFF3   5  /* read 3-byte value     */
-#define FT_FRAME_OP_BYTES  6  /* read a bytes sequence */
-
-
-  typedef enum  FT_Frame_Op_
-  {
-    ft_frame_end       = 0,
-    ft_frame_start     = FT_MAKE_FRAME_OP( FT_FRAME_OP_START, 0, 0 ),
-
-    ft_frame_byte      = FT_MAKE_FRAME_OP( FT_FRAME_OP_BYTE,  0, 0 ),
-    ft_frame_schar     = FT_MAKE_FRAME_OP( FT_FRAME_OP_BYTE,  0, 1 ),
-
-    ft_frame_ushort_be = FT_MAKE_FRAME_OP( FT_FRAME_OP_SHORT, 0, 0 ),
-    ft_frame_short_be  = FT_MAKE_FRAME_OP( FT_FRAME_OP_SHORT, 0, 1 ),
-    ft_frame_ushort_le = FT_MAKE_FRAME_OP( FT_FRAME_OP_SHORT, 1, 0 ),
-    ft_frame_short_le  = FT_MAKE_FRAME_OP( FT_FRAME_OP_SHORT, 1, 1 ),
-
-    ft_frame_ulong_be  = FT_MAKE_FRAME_OP( FT_FRAME_OP_LONG, 0, 0 ),
-    ft_frame_long_be   = FT_MAKE_FRAME_OP( FT_FRAME_OP_LONG, 0, 1 ),
-    ft_frame_ulong_le  = FT_MAKE_FRAME_OP( FT_FRAME_OP_LONG, 1, 0 ),
-    ft_frame_long_le   = FT_MAKE_FRAME_OP( FT_FRAME_OP_LONG, 1, 1 ),
-
-    ft_frame_uoff3_be  = FT_MAKE_FRAME_OP( FT_FRAME_OP_OFF3, 0, 0 ),
-    ft_frame_off3_be   = FT_MAKE_FRAME_OP( FT_FRAME_OP_OFF3, 0, 1 ),
-    ft_frame_uoff3_le  = FT_MAKE_FRAME_OP( FT_FRAME_OP_OFF3, 1, 0 ),
-    ft_frame_off3_le   = FT_MAKE_FRAME_OP( FT_FRAME_OP_OFF3, 1, 1 ),
-
-    ft_frame_bytes     = FT_MAKE_FRAME_OP( FT_FRAME_OP_BYTES, 0, 0 ),
-    ft_frame_skip      = FT_MAKE_FRAME_OP( FT_FRAME_OP_BYTES, 0, 1 )
-
-  } FT_Frame_Op;
-
-
-  typedef struct  FT_Frame_Field_
-  {
-    FT_Byte    value;
-    FT_Byte    size;
-    FT_UShort  offset;
-
-  } FT_Frame_Field;
-
-
-  /* Construct an FT_Frame_Field out of a structure type and a field name. */
-  /* The structure type must be set in the FT_STRUCTURE macro before       */
-  /* calling the FT_FRAME_START() macro.                                   */
-  /*                                                                       */
-#define FT_FIELD_SIZE( f ) \
-          (FT_Byte)sizeof ( ((FT_STRUCTURE*)0)->f )
-
-#define FT_FIELD_SIZE_DELTA( f ) \
-          (FT_Byte)sizeof ( ((FT_STRUCTURE*)0)->f[0] )
-
-#define FT_FIELD_OFFSET( f ) \
-          (FT_UShort)( offsetof( FT_STRUCTURE, f ) )
-
-#define FT_FRAME_FIELD( frame_op, field ) \
-          {                               \
-            frame_op,                     \
-            FT_FIELD_SIZE( field ),       \
-            FT_FIELD_OFFSET( field )      \
-          }
-
-#define FT_MAKE_EMPTY_FIELD( frame_op )  { frame_op, 0, 0 }
-
-#define FT_FRAME_START( size )   { ft_frame_start, 0, size }
-#define FT_FRAME_END             { ft_frame_end, 0, 0 }
-
-#define FT_FRAME_LONG( f )       FT_FRAME_FIELD( ft_frame_long_be, f )
-#define FT_FRAME_ULONG( f )      FT_FRAME_FIELD( ft_frame_ulong_be, f )
-#define FT_FRAME_SHORT( f )      FT_FRAME_FIELD( ft_frame_short_be, f )
-#define FT_FRAME_USHORT( f )     FT_FRAME_FIELD( ft_frame_ushort_be, f )
-#define FT_FRAME_OFF3( f )       FT_FRAME_FIELD( ft_frame_off3_be, f )
-#define FT_FRAME_UOFF3( f )      FT_FRAME_FIELD( ft_frame_uoff3_be, f )
-#define FT_FRAME_BYTE( f )       FT_FRAME_FIELD( ft_frame_byte, f )
-#define FT_FRAME_CHAR( f )       FT_FRAME_FIELD( ft_frame_schar, f )
-
-#define FT_FRAME_LONG_LE( f )    FT_FRAME_FIELD( ft_frame_long_le, f )
-#define FT_FRAME_ULONG_LE( f )   FT_FRAME_FIELD( ft_frame_ulong_le, f )
-#define FT_FRAME_SHORT_LE( f )   FT_FRAME_FIELD( ft_frame_short_le, f )
-#define FT_FRAME_USHORT_LE( f )  FT_FRAME_FIELD( ft_frame_ushort_le, f )
-#define FT_FRAME_OFF3_LE( f )    FT_FRAME_FIELD( ft_frame_off3_le, f )
-#define FT_FRAME_UOFF3_LE( f )   FT_FRAME_FIELD( ft_frame_uoff3_le, f )
-
-#define FT_FRAME_SKIP_LONG       { ft_frame_long_be, 0, 0 }
-#define FT_FRAME_SKIP_SHORT      { ft_frame_short_be, 0, 0 }
-#define FT_FRAME_SKIP_BYTE       { ft_frame_byte, 0, 0 }
-
-#define FT_FRAME_BYTES( field, count ) \
-          {                            \
-            ft_frame_bytes,            \
-            count,                     \
-            FT_FIELD_OFFSET( field )   \
-          }
-
-#define FT_FRAME_SKIP_BYTES( count )  { ft_frame_skip, count, 0 }
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Integer extraction macros -- the `buffer' parameter must ALWAYS be of */
-  /* type `char*' or equivalent (1-byte elements).                         */
-  /*                                                                       */
-
-#define FT_BYTE_( p, i )  ( ((const FT_Byte*)(p))[(i)] )
-#define FT_INT8_( p, i )  ( ((const FT_Char*)(p))[(i)] )
-
-#define FT_INT16( x )   ( (FT_Int16)(x)  )
-#define FT_UINT16( x )  ( (FT_UInt16)(x) )
-#define FT_INT32( x )   ( (FT_Int32)(x)  )
-#define FT_UINT32( x )  ( (FT_UInt32)(x) )
-
-#define FT_BYTE_I16( p, i, s )  ( FT_INT16(  FT_BYTE_( p, i ) ) << (s) )
-#define FT_BYTE_U16( p, i, s )  ( FT_UINT16( FT_BYTE_( p, i ) ) << (s) )
-#define FT_BYTE_I32( p, i, s )  ( FT_INT32(  FT_BYTE_( p, i ) ) << (s) )
-#define FT_BYTE_U32( p, i, s )  ( FT_UINT32( FT_BYTE_( p, i ) ) << (s) )
-
-#define FT_INT8_I16( p, i, s )  ( FT_INT16(  FT_INT8_( p, i ) ) << (s) )
-#define FT_INT8_U16( p, i, s )  ( FT_UINT16( FT_INT8_( p, i ) ) << (s) )
-#define FT_INT8_I32( p, i, s )  ( FT_INT32(  FT_INT8_( p, i ) ) << (s) )
-#define FT_INT8_U32( p, i, s )  ( FT_UINT32( FT_INT8_( p, i ) ) << (s) )
-
-
-#define FT_PEEK_SHORT( p )  FT_INT16( FT_INT8_I16( p, 0, 8) | \
-                                      FT_BYTE_I16( p, 1, 0) )
-
-#define FT_PEEK_USHORT( p )  FT_UINT16( FT_BYTE_U16( p, 0, 8 ) | \
-                                        FT_BYTE_U16( p, 1, 0 ) )
-
-#define FT_PEEK_LONG( p )  FT_INT32( FT_INT8_I32( p, 0, 24 ) | \
-                                     FT_BYTE_I32( p, 1, 16 ) | \
-                                     FT_BYTE_I32( p, 2,  8 ) | \
-                                     FT_BYTE_I32( p, 3,  0 ) )
-
-#define FT_PEEK_ULONG( p )  FT_UINT32( FT_BYTE_U32( p, 0, 24 ) | \
-                                       FT_BYTE_U32( p, 1, 16 ) | \
-                                       FT_BYTE_U32( p, 2,  8 ) | \
-                                       FT_BYTE_U32( p, 3,  0 ) )
-
-#define FT_PEEK_OFF3( p )  FT_INT32( FT_INT8_I32( p, 0, 16 ) | \
-                                     FT_BYTE_I32( p, 1,  8 ) | \
-                                     FT_BYTE_I32( p, 2,  0 ) )
-
-#define FT_PEEK_UOFF3( p )  FT_UINT32( FT_BYTE_U32( p, 0, 16 ) | \
-                                       FT_BYTE_U32( p, 1,  8 ) | \
-                                       FT_BYTE_U32( p, 2,  0 ) )
-
-#define FT_PEEK_SHORT_LE( p )  FT_INT16( FT_INT8_I16( p, 1, 8 ) | \
-                                         FT_BYTE_I16( p, 0, 0 ) )
-
-#define FT_PEEK_USHORT_LE( p )  FT_UINT16( FT_BYTE_U16( p, 1, 8 ) |  \
-                                           FT_BYTE_U16( p, 0, 0 ) )
-
-#define FT_PEEK_LONG_LE( p )  FT_INT32( FT_INT8_I32( p, 3, 24 ) | \
-                                        FT_BYTE_I32( p, 2, 16 ) | \
-                                        FT_BYTE_I32( p, 1,  8 ) | \
-                                        FT_BYTE_I32( p, 0,  0 ) )
-
-#define FT_PEEK_ULONG_LE( p )  FT_UINT32( FT_BYTE_U32( p, 3, 24 ) | \
-                                          FT_BYTE_U32( p, 2, 16 ) | \
-                                          FT_BYTE_U32( p, 1,  8 ) | \
-                                          FT_BYTE_U32( p, 0,  0 ) )
-
-#define FT_PEEK_OFF3_LE( p )  FT_INT32( FT_INT8_I32( p, 2, 16 ) | \
-                                        FT_BYTE_I32( p, 1,  8 ) | \
-                                        FT_BYTE_I32( p, 0,  0 ) )
-
-#define FT_PEEK_UOFF3_LE( p )  FT_UINT32( FT_BYTE_U32( p, 2, 16 ) | \
-                                          FT_BYTE_U32( p, 1,  8 ) | \
-                                          FT_BYTE_U32( p, 0,  0 ) )
-
-
-#define FT_NEXT_CHAR( buffer )       \
-          ( (signed char)*buffer++ )
-
-#define FT_NEXT_BYTE( buffer )         \
-          ( (unsigned char)*buffer++ )
-
-#define FT_NEXT_SHORT( buffer )                                   \
-          ( (short)( buffer += 2, FT_PEEK_SHORT( buffer - 2 ) ) )
-
-#define FT_NEXT_USHORT( buffer )                                            \
-          ( (unsigned short)( buffer += 2, FT_PEEK_USHORT( buffer - 2 ) ) )
-
-#define FT_NEXT_OFF3( buffer )                                  \
-          ( (long)( buffer += 3, FT_PEEK_OFF3( buffer - 3 ) ) )
-
-#define FT_NEXT_UOFF3( buffer )                                           \
-          ( (unsigned long)( buffer += 3, FT_PEEK_UOFF3( buffer - 3 ) ) )
-
-#define FT_NEXT_LONG( buffer )                                  \
-          ( (long)( buffer += 4, FT_PEEK_LONG( buffer - 4 ) ) )
-
-#define FT_NEXT_ULONG( buffer )                                           \
-          ( (unsigned long)( buffer += 4, FT_PEEK_ULONG( buffer - 4 ) ) )
-
-
-#define FT_NEXT_SHORT_LE( buffer )                                   \
-          ( (short)( buffer += 2, FT_PEEK_SHORT_LE( buffer - 2 ) ) )
-
-#define FT_NEXT_USHORT_LE( buffer )                                            \
-          ( (unsigned short)( buffer += 2, FT_PEEK_USHORT_LE( buffer - 2 ) ) )
-
-#define FT_NEXT_OFF3_LE( buffer )                                  \
-          ( (long)( buffer += 3, FT_PEEK_OFF3_LE( buffer - 3 ) ) )
-
-#define FT_NEXT_UOFF3_LE( buffer )                                           \
-          ( (unsigned long)( buffer += 3, FT_PEEK_UOFF3_LE( buffer - 3 ) ) )
-
-#define FT_NEXT_LONG_LE( buffer )                                  \
-          ( (long)( buffer += 4, FT_PEEK_LONG_LE( buffer - 4 ) ) )
-
-#define FT_NEXT_ULONG_LE( buffer )                                           \
-          ( (unsigned long)( buffer += 4, FT_PEEK_ULONG_LE( buffer - 4 ) ) )
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Each GET_xxxx() macro uses an implicit `stream' variable.             */
-  /*                                                                       */
-#if 0
-#define FT_GET_MACRO( type )    FT_NEXT_ ## type ( stream->cursor )
-
-#define FT_GET_CHAR()       FT_GET_MACRO( CHAR )
-#define FT_GET_BYTE()       FT_GET_MACRO( BYTE )
-#define FT_GET_SHORT()      FT_GET_MACRO( SHORT )
-#define FT_GET_USHORT()     FT_GET_MACRO( USHORT )
-#define FT_GET_OFF3()       FT_GET_MACRO( OFF3 )
-#define FT_GET_UOFF3()      FT_GET_MACRO( UOFF3 )
-#define FT_GET_LONG()       FT_GET_MACRO( LONG )
-#define FT_GET_ULONG()      FT_GET_MACRO( ULONG )
-#define FT_GET_TAG4()       FT_GET_MACRO( ULONG )
-
-#define FT_GET_SHORT_LE()   FT_GET_MACRO( SHORT_LE )
-#define FT_GET_USHORT_LE()  FT_GET_MACRO( USHORT_LE )
-#define FT_GET_LONG_LE()    FT_GET_MACRO( LONG_LE )
-#define FT_GET_ULONG_LE()   FT_GET_MACRO( ULONG_LE )
-
-#else
-#define FT_GET_MACRO( func, type )        ( (type)func( stream ) )
-
-#define FT_GET_CHAR()       FT_GET_MACRO( FT_Stream_GetChar, FT_Char )
-#define FT_GET_BYTE()       FT_GET_MACRO( FT_Stream_GetChar, FT_Byte )
-#define FT_GET_SHORT()      FT_GET_MACRO( FT_Stream_GetShort, FT_Short )
-#define FT_GET_USHORT()     FT_GET_MACRO( FT_Stream_GetShort, FT_UShort )
-#define FT_GET_OFF3()       FT_GET_MACRO( FT_Stream_GetOffset, FT_Long )
-#define FT_GET_UOFF3()      FT_GET_MACRO( FT_Stream_GetOffset, FT_ULong )
-#define FT_GET_LONG()       FT_GET_MACRO( FT_Stream_GetLong, FT_Long )
-#define FT_GET_ULONG()      FT_GET_MACRO( FT_Stream_GetLong, FT_ULong )
-#define FT_GET_TAG4()       FT_GET_MACRO( FT_Stream_GetLong, FT_ULong )
-
-#define FT_GET_SHORT_LE()   FT_GET_MACRO( FT_Stream_GetShortLE, FT_Short )
-#define FT_GET_USHORT_LE()  FT_GET_MACRO( FT_Stream_GetShortLE, FT_UShort )
-#define FT_GET_LONG_LE()    FT_GET_MACRO( FT_Stream_GetLongLE, FT_Long )
-#define FT_GET_ULONG_LE()   FT_GET_MACRO( FT_Stream_GetLongLE, FT_ULong )
-#endif
-
-#define FT_READ_MACRO( func, type, var )        \
-          ( var = (type)func( stream, &error ), \
-            error != FT_Err_Ok )
-
-#define FT_READ_BYTE( var )       FT_READ_MACRO( FT_Stream_ReadChar, FT_Byte, var )
-#define FT_READ_CHAR( var )       FT_READ_MACRO( FT_Stream_ReadChar, FT_Char, var )
-#define FT_READ_SHORT( var )      FT_READ_MACRO( FT_Stream_ReadShort, FT_Short, var )
-#define FT_READ_USHORT( var )     FT_READ_MACRO( FT_Stream_ReadShort, FT_UShort, var )
-#define FT_READ_OFF3( var )       FT_READ_MACRO( FT_Stream_ReadOffset, FT_Long, var )
-#define FT_READ_UOFF3( var )      FT_READ_MACRO( FT_Stream_ReadOffset, FT_ULong, var )
-#define FT_READ_LONG( var )       FT_READ_MACRO( FT_Stream_ReadLong, FT_Long, var )
-#define FT_READ_ULONG( var )      FT_READ_MACRO( FT_Stream_ReadLong, FT_ULong, var )
-
-#define FT_READ_SHORT_LE( var )   FT_READ_MACRO( FT_Stream_ReadShortLE, FT_Short, var )
-#define FT_READ_USHORT_LE( var )  FT_READ_MACRO( FT_Stream_ReadShortLE, FT_UShort, var )
-#define FT_READ_LONG_LE( var )    FT_READ_MACRO( FT_Stream_ReadLongLE, FT_Long, var )
-#define FT_READ_ULONG_LE( var )   FT_READ_MACRO( FT_Stream_ReadLongLE, FT_ULong, var )
-
-
-#ifndef FT_CONFIG_OPTION_NO_DEFAULT_SYSTEM
-
-  /* initialize a stream for reading a regular system stream */
-  FT_EXPORT( FT_Error )
-  FT_Stream_Open( FT_Stream    stream,
-                  const char*  filepathname );
-
-#endif /* FT_CONFIG_OPTION_NO_DEFAULT_SYSTEM */
-
-
-  /* create a new (input) stream from an FT_Open_Args structure */
-  FT_BASE( FT_Error )
-  FT_Stream_New( FT_Library           library,
-                 const FT_Open_Args*  args,
-                 FT_Stream           *astream );
-
-  /* free a stream */
-  FT_BASE( void )
-  FT_Stream_Free( FT_Stream  stream,
-                  FT_Int     external );
-
-  /* initialize a stream for reading in-memory data */
-  FT_BASE( void )
-  FT_Stream_OpenMemory( FT_Stream       stream,
-                        const FT_Byte*  base,
-                        FT_ULong        size );
-
-  /* close a stream (does not destroy the stream structure) */
-  FT_BASE( void )
-  FT_Stream_Close( FT_Stream  stream );
-
-
-  /* seek within a stream. position is relative to start of stream */
-  FT_BASE( FT_Error )
-  FT_Stream_Seek( FT_Stream  stream,
-                  FT_ULong   pos );
-
-  /* skip bytes in a stream */
-  FT_BASE( FT_Error )
-  FT_Stream_Skip( FT_Stream  stream,
-                  FT_Long    distance );
-
-  /* return current stream position */
-  FT_BASE( FT_Long )
-  FT_Stream_Pos( FT_Stream  stream );
-
-  /* read bytes from a stream into a user-allocated buffer, returns an */
-  /* error if not all bytes could be read.                             */
-  FT_BASE( FT_Error )
-  FT_Stream_Read( FT_Stream  stream,
-                  FT_Byte*   buffer,
-                  FT_ULong   count );
-
-  /* read bytes from a stream at a given position */
-  FT_BASE( FT_Error )
-  FT_Stream_ReadAt( FT_Stream  stream,
-                    FT_ULong   pos,
-                    FT_Byte*   buffer,
-                    FT_ULong   count );
-
-  /* try to read bytes at the end of a stream; return number of bytes */
-  /* really available                                                 */
-  FT_BASE( FT_ULong )
-  FT_Stream_TryRead( FT_Stream  stream,
-                     FT_Byte*   buffer,
-                     FT_ULong   count );
-
-  /* Enter a frame of `count' consecutive bytes in a stream.  Returns an */
-  /* error if the frame could not be read/accessed.  The caller can use  */
-  /* the FT_Stream_Get_XXX functions to retrieve frame data without      */
-  /* error checks.                                                       */
-  /*                                                                     */
-  /* You must _always_ call FT_Stream_ExitFrame() once you have entered  */
-  /* a stream frame!                                                     */
-  /*                                                                     */
-  FT_BASE( FT_Error )
-  FT_Stream_EnterFrame( FT_Stream  stream,
-                        FT_ULong   count );
-
-  /* exit a stream frame */
-  FT_BASE( void )
-  FT_Stream_ExitFrame( FT_Stream  stream );
-
-  /* Extract a stream frame.  If the stream is disk-based, a heap block */
-  /* is allocated and the frame bytes are read into it.  If the stream  */
-  /* is memory-based, this function simply set a pointer to the data.   */
-  /*                                                                    */
-  /* Useful to optimize access to memory-based streams transparently.   */
-  /*                                                                    */
-  /* All extracted frames must be `freed` with a call to the function   */
-  /* FT_Stream_ReleaseFrame().                                          */
-  /*                                                                    */
-  FT_BASE( FT_Error )
-  FT_Stream_ExtractFrame( FT_Stream  stream,
-                          FT_ULong   count,
-                          FT_Byte**  pbytes );
-
-  /* release an extract frame (see FT_Stream_ExtractFrame) */
-  FT_BASE( void )
-  FT_Stream_ReleaseFrame( FT_Stream  stream,
-                          FT_Byte**  pbytes );
-
-  /* read a byte from an entered frame */
-  FT_BASE( FT_Char )
-  FT_Stream_GetChar( FT_Stream  stream );
-
-  /* read a 16-bit big-endian integer from an entered frame */
-  FT_BASE( FT_Short )
-  FT_Stream_GetShort( FT_Stream  stream );
-
-  /* read a 24-bit big-endian integer from an entered frame */
-  FT_BASE( FT_Long )
-  FT_Stream_GetOffset( FT_Stream  stream );
-
-  /* read a 32-bit big-endian integer from an entered frame */
-  FT_BASE( FT_Long )
-  FT_Stream_GetLong( FT_Stream  stream );
-
-  /* read a 16-bit little-endian integer from an entered frame */
-  FT_BASE( FT_Short )
-  FT_Stream_GetShortLE( FT_Stream  stream );
-
-  /* read a 32-bit little-endian integer from an entered frame */
-  FT_BASE( FT_Long )
-  FT_Stream_GetLongLE( FT_Stream  stream );
-
-
-  /* read a byte from a stream */
-  FT_BASE( FT_Char )
-  FT_Stream_ReadChar( FT_Stream  stream,
-                      FT_Error*  error );
-
-  /* read a 16-bit big-endian integer from a stream */
-  FT_BASE( FT_Short )
-  FT_Stream_ReadShort( FT_Stream  stream,
-                       FT_Error*  error );
-
-  /* read a 24-bit big-endian integer from a stream */
-  FT_BASE( FT_Long )
-  FT_Stream_ReadOffset( FT_Stream  stream,
-                        FT_Error*  error );
-
-  /* read a 32-bit big-endian integer from a stream */
-  FT_BASE( FT_Long )
-  FT_Stream_ReadLong( FT_Stream  stream,
-                      FT_Error*  error );
-
-  /* read a 16-bit little-endian integer from a stream */
-  FT_BASE( FT_Short )
-  FT_Stream_ReadShortLE( FT_Stream  stream,
-                         FT_Error*  error );
-
-  /* read a 32-bit little-endian integer from a stream */
-  FT_BASE( FT_Long )
-  FT_Stream_ReadLongLE( FT_Stream  stream,
-                        FT_Error*  error );
-
-  /* Read a structure from a stream.  The structure must be described */
-  /* by an array of FT_Frame_Field records.                           */
-  FT_BASE( FT_Error )
-  FT_Stream_ReadFields( FT_Stream              stream,
-                        const FT_Frame_Field*  fields,
-                        void*                  structure );
-
-
-#define FT_STREAM_POS()           \
-          FT_Stream_Pos( stream )
-
-#define FT_STREAM_SEEK( position )                           \
-          FT_SET_ERROR( FT_Stream_Seek( stream, position ) )
-
-#define FT_STREAM_SKIP( distance )                           \
-          FT_SET_ERROR( FT_Stream_Skip( stream, distance ) )
-
-#define FT_STREAM_READ( buffer, count )                   \
-          FT_SET_ERROR( FT_Stream_Read( stream,           \
-                                        (FT_Byte*)buffer, \
-                                        count ) )
-
-#define FT_STREAM_READ_AT( position, buffer, count )         \
-          FT_SET_ERROR( FT_Stream_ReadAt( stream,            \
-                                           position,         \
-                                           (FT_Byte*)buffer, \
-                                           count ) )
-
-#define FT_STREAM_READ_FIELDS( fields, object )                          \
-          FT_SET_ERROR( FT_Stream_ReadFields( stream, fields, object ) )
-
-
-#define FT_FRAME_ENTER( size )                                 \
-          FT_SET_ERROR( FT_Stream_EnterFrame( stream, size ) )
-
-#define FT_FRAME_EXIT()                 \
-          FT_Stream_ExitFrame( stream )
-
-#define FT_FRAME_EXTRACT( size, bytes )                                 \
-          FT_SET_ERROR( FT_Stream_ExtractFrame( stream, size,           \
-                                                (FT_Byte**)&(bytes) ) )
-
-#define FT_FRAME_RELEASE( bytes )                               \
-          FT_Stream_ReleaseFrame( stream, (FT_Byte**)&(bytes) )
-
-
-FT_END_HEADER
-
-#endif /* __FTSTREAM_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/fttrace.h b/dependencies64/sfml/extlibs/headers/freetype/internal/fttrace.h
deleted file mode 100644 (file)
index 1267e16..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  fttrace.h                                                              */
-/*                                                                         */
-/*    Tracing handling (specification only).                               */
-/*                                                                         */
-/*  Copyright 2002, 2004, 2005 by                                          */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /* definitions of trace levels for FreeType 2 */
-
-  /* the first level must always be `trace_any' */
-FT_TRACE_DEF( any )
-
-  /* base components */
-FT_TRACE_DEF( calc )      /* calculations            (ftcalc.c)   */
-FT_TRACE_DEF( memory )    /* memory manager          (ftobjs.c)   */
-FT_TRACE_DEF( stream )    /* stream manager          (ftstream.c) */
-FT_TRACE_DEF( io )        /* i/o interface           (ftsystem.c) */
-FT_TRACE_DEF( list )      /* list management         (ftlist.c)   */
-FT_TRACE_DEF( init )      /* initialization          (ftinit.c)   */
-FT_TRACE_DEF( objs )      /* base objects            (ftobjs.c)   */
-FT_TRACE_DEF( outline )   /* outline management      (ftoutln.c)  */
-FT_TRACE_DEF( glyph )     /* glyph management        (ftglyph.c)  */
-
-FT_TRACE_DEF( raster )    /* monochrome rasterizer   (ftraster.c) */
-FT_TRACE_DEF( smooth )    /* anti-aliasing raster    (ftgrays.c)  */
-FT_TRACE_DEF( mm )        /* MM interface            (ftmm.c)     */
-FT_TRACE_DEF( raccess )   /* resource fork accessor  (ftrfork.c)  */
-
-  /* Cache sub-system */
-FT_TRACE_DEF( cache )     /* cache sub-system        (ftcache.c, etc.) */
-
-  /* SFNT driver components */
-FT_TRACE_DEF( sfobjs )    /* SFNT object handler     (sfobjs.c)   */
-FT_TRACE_DEF( ttcmap )    /* charmap handler         (ttcmap.c)   */
-FT_TRACE_DEF( ttkern )    /* kerning handler         (ttkern.c)   */
-FT_TRACE_DEF( ttload )    /* basic TrueType tables   (ttload.c)   */
-FT_TRACE_DEF( ttpost )    /* PS table processing     (ttpost.c)   */
-FT_TRACE_DEF( ttsbit )    /* TrueType sbit handling  (ttsbit.c)   */
-
-  /* TrueType driver components */
-FT_TRACE_DEF( ttdriver )  /* TT font driver          (ttdriver.c) */
-FT_TRACE_DEF( ttgload )   /* TT glyph loader         (ttgload.c)  */
-FT_TRACE_DEF( ttinterp )  /* bytecode interpreter    (ttinterp.c) */
-FT_TRACE_DEF( ttobjs )    /* TT objects manager      (ttobjs.c)   */
-FT_TRACE_DEF( ttpload )   /* TT data/program loader  (ttpload.c)  */
-FT_TRACE_DEF( ttgxvar )   /* TrueType GX var handler (ttgxvar.c)  */
-
-  /* Type 1 driver components */
-FT_TRACE_DEF( t1driver )
-FT_TRACE_DEF( t1gload )
-FT_TRACE_DEF( t1hint )
-FT_TRACE_DEF( t1load )
-FT_TRACE_DEF( t1objs )
-FT_TRACE_DEF( t1parse )
-
-  /* PostScript helper module `psaux' */
-FT_TRACE_DEF( t1decode )
-FT_TRACE_DEF( psobjs )
-
-  /* PostScript hinting module `pshinter' */
-FT_TRACE_DEF( pshrec )
-FT_TRACE_DEF( pshalgo1 )
-FT_TRACE_DEF( pshalgo2 )
-
-  /* Type 2 driver components */
-FT_TRACE_DEF( cffdriver )
-FT_TRACE_DEF( cffgload )
-FT_TRACE_DEF( cffload )
-FT_TRACE_DEF( cffobjs )
-FT_TRACE_DEF( cffparse )
-
-  /* Type 42 driver component */
-FT_TRACE_DEF( t42 )
-
-  /* CID driver components */
-FT_TRACE_DEF( cidafm )
-FT_TRACE_DEF( ciddriver )
-FT_TRACE_DEF( cidgload )
-FT_TRACE_DEF( cidload )
-FT_TRACE_DEF( cidobjs )
-FT_TRACE_DEF( cidparse )
-
-  /* Windows font component */
-FT_TRACE_DEF( winfnt )
-
-  /* PCF font components */
-FT_TRACE_DEF( pcfdriver )
-FT_TRACE_DEF( pcfread )
-
-  /* BDF font components */
-FT_TRACE_DEF( bdfdriver )
-FT_TRACE_DEF( bdflib )
-
-  /* PFR font component */
-FT_TRACE_DEF( pfr )
-
-  /* OpenType validation components */
-FT_TRACE_DEF( otvmodule )
-FT_TRACE_DEF( otvcommon )
-FT_TRACE_DEF( otvbase )
-FT_TRACE_DEF( otvgdef )
-FT_TRACE_DEF( otvgpos )
-FT_TRACE_DEF( otvgsub )
-FT_TRACE_DEF( otvjstf )
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/ftvalid.h b/dependencies64/sfml/extlibs/headers/freetype/internal/ftvalid.h
deleted file mode 100644 (file)
index d52ff2f..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftvalid.h                                                              */
-/*                                                                         */
-/*    FreeType validation support (specification).                         */
-/*                                                                         */
-/*  Copyright 2004 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __FTVALID_H__
-#define __FTVALID_H__
-
-#include <ft2build.h>
-#include FT_CONFIG_STANDARD_LIBRARY_H   /* for ft_setjmp and ft_longjmp */
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /****                    V A L I D A T I O N                          ****/
-  /****                                                                 ****/
-  /****                                                                 ****/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /* handle to a validation object */
-  typedef struct FT_ValidatorRec_*  FT_Validator;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* There are three distinct validation levels defined here:              */
-  /*                                                                       */
-  /* FT_VALIDATE_DEFAULT ::                                                */
-  /*   A table that passes this validation level can be used reliably by   */
-  /*   FreeType.  It generally means that all offsets have been checked to */
-  /*   prevent out-of-bound reads, that array counts are correct, etc.     */
-  /*                                                                       */
-  /* FT_VALIDATE_TIGHT ::                                                  */
-  /*   A table that passes this validation level can be used reliably and  */
-  /*   doesn't contain invalid data.  For example, a charmap table that    */
-  /*   returns invalid glyph indices will not pass, even though it can     */
-  /*   be used with FreeType in default mode (the library will simply      */
-  /*   return an error later when trying to load the glyph).               */
-  /*                                                                       */
-  /*   It also checks that fields which must be a multiple of 2, 4, or 8,  */
-  /*   don't have incorrect values, etc.                                   */
-  /*                                                                       */
-  /* FT_VALIDATE_PARANOID ::                                               */
-  /*   Only for font debugging.  Checks that a table follows the           */
-  /*   specification by 100%.  Very few fonts will be able to pass this    */
-  /*   level anyway but it can be useful for certain tools like font       */
-  /*   editors/converters.                                                 */
-  /*                                                                       */
-  typedef enum  FT_ValidationLevel_
-  {
-    FT_VALIDATE_DEFAULT = 0,
-    FT_VALIDATE_TIGHT,
-    FT_VALIDATE_PARANOID
-
-  } FT_ValidationLevel;
-
-
-  /* validator structure */
-  typedef struct  FT_ValidatorRec_
-  {
-    const FT_Byte*      base;        /* address of table in memory       */
-    const FT_Byte*      limit;       /* `base' + sizeof(table) in memory */
-    FT_ValidationLevel  level;       /* validation level                 */
-    FT_Error            error;       /* error returned. 0 means success  */
-
-    ft_jmp_buf          jump_buffer; /* used for exception handling      */
-
-  } FT_ValidatorRec;
-
-
-#define FT_VALIDATOR( x )  ((FT_Validator)( x ))
-
-
-  FT_BASE( void )
-  ft_validator_init( FT_Validator        valid,
-                     const FT_Byte*      base,
-                     const FT_Byte*      limit,
-                     FT_ValidationLevel  level );
-
-  FT_BASE( FT_Int )
-  ft_validator_run( FT_Validator  valid );
-
-  /* Sets the error field in a validator, then calls `longjmp' to return */
-  /* to high-level caller.  Using `setjmp/longjmp' avoids many stupid    */
-  /* error checks within the validation routines.                        */
-  /*                                                                     */
-  FT_BASE( void )
-  ft_validator_error( FT_Validator  valid,
-                      FT_Error      error );
-
-
-  /* Calls ft_validate_error.  Assumes that the `valid' local variable */
-  /* holds a pointer to the current validator object.                  */
-  /*                                                                   */
-  /* Use preprocessor prescan to pass FT_ERR_PREFIX.                   */
-  /*                                                                   */
-#define FT_INVALID( _prefix, _error )  FT_INVALID_( _prefix, _error )
-#define FT_INVALID_( _prefix, _error ) \
-          ft_validator_error( valid, _prefix ## _error )
-
-  /* called when a broken table is detected */
-#define FT_INVALID_TOO_SHORT \
-          FT_INVALID( FT_ERR_PREFIX, Invalid_Table )
-
-  /* called when an invalid offset is detected */
-#define FT_INVALID_OFFSET \
-          FT_INVALID( FT_ERR_PREFIX, Invalid_Offset )
-
-  /* called when an invalid format/value is detected */
-#define FT_INVALID_FORMAT \
-          FT_INVALID( FT_ERR_PREFIX, Invalid_Table )
-
-  /* called when an invalid glyph index is detected */
-#define FT_INVALID_GLYPH_ID \
-          FT_INVALID( FT_ERR_PREFIX, Invalid_Glyph_Index )
-
-  /* called when an invalid field value is detected */
-#define FT_INVALID_DATA \
-          FT_INVALID( FT_ERR_PREFIX, Invalid_Table )
-
-
-FT_END_HEADER
-
-#endif /* __FTVALID_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/internal.h b/dependencies64/sfml/extlibs/headers/freetype/internal/internal.h
deleted file mode 100644 (file)
index 27d5dc5..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  internal.h                                                             */
-/*                                                                         */
-/*    Internal header files (specification only).                          */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is automatically included by `ft2build.h'.                  */
-  /* Do not include it manually!                                           */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#define FT_INTERNAL_OBJECTS_H             <freetype/internal/ftobjs.h>
-#define FT_INTERNAL_STREAM_H              <freetype/internal/ftstream.h>
-#define FT_INTERNAL_MEMORY_H              <freetype/internal/ftmemory.h>
-#define FT_INTERNAL_DEBUG_H               <freetype/internal/ftdebug.h>
-#define FT_INTERNAL_CALC_H                <freetype/internal/ftcalc.h>
-#define FT_INTERNAL_DRIVER_H              <freetype/internal/ftdriver.h>
-#define FT_INTERNAL_TRACE_H               <freetype/internal/fttrace.h>
-#define FT_INTERNAL_GLYPH_LOADER_H        <freetype/internal/ftgloadr.h>
-#define FT_INTERNAL_SFNT_H                <freetype/internal/sfnt.h>
-#define FT_INTERNAL_SERVICE_H             <freetype/internal/ftserv.h>
-#define FT_INTERNAL_RFORK_H               <freetype/internal/ftrfork.h>
-#define FT_INTERNAL_VALIDATE_H            <freetype/internal/ftvalid.h>
-
-#define FT_INTERNAL_TRUETYPE_TYPES_H      <freetype/internal/tttypes.h>
-#define FT_INTERNAL_TYPE1_TYPES_H         <freetype/internal/t1types.h>
-
-#define FT_INTERNAL_POSTSCRIPT_AUX_H      <freetype/internal/psaux.h>
-#define FT_INTERNAL_POSTSCRIPT_HINTS_H    <freetype/internal/pshints.h>
-#define FT_INTERNAL_POSTSCRIPT_GLOBALS_H  <freetype/internal/psglobal.h>
-
-#define FT_INTERNAL_AUTOHINT_H            <freetype/internal/autohint.h>
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/pcftypes.h b/dependencies64/sfml/extlibs/headers/freetype/internal/pcftypes.h
deleted file mode 100644 (file)
index 382796f..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/*  pcftypes.h
-
-  FreeType font driver for pcf fonts
-
-  Copyright (C) 2000, 2001, 2002 by
-  Francesco Zappa Nardelli
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-
-#ifndef __PCFTYPES_H__
-#define __PCFTYPES_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-
-FT_BEGIN_HEADER
-
-
-  typedef struct  PCF_Public_FaceRec_
-  {
-    FT_FaceRec    root;
-    FT_StreamRec  gzip_stream;
-    FT_Stream     gzip_source;
-
-    char*         charset_encoding;
-    char*         charset_registry;
-
-  } PCF_Public_FaceRec, *PCF_Public_Face;
-
-
-FT_END_HEADER
-
-#endif  /* __PCFTYPES_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/psaux.h b/dependencies64/sfml/extlibs/headers/freetype/internal/psaux.h
deleted file mode 100644 (file)
index cf1abf4..0000000
+++ /dev/null
@@ -1,741 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psaux.h                                                                */
-/*                                                                         */
-/*    Auxiliary functions and data structures related to PostScript fonts  */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __PSAUX_H__
-#define __PSAUX_H__
-
-
-#include <ft2build.h>
-#include FT_INTERNAL_OBJECTS_H
-#include FT_INTERNAL_TYPE1_TYPES_H
-#include FT_SERVICE_POSTSCRIPT_CMAPS_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                             T1_TABLE                          *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  typedef struct PS_TableRec_*              PS_Table;
-  typedef const struct PS_Table_FuncsRec_*  PS_Table_Funcs;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    PS_Table_FuncsRec                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A set of function pointers to manage PS_Table objects.             */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    table_init    :: Used to initialize a table.                       */
-  /*                                                                       */
-  /*    table_done    :: Finalizes resp. destroy a given table.            */
-  /*                                                                       */
-  /*    table_add     :: Adds a new object to a table.                     */
-  /*                                                                       */
-  /*    table_release :: Releases table data, then finalizes it.           */
-  /*                                                                       */
-  typedef struct  PS_Table_FuncsRec_
-  {
-    FT_Error
-    (*init)( PS_Table   table,
-             FT_Int     count,
-             FT_Memory  memory );
-
-    void
-    (*done)( PS_Table  table );
-
-    FT_Error
-    (*add)( PS_Table    table,
-            FT_Int      idx,
-            void*       object,
-            FT_PtrDist  length );
-
-    void
-    (*release)( PS_Table  table );
-
-  } PS_Table_FuncsRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    PS_TableRec                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A PS_Table is a simple object used to store an array of objects in */
-  /*    a single memory block.                                             */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    block     :: The address in memory of the growheap's block.  This  */
-  /*                 can change between two object adds, due to            */
-  /*                 reallocation.                                         */
-  /*                                                                       */
-  /*    cursor    :: The current top of the grow heap within its block.    */
-  /*                                                                       */
-  /*    capacity  :: The current size of the heap block.  Increments by    */
-  /*                 1kByte chunks.                                        */
-  /*                                                                       */
-  /*    max_elems :: The maximum number of elements in table.              */
-  /*                                                                       */
-  /*    num_elems :: The current number of elements in table.              */
-  /*                                                                       */
-  /*    elements  :: A table of element addresses within the block.        */
-  /*                                                                       */
-  /*    lengths   :: A table of element sizes within the block.            */
-  /*                                                                       */
-  /*    memory    :: The object used for memory operations                 */
-  /*                 (alloc/realloc).                                      */
-  /*                                                                       */
-  /*    funcs     :: A table of method pointers for this object.           */
-  /*                                                                       */
-  typedef struct  PS_TableRec_
-  {
-    FT_Byte*           block;          /* current memory block           */
-    FT_Offset          cursor;         /* current cursor in memory block */
-    FT_Offset          capacity;       /* current size of memory block   */
-    FT_Long            init;
-
-    FT_Int             max_elems;
-    FT_Int             num_elems;
-    FT_Byte**          elements;       /* addresses of table elements */
-    FT_PtrDist*        lengths;        /* lengths of table elements   */
-
-    FT_Memory          memory;
-    PS_Table_FuncsRec  funcs;
-
-  } PS_TableRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                       T1 FIELDS & TOKENS                      *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  typedef struct PS_ParserRec_*  PS_Parser;
-
-  typedef struct T1_TokenRec_*   T1_Token;
-
-  typedef struct T1_FieldRec_*   T1_Field;
-
-
-  /* simple enumeration type used to identify token types */
-  typedef enum  T1_TokenType_
-  {
-    T1_TOKEN_TYPE_NONE = 0,
-    T1_TOKEN_TYPE_ANY,
-    T1_TOKEN_TYPE_STRING,
-    T1_TOKEN_TYPE_ARRAY,
-
-    /* do not remove */
-    T1_TOKEN_TYPE_MAX
-
-  } T1_TokenType;
-
-
-  /* a simple structure used to identify tokens */
-  typedef struct  T1_TokenRec_
-  {
-    FT_Byte*      start;   /* first character of token in input stream */
-    FT_Byte*      limit;   /* first character after the token          */
-    T1_TokenType  type;    /* type of token                            */
-
-  } T1_TokenRec;
-
-
-  /* enumeration type used to identify object fields */
-  typedef enum  T1_FieldType_
-  {
-    T1_FIELD_TYPE_NONE = 0,
-    T1_FIELD_TYPE_BOOL,
-    T1_FIELD_TYPE_INTEGER,
-    T1_FIELD_TYPE_FIXED,
-    T1_FIELD_TYPE_FIXED_1000,
-    T1_FIELD_TYPE_STRING,
-    T1_FIELD_TYPE_KEY,
-    T1_FIELD_TYPE_BBOX,
-    T1_FIELD_TYPE_INTEGER_ARRAY,
-    T1_FIELD_TYPE_FIXED_ARRAY,
-    T1_FIELD_TYPE_CALLBACK,
-
-    /* do not remove */
-    T1_FIELD_TYPE_MAX
-
-  } T1_FieldType;
-
-
-  typedef enum  T1_FieldLocation_
-  {
-    T1_FIELD_LOCATION_CID_INFO,
-    T1_FIELD_LOCATION_FONT_DICT,
-    T1_FIELD_LOCATION_FONT_INFO,
-    T1_FIELD_LOCATION_PRIVATE,
-    T1_FIELD_LOCATION_BBOX,
-
-    /* do not remove */
-    T1_FIELD_LOCATION_MAX
-
-  } T1_FieldLocation;
-
-
-  typedef void
-  (*T1_Field_ParseFunc)( FT_Face     face,
-                         FT_Pointer  parser );
-
-
-  /* structure type used to model object fields */
-  typedef struct  T1_FieldRec_
-  {
-    const char*         ident;        /* field identifier               */
-    T1_FieldLocation    location;
-    T1_FieldType        type;         /* type of field                  */
-    T1_Field_ParseFunc  reader;
-    FT_UInt             offset;       /* offset of field in object      */
-    FT_Byte             size;         /* size of field in bytes         */
-    FT_UInt             array_max;    /* maximal number of elements for */
-                                      /* array                          */
-    FT_UInt             count_offset; /* offset of element count for    */
-                                      /* arrays                         */
-  } T1_FieldRec;
-
-
-#define T1_NEW_SIMPLE_FIELD( _ident, _type, _fname ) \
-          {                                          \
-            _ident, T1CODE, _type,                   \
-            0,                                       \
-            FT_FIELD_OFFSET( _fname ),               \
-            FT_FIELD_SIZE( _fname ),                 \
-            0, 0                                     \
-          },
-
-#define T1_NEW_CALLBACK_FIELD( _ident, _reader )    \
-          {                                         \
-            _ident, T1CODE, T1_FIELD_TYPE_CALLBACK, \
-            (T1_Field_ParseFunc)_reader,            \
-            0, 0,                                   \
-            0, 0                                    \
-          },
-
-#define T1_NEW_TABLE_FIELD( _ident, _type, _fname, _max ) \
-          {                                               \
-            _ident, T1CODE, _type,                        \
-            0,                                            \
-            FT_FIELD_OFFSET( _fname ),                    \
-            FT_FIELD_SIZE_DELTA( _fname ),                \
-            _max,                                         \
-            FT_FIELD_OFFSET( num_ ## _fname )             \
-          },
-
-#define T1_NEW_TABLE_FIELD2( _ident, _type, _fname, _max ) \
-          {                                                \
-            _ident, T1CODE, _type,                         \
-            0,                                             \
-            FT_FIELD_OFFSET( _fname ),                     \
-            FT_FIELD_SIZE_DELTA( _fname ),                 \
-            _max, 0                                        \
-          },
-
-
-#define T1_FIELD_BOOL( _ident, _fname )                             \
-          T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_BOOL, _fname )
-
-#define T1_FIELD_NUM( _ident, _fname )                                 \
-          T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_INTEGER, _fname )
-
-#define T1_FIELD_FIXED( _ident, _fname )                             \
-          T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_FIXED, _fname )
-
-#define T1_FIELD_FIXED_1000( _ident, _fname )                             \
-          T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_FIXED_1000, _fname )
-
-#define T1_FIELD_STRING( _ident, _fname )                             \
-          T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_STRING, _fname )
-
-#define T1_FIELD_KEY( _ident, _fname )                             \
-          T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_KEY, _fname )
-
-#define T1_FIELD_BBOX( _ident, _fname )                             \
-          T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_BBOX, _fname )
-
-
-#define T1_FIELD_NUM_TABLE( _ident, _fname, _fmax )                \
-          T1_NEW_TABLE_FIELD( _ident, T1_FIELD_TYPE_INTEGER_ARRAY, \
-                              _fname, _fmax )
-
-#define T1_FIELD_FIXED_TABLE( _ident, _fname, _fmax )            \
-          T1_NEW_TABLE_FIELD( _ident, T1_FIELD_TYPE_FIXED_ARRAY, \
-                              _fname, _fmax )
-
-#define T1_FIELD_NUM_TABLE2( _ident, _fname, _fmax )                \
-          T1_NEW_TABLE_FIELD2( _ident, T1_FIELD_TYPE_INTEGER_ARRAY, \
-                               _fname, _fmax )
-
-#define T1_FIELD_FIXED_TABLE2( _ident, _fname, _fmax )            \
-          T1_NEW_TABLE_FIELD2( _ident, T1_FIELD_TYPE_FIXED_ARRAY, \
-                               _fname, _fmax )
-
-#define T1_FIELD_CALLBACK( _ident, _name )       \
-          T1_NEW_CALLBACK_FIELD( _ident, _name )
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                            T1 PARSER                          *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  typedef const struct PS_Parser_FuncsRec_*  PS_Parser_Funcs;
-
-  typedef struct  PS_Parser_FuncsRec_
-  {
-    void
-    (*init)( PS_Parser  parser,
-             FT_Byte*   base,
-             FT_Byte*   limit,
-             FT_Memory  memory );
-
-    void
-    (*done)( PS_Parser  parser );
-
-    void
-    (*skip_spaces)( PS_Parser  parser );
-    void
-    (*skip_PS_token)( PS_Parser  parser );
-
-    FT_Long
-    (*to_int)( PS_Parser  parser );
-    FT_Fixed
-    (*to_fixed)( PS_Parser  parser,
-                 FT_Int     power_ten );
-
-    FT_Error
-    (*to_bytes)( PS_Parser  parser,
-                 FT_Byte*   bytes,
-                 FT_Long    max_bytes,
-                 FT_Long*   pnum_bytes,
-                 FT_Bool    delimiters );
-
-    FT_Int
-    (*to_coord_array)( PS_Parser  parser,
-                       FT_Int     max_coords,
-                       FT_Short*  coords );
-    FT_Int
-    (*to_fixed_array)( PS_Parser  parser,
-                       FT_Int     max_values,
-                       FT_Fixed*  values,
-                       FT_Int     power_ten );
-
-    void
-    (*to_token)( PS_Parser  parser,
-                 T1_Token   token );
-    void
-    (*to_token_array)( PS_Parser  parser,
-                       T1_Token   tokens,
-                       FT_UInt    max_tokens,
-                       FT_Int*    pnum_tokens );
-
-    FT_Error
-    (*load_field)( PS_Parser       parser,
-                   const T1_Field  field,
-                   void**          objects,
-                   FT_UInt         max_objects,
-                   FT_ULong*       pflags );
-
-    FT_Error
-    (*load_field_table)( PS_Parser       parser,
-                         const T1_Field  field,
-                         void**          objects,
-                         FT_UInt         max_objects,
-                         FT_ULong*       pflags );
-
-  } PS_Parser_FuncsRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    PS_ParserRec                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A PS_Parser is an object used to parse a Type 1 font very quickly. */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    cursor :: The current position in the text.                        */
-  /*                                                                       */
-  /*    base   :: Start of the processed text.                             */
-  /*                                                                       */
-  /*    limit  :: End of the processed text.                               */
-  /*                                                                       */
-  /*    error  :: The last error returned.                                 */
-  /*                                                                       */
-  /*    memory :: The object used for memory operations (alloc/realloc).   */
-  /*                                                                       */
-  /*    funcs  :: A table of functions for the parser.                     */
-  /*                                                                       */
-  typedef struct  PS_ParserRec_
-  {
-    FT_Byte*   cursor;
-    FT_Byte*   base;
-    FT_Byte*   limit;
-    FT_Error   error;
-    FT_Memory  memory;
-
-    PS_Parser_FuncsRec  funcs;
-
-  } PS_ParserRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                         T1 BUILDER                            *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  typedef struct T1_BuilderRec_*  T1_Builder;
-
-
-  typedef FT_Error
-  (*T1_Builder_Check_Points_Func)( T1_Builder  builder,
-                                   FT_Int      count );
-
-  typedef void
-  (*T1_Builder_Add_Point_Func)( T1_Builder  builder,
-                                FT_Pos      x,
-                                FT_Pos      y,
-                                FT_Byte     flag );
-
-  typedef FT_Error
-  (*T1_Builder_Add_Point1_Func)( T1_Builder  builder,
-                                 FT_Pos      x,
-                                 FT_Pos      y );
-
-  typedef FT_Error
-  (*T1_Builder_Add_Contour_Func)( T1_Builder  builder );
-
-  typedef FT_Error
-  (*T1_Builder_Start_Point_Func)( T1_Builder  builder,
-                                  FT_Pos      x,
-                                  FT_Pos      y );
-
-  typedef void
-  (*T1_Builder_Close_Contour_Func)( T1_Builder  builder );
-
-
-  typedef const struct T1_Builder_FuncsRec_*  T1_Builder_Funcs;
-
-  typedef struct  T1_Builder_FuncsRec_
-  {
-    void
-    (*init)( T1_Builder    builder,
-             FT_Face       face,
-             FT_Size       size,
-             FT_GlyphSlot  slot,
-             FT_Bool       hinting );
-
-    void
-    (*done)( T1_Builder   builder );
-
-    T1_Builder_Check_Points_Func   check_points;
-    T1_Builder_Add_Point_Func      add_point;
-    T1_Builder_Add_Point1_Func     add_point1;
-    T1_Builder_Add_Contour_Func    add_contour;
-    T1_Builder_Start_Point_Func    start_point;
-    T1_Builder_Close_Contour_Func  close_contour;
-
-  } T1_Builder_FuncsRec;
-
-
-  /* an enumeration type to handle charstring parsing states */
-  typedef enum  T1_ParseState_
-  {
-    T1_Parse_Start,
-    T1_Parse_Have_Width,
-    T1_Parse_Have_Moveto,
-    T1_Parse_Have_Path
-
-  } T1_ParseState;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Structure>                                                           */
-  /*    T1_BuilderRec                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*     A structure used during glyph loading to store its outline.       */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    memory       :: The current memory object.                         */
-  /*                                                                       */
-  /*    face         :: The current face object.                           */
-  /*                                                                       */
-  /*    glyph        :: The current glyph slot.                            */
-  /*                                                                       */
-  /*    loader       :: XXX                                                */
-  /*                                                                       */
-  /*    base         :: The base glyph outline.                            */
-  /*                                                                       */
-  /*    current      :: The current glyph outline.                         */
-  /*                                                                       */
-  /*    max_points   :: maximum points in builder outline                  */
-  /*                                                                       */
-  /*    max_contours :: Maximal number of contours in builder outline.     */
-  /*                                                                       */
-  /*    last         :: The last point position.                           */
-  /*                                                                       */
-  /*    scale_x      :: The horizontal scale (FUnits to sub-pixels).       */
-  /*                                                                       */
-  /*    scale_y      :: The vertical scale (FUnits to sub-pixels).         */
-  /*                                                                       */
-  /*    pos_x        :: The horizontal translation (if composite glyph).   */
-  /*                                                                       */
-  /*    pos_y        :: The vertical translation (if composite glyph).     */
-  /*                                                                       */
-  /*    left_bearing :: The left side bearing point.                       */
-  /*                                                                       */
-  /*    advance      :: The horizontal advance vector.                     */
-  /*                                                                       */
-  /*    bbox         :: Unused.                                            */
-  /*                                                                       */
-  /*    parse_state  :: An enumeration which controls the charstring       */
-  /*                    parsing state.                                     */
-  /*                                                                       */
-  /*    load_points  :: If this flag is not set, no points are loaded.     */
-  /*                                                                       */
-  /*    no_recurse   :: Set but not used.                                  */
-  /*                                                                       */
-  /*    metrics_only :: A boolean indicating that we only want to compute  */
-  /*                    the metrics of a given glyph, not load all of its  */
-  /*                    points.                                            */
-  /*                                                                       */
-  /*    funcs        :: An array of function pointers for the builder.     */
-  /*                                                                       */
-  typedef struct  T1_BuilderRec_
-  {
-    FT_Memory       memory;
-    FT_Face         face;
-    FT_GlyphSlot    glyph;
-    FT_GlyphLoader  loader;
-    FT_Outline*     base;
-    FT_Outline*     current;
-
-    FT_Vector       last;
-
-    FT_Fixed        scale_x;
-    FT_Fixed        scale_y;
-
-    FT_Pos          pos_x;
-    FT_Pos          pos_y;
-
-    FT_Vector       left_bearing;
-    FT_Vector       advance;
-
-    FT_BBox         bbox;          /* bounding box */
-    T1_ParseState   parse_state;
-    FT_Bool         load_points;
-    FT_Bool         no_recurse;
-    FT_Bool         shift;
-
-    FT_Bool         metrics_only;
-
-    void*           hints_funcs;    /* hinter-specific */
-    void*           hints_globals;  /* hinter-specific */
-
-    T1_Builder_FuncsRec  funcs;
-
-  } T1_BuilderRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                         T1 DECODER                            *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-#if 0
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* T1_MAX_SUBRS_CALLS details the maximum number of nested sub-routine   */
-  /* calls during glyph loading.                                           */
-  /*                                                                       */
-#define T1_MAX_SUBRS_CALLS  8
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* T1_MAX_CHARSTRING_OPERANDS is the charstring stack's capacity.  A     */
-  /* minimum of 16 is required.                                            */
-  /*                                                                       */
-#define T1_MAX_CHARSTRINGS_OPERANDS  32
-
-#endif /* 0 */
-
-
-  typedef struct  T1_Decoder_ZoneRec_
-  {
-    FT_Byte*  cursor;
-    FT_Byte*  base;
-    FT_Byte*  limit;
-
-  } T1_Decoder_ZoneRec, *T1_Decoder_Zone;
-
-
-  typedef struct T1_DecoderRec_*              T1_Decoder;
-  typedef const struct T1_Decoder_FuncsRec_*  T1_Decoder_Funcs;
-
-
-  typedef FT_Error
-  (*T1_Decoder_Callback)( T1_Decoder  decoder,
-                          FT_UInt     glyph_index );
-
-
-  typedef struct  T1_Decoder_FuncsRec_
-  {
-    FT_Error
-    (*init)( T1_Decoder           decoder,
-             FT_Face              face,
-             FT_Size              size,
-             FT_GlyphSlot         slot,
-             FT_Byte**            glyph_names,
-             PS_Blend             blend,
-             FT_Bool              hinting,
-             FT_Render_Mode       hint_mode,
-             T1_Decoder_Callback  callback );
-
-    void
-    (*done)( T1_Decoder  decoder );
-
-    FT_Error
-    (*parse_charstrings)( T1_Decoder  decoder,
-                          FT_Byte*    base,
-                          FT_UInt     len );
-
-  } T1_Decoder_FuncsRec;
-
-
-  typedef struct  T1_DecoderRec_
-  {
-    T1_BuilderRec        builder;
-
-    FT_Long              stack[T1_MAX_CHARSTRINGS_OPERANDS];
-    FT_Long*             top;
-
-    T1_Decoder_ZoneRec   zones[T1_MAX_SUBRS_CALLS + 1];
-    T1_Decoder_Zone      zone;
-
-    FT_Service_PsCMaps   psnames;      /* for seac */
-    FT_UInt              num_glyphs;
-    FT_Byte**            glyph_names;
-
-    FT_Int               lenIV;        /* internal for sub routine calls */
-    FT_UInt              num_subrs;
-    FT_Byte**            subrs;
-    FT_PtrDist*          subrs_len;    /* array of subrs length (optional) */
-
-    FT_Matrix            font_matrix;
-    FT_Vector            font_offset;
-
-    FT_Int               flex_state;
-    FT_Int               num_flex_vectors;
-    FT_Vector            flex_vectors[7];
-
-    PS_Blend             blend;       /* for multiple master support */
-
-    FT_Render_Mode       hint_mode;
-
-    T1_Decoder_Callback  parse_callback;
-    T1_Decoder_FuncsRec  funcs;
-
-  } T1_DecoderRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                     TYPE1 CHARMAPS                            *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  typedef const struct T1_CMap_ClassesRec_*  T1_CMap_Classes;
-
-  typedef struct T1_CMap_ClassesRec_
-  {
-    FT_CMap_Class  standard;
-    FT_CMap_Class  expert;
-    FT_CMap_Class  custom;
-    FT_CMap_Class  unicode;
-
-  } T1_CMap_ClassesRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                        PSAux Module Interface                 *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  typedef struct  PSAux_ServiceRec_
-  {
-    /* don't use `PS_Table_Funcs' and friends to avoid compiler warnings */
-    const PS_Table_FuncsRec*    ps_table_funcs;
-    const PS_Parser_FuncsRec*   ps_parser_funcs;
-    const T1_Builder_FuncsRec*  t1_builder_funcs;
-    const T1_Decoder_FuncsRec*  t1_decoder_funcs;
-
-    void
-    (*t1_decrypt)( FT_Byte*   buffer,
-                   FT_Offset  length,
-                   FT_UShort  seed );
-
-    T1_CMap_Classes  t1_cmap_classes;
-
-  } PSAux_ServiceRec, *PSAux_Service;
-
-  /* backwards-compatible type definition */
-  typedef PSAux_ServiceRec   PSAux_Interface;
-
-FT_END_HEADER
-
-#endif /* __PSAUX_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/pshints.h b/dependencies64/sfml/extlibs/headers/freetype/internal/pshints.h
deleted file mode 100644 (file)
index cd48f6c..0000000
+++ /dev/null
@@ -1,626 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshints.h                                                              */
-/*                                                                         */
-/*    Interface to Postscript-specific (Type 1 and Type 2) hints           */
-/*    recorders (specification only).  These are used to support native    */
-/*    T1/T2 hints in the "type1", "cid" and "cff" font drivers.            */
-/*                                                                         */
-/*  Copyright 2001, 2002, 2003 by                                          */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __PSHINTS_H__
-#define __PSHINTS_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-#include FT_TYPE1_TABLES_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****               INTERNAL REPRESENTATION OF GLOBALS              *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  typedef struct PSH_GlobalsRec_*  PSH_Globals;
-
-  typedef FT_Error
-  (*PSH_Globals_NewFunc)( FT_Memory     memory,
-                          T1_Private*   private_dict,
-                          PSH_Globals*  aglobals );
-
-  typedef FT_Error
-  (*PSH_Globals_SetScaleFunc)( PSH_Globals  globals,
-                               FT_Fixed     x_scale,
-                               FT_Fixed     y_scale,
-                               FT_Fixed     x_delta,
-                               FT_Fixed     y_delta );
-
-  typedef void
-  (*PSH_Globals_DestroyFunc)( PSH_Globals  globals );
-
-
-  typedef struct  PSH_Globals_FuncsRec_
-  {
-    PSH_Globals_NewFunc       create;
-    PSH_Globals_SetScaleFunc  set_scale;
-    PSH_Globals_DestroyFunc   destroy;
-
-  } PSH_Globals_FuncsRec, *PSH_Globals_Funcs;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                  PUBLIC TYPE 1 HINTS RECORDER                 *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @type:                                                                */
-  /*    T1_Hints                                                           */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    This is a handle to an opaque structure used to record glyph hints */
-  /*    from a Type 1 character glyph character string.                    */
-  /*                                                                       */
-  /*    The methods used to operate on this object are defined by the      */
-  /*    @T1_Hints_FuncsRec structure.  Recording glyph hints is normally   */
-  /*    achieved through the following scheme:                             */
-  /*                                                                       */
-  /*    - Open a new hint recording session by calling the "open" method.  */
-  /*      This will rewind the recorder and prepare it for new input.      */
-  /*                                                                       */
-  /*    - For each hint found in the glyph charstring, call the            */
-  /*      corresponding method ("stem", "stem3", or "reset").  Note that   */
-  /*      these functions do not return an error code.                     */
-  /*                                                                       */
-  /*    - Close the recording session by calling the "close" method.  It   */
-  /*      will return an error code if the hints were invalid or something */
-  /*      strange happened (e.g. memory shortage).                         */
-  /*                                                                       */
-  /*    The hints accumulated in the object can later be used by the       */
-  /*    PostScript hinter.                                                 */
-  /*                                                                       */
-  typedef struct T1_HintsRec_*  T1_Hints;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @type:                                                                */
-  /*    T1_Hints_Funcs                                                     */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A pointer to the @T1_Hints_FuncsRec structure that defines the     */
-  /*    API of a given @T1_Hints object.                                   */
-  /*                                                                       */
-  typedef const struct T1_Hints_FuncsRec_*  T1_Hints_Funcs;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T1_Hints_OpenFunc                                                  */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T1_Hints class used to prepare it for a new       */
-  /*    Type 1 hints recording session.                                    */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints :: A handle to the Type 1 hints recorder.                    */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    You should always call the @T1_Hints_CloseFunc method in order to  */
-  /*    close an opened recording session.                                 */
-  /*                                                                       */
-  typedef void
-  (*T1_Hints_OpenFunc)( T1_Hints  hints );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T1_Hints_SetStemFunc                                               */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T1_Hints class used to record a new horizontal or */
-  /*    vertical stem.  This corresponds to the Type 1 "hstem" and "vstem" */
-  /*    operators.                                                         */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints     :: A handle to the Type 1 hints recorder.                */
-  /*                                                                       */
-  /*    dimension :: 0 for horizontal stems (hstem), 1 for vertical ones   */
-  /*                 (vstem).                                              */
-  /*                                                                       */
-  /*    coords    :: Array of 2 integers, used as (position,length) stem   */
-  /*                 descriptor.                                           */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    Use vertical coordinates (y) for horizontal stems (dim=0).  Use    */
-  /*    horizontal coordinates (x) for vertical stems (dim=1).             */
-  /*                                                                       */
-  /*    "coords[0]" is the absolute stem position (lowest coordinate);     */
-  /*    "coords[1]" is the length.                                         */
-  /*                                                                       */
-  /*    The length can be negative, in which case it must be either -20 or */
-  /*    -21.  It will be interpreted as a "ghost" stem, according to       */
-  /*    Type 1 specification.                                              */
-  /*                                                                       */
-  /*    If the length is -21 (corresponding to a bottom ghost stem), then  */
-  /*    the real stem position is "coords[0]+coords[1]".                   */
-  /*                                                                       */
-  typedef void
-  (*T1_Hints_SetStemFunc)( T1_Hints  hints,
-                           FT_UInt   dimension,
-                           FT_Long*  coords );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T1_Hints_SetStem3Func                                              */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T1_Hints class used to record three               */
-  /*    counter-controlled horizontal or vertical stems at once.           */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints     :: A handle to the Type 1 hints recorder.                */
-  /*                                                                       */
-  /*    dimension :: 0 for horizontal stems, 1 for vertical ones.          */
-  /*                                                                       */
-  /*    coords    :: An array of 6 integers, holding 3 (position,length)   */
-  /*                 pairs for the counter-controlled stems.               */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    Use vertical coordinates (y) for horizontal stems (dim=0).  Use    */
-  /*    horizontal coordinates (x) for vertical stems (dim=1).             */
-  /*                                                                       */
-  /*    The lengths cannot be negative (ghost stems are never              */
-  /*    counter-controlled).                                               */
-  /*                                                                       */
-  typedef void
-  (*T1_Hints_SetStem3Func)( T1_Hints  hints,
-                            FT_UInt   dimension,
-                            FT_Long*  coords );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T1_Hints_ResetFunc                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T1_Hints class used to reset the stems hints in a */
-  /*    recording session.                                                 */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints     :: A handle to the Type 1 hints recorder.                */
-  /*                                                                       */
-  /*    end_point :: The index of the last point in the input glyph in     */
-  /*                 which the previously defined hints apply.             */
-  /*                                                                       */
-  typedef void
-  (*T1_Hints_ResetFunc)( T1_Hints  hints,
-                         FT_UInt   end_point );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T1_Hints_CloseFunc                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T1_Hints class used to close a hint recording     */
-  /*    session.                                                           */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints     :: A handle to the Type 1 hints recorder.                */
-  /*                                                                       */
-  /*    end_point :: The index of the last point in the input glyph.       */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    The error code will be set to indicate that an error occured       */
-  /*    during the recording session.                                      */
-  /*                                                                       */
-  typedef FT_Error
-  (*T1_Hints_CloseFunc)( T1_Hints  hints,
-                         FT_UInt   end_point );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T1_Hints_ApplyFunc                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T1_Hints class used to apply hints to the         */
-  /*    corresponding glyph outline.  Must be called once all hints have   */
-  /*    been recorded.                                                     */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*   hints     :: A handle to the Type 1 hints recorder.                 */
-  /*                                                                       */
-  /*   outline   :: A pointer to the target outline descriptor.            */
-  /*                                                                       */
-  /*   globals   :: The hinter globals for this font.                      */
-  /*                                                                       */
-  /*   hint_mode :: Hinting information.                                   */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*   FreeType error code.  0 means success.                              */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    On input, all points within the outline are in font coordinates.   */
-  /*    On output, they are in 1/64th of pixels.                           */
-  /*                                                                       */
-  /*    The scaling transformation is taken from the "globals" object      */
-  /*    which must correspond to the same font as the glyph.               */
-  /*                                                                       */
-  typedef FT_Error
-  (*T1_Hints_ApplyFunc)( T1_Hints        hints,
-                         FT_Outline*     outline,
-                         PSH_Globals     globals,
-                         FT_Render_Mode  hint_mode );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @struct:                                                              */
-  /*    T1_Hints_FuncsRec                                                  */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    The structure used to provide the API to @T1_Hints objects.        */
-  /*                                                                       */
-  /* @fields:                                                              */
-  /*    hints :: A handle to the T1 Hints recorder.                        */
-  /*                                                                       */
-  /*    open  :: The function to open a recording session.                 */
-  /*                                                                       */
-  /*    close :: The function to close a recording session.                */
-  /*                                                                       */
-  /*    stem  :: The function to set a simple stem.                        */
-  /*                                                                       */
-  /*    stem3 :: The function to set counter-controlled stems.             */
-  /*                                                                       */
-  /*    reset :: The function to reset stem hints.                         */
-  /*                                                                       */
-  /*    apply :: The function to apply the hints to the corresponding      */
-  /*             glyph outline.                                            */
-  /*                                                                       */
-  typedef struct  T1_Hints_FuncsRec_
-  {
-    T1_Hints               hints;
-    T1_Hints_OpenFunc      open;
-    T1_Hints_CloseFunc     close;
-    T1_Hints_SetStemFunc   stem;
-    T1_Hints_SetStem3Func  stem3;
-    T1_Hints_ResetFunc     reset;
-    T1_Hints_ApplyFunc     apply;
-
-  } T1_Hints_FuncsRec;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*****                                                               *****/
-  /*****                  PUBLIC TYPE 2 HINTS RECORDER                 *****/
-  /*****                                                               *****/
-  /*************************************************************************/
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @type:                                                                */
-  /*    T2_Hints                                                           */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    This is a handle to an opaque structure used to record glyph hints */
-  /*    from a Type 2 character glyph character string.                    */
-  /*                                                                       */
-  /*    The methods used to operate on this object are defined by the      */
-  /*    @T2_Hints_FuncsRec structure.  Recording glyph hints is normally   */
-  /*    achieved through the following scheme:                             */
-  /*                                                                       */
-  /*    - Open a new hint recording session by calling the "open" method.  */
-  /*      This will rewind the recorder and prepare it for new input.      */
-  /*                                                                       */
-  /*    - For each hint found in the glyph charstring, call the            */
-  /*      corresponding method ("stems", "hintmask", "counters").  Note    */
-  /*      that these functions do not return an error code.                */
-  /*                                                                       */
-  /*    - Close the recording session by calling the "close" method.  It   */
-  /*      will return an error code if the hints were invalid or something */
-  /*      strange happened (e.g. memory shortage).                         */
-  /*                                                                       */
-  /*    The hints accumulated in the object can later be used by the       */
-  /*    Postscript hinter.                                                 */
-  /*                                                                       */
-  typedef struct T2_HintsRec_*  T2_Hints;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @type:                                                                */
-  /*    T2_Hints_Funcs                                                     */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A pointer to the @T2_Hints_FuncsRec structure that defines the API */
-  /*    of a given @T2_Hints object.                                       */
-  /*                                                                       */
-  typedef const struct T2_Hints_FuncsRec_*  T2_Hints_Funcs;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T2_Hints_OpenFunc                                                  */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T2_Hints class used to prepare it for a new       */
-  /*    Type 2 hints recording session.                                    */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints :: A handle to the Type 2 hints recorder.                    */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    You should always call the @T2_Hints_CloseFunc method in order to  */
-  /*    close an opened recording session.                                 */
-  /*                                                                       */
-  typedef void
-  (*T2_Hints_OpenFunc)( T2_Hints  hints );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T2_Hints_StemsFunc                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T2_Hints class used to set the table of stems in  */
-  /*    either the vertical or horizontal dimension.  Equivalent to the    */
-  /*    "hstem", "vstem", "hstemhm", and "vstemhm" Type 2 operators.       */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints     :: A handle to the Type 2 hints recorder.                */
-  /*                                                                       */
-  /*    dimension :: 0 for horizontal stems (hstem), 1 for vertical ones   */
-  /*                 (vstem).                                              */
-  /*                                                                       */
-  /*    count     :: The number of stems.                                  */
-  /*                                                                       */
-  /*    coords    :: An array of "count" (position,length) pairs.          */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    Use vertical coordinates (y) for horizontal stems (dim=0).  Use    */
-  /*    horizontal coordinates (x) for vertical stems (dim=1).             */
-  /*                                                                       */
-  /*    There are "2*count" elements in the "coords" aray.  Each even      */
-  /*    element is an absolute position in font units, each odd element is */
-  /*    a length in font units.                                            */
-  /*                                                                       */
-  /*    A length can be negative, in which case it must be either -20 or   */
-  /*    -21.  It will be interpreted as a "ghost" stem, according to the   */
-  /*    Type 1 specification.                                              */
-  /*                                                                       */
-  typedef void
-  (*T2_Hints_StemsFunc)( T2_Hints   hints,
-                         FT_UInt    dimension,
-                         FT_UInt    count,
-                         FT_Fixed*  coordinates );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T2_Hints_MaskFunc                                                  */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T2_Hints class used to set a given hintmask       */
-  /*    (this corresponds to the "hintmask" Type 2 operator).              */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints     :: A handle to the Type 2 hints recorder.                */
-  /*                                                                       */
-  /*    end_point :: The glyph index of the last point to which the        */
-  /*                 previously defined/activated hints apply.             */
-  /*                                                                       */
-  /*    bit_count :: The number of bits in the hint mask.                  */
-  /*                                                                       */
-  /*    bytes     :: An array of bytes modelling the hint mask.            */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    If the hintmask starts the charstring (before any glyph point      */
-  /*    definition), the value of "end_point" should be 0.                 */
-  /*                                                                       */
-  /*    "bit_count" is the number of meaningful bits in the "bytes" array; */
-  /*    it must be equal to the total number of hints defined so far       */
-  /*    (i.e. horizontal+verticals).                                       */
-  /*                                                                       */
-  /*    The "bytes" array can come directly from the Type 2 charstring and */
-  /*    respects the same format.                                          */
-  /*                                                                       */
-  typedef void
-  (*T2_Hints_MaskFunc)( T2_Hints        hints,
-                        FT_UInt         end_point,
-                        FT_UInt         bit_count,
-                        const FT_Byte*  bytes );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T2_Hints_CounterFunc                                               */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T2_Hints class used to set a given counter mask   */
-  /*    (this corresponds to the "hintmask" Type 2 operator).              */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints     :: A handle to the Type 2 hints recorder.                */
-  /*                                                                       */
-  /*    end_point :: A glyph index of the last point to which the          */
-  /*                 previously defined/active hints apply.                */
-  /*                                                                       */
-  /*    bit_count :: The number of bits in the hint mask.                  */
-  /*                                                                       */
-  /*    bytes     :: An array of bytes modelling the hint mask.            */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    If the hintmask starts the charstring (before any glyph point      */
-  /*    definition), the value of "end_point" should be 0.                 */
-  /*                                                                       */
-  /*    "bit_count" is the number of meaningful bits in the "bytes" array; */
-  /*    it must be equal to the total number of hints defined so far       */
-  /*    (i.e. horizontal+verticals).                                       */
-  /*                                                                       */
-  /*    The "bytes" array can come directly from the Type 2 charstring and */
-  /*    respects the same format.                                          */
-  /*                                                                       */
-  typedef void
-  (*T2_Hints_CounterFunc)( T2_Hints        hints,
-                           FT_UInt         bit_count,
-                           const FT_Byte*  bytes );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T2_Hints_CloseFunc                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T2_Hints class used to close a hint recording     */
-  /*    session.                                                           */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints     :: A handle to the Type 2 hints recorder.                */
-  /*                                                                       */
-  /*    end_point :: The index of the last point in the input glyph.       */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    The error code will be set to indicate that an error occured       */
-  /*    during the recording session.                                      */
-  /*                                                                       */
-  typedef FT_Error
-  (*T2_Hints_CloseFunc)( T2_Hints  hints,
-                         FT_UInt   end_point );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @functype:                                                            */
-  /*    T2_Hints_ApplyFunc                                                 */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    A method of the @T2_Hints class used to apply hints to the         */
-  /*    corresponding glyph outline.  Must be called after the "close"     */
-  /*    method.                                                            */
-  /*                                                                       */
-  /* @input:                                                               */
-  /*    hints     :: A handle to the Type 2 hints recorder.                */
-  /*                                                                       */
-  /*    outline   :: A pointer to the target outline descriptor.           */
-  /*                                                                       */
-  /*    globals   :: The hinter globals for this font.                     */
-  /*                                                                       */
-  /*    hint_mode :: Hinting information.                                  */
-  /*                                                                       */
-  /* @return:                                                              */
-  /*   FreeType error code.  0 means success.                              */
-  /*                                                                       */
-  /* @note:                                                                */
-  /*    On input, all points within the outline are in font coordinates.   */
-  /*    On output, they are in 1/64th of pixels.                           */
-  /*                                                                       */
-  /*    The scaling transformation is taken from the "globals" object      */
-  /*    which must correspond to the same font than the glyph.             */
-  /*                                                                       */
-  typedef FT_Error
-  (*T2_Hints_ApplyFunc)( T2_Hints        hints,
-                         FT_Outline*     outline,
-                         PSH_Globals     globals,
-                         FT_Render_Mode  hint_mode );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* @struct:                                                              */
-  /*    T2_Hints_FuncsRec                                                  */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    The structure used to provide the API to @T2_Hints objects.        */
-  /*                                                                       */
-  /* @fields:                                                              */
-  /*    hints    :: A handle to the T2 hints recorder object.              */
-  /*                                                                       */
-  /*    open     :: The function to open a recording session.              */
-  /*                                                                       */
-  /*    close    :: The function to close a recording session.             */
-  /*                                                                       */
-  /*    stems    :: The function to set the dimension's stems table.       */
-  /*                                                                       */
-  /*    hintmask :: The function to set hint masks.                        */
-  /*                                                                       */
-  /*    counter  :: The function to set counter masks.                     */
-  /*                                                                       */
-  /*    apply    :: The function to apply the hints on the corresponding   */
-  /*                glyph outline.                                         */
-  /*                                                                       */
-  typedef struct  T2_Hints_FuncsRec_
-  {
-    T2_Hints              hints;
-    T2_Hints_OpenFunc     open;
-    T2_Hints_CloseFunc    close;
-    T2_Hints_StemsFunc    stems;
-    T2_Hints_MaskFunc     hintmask;
-    T2_Hints_CounterFunc  counter;
-    T2_Hints_ApplyFunc    apply;
-
-  } T2_Hints_FuncsRec;
-
-
-  /* */
-
-
-  typedef struct  PSHinter_Interface_
-  {
-    PSH_Globals_Funcs  (*get_globals_funcs)( FT_Module  module );
-    T1_Hints_Funcs     (*get_t1_funcs)     ( FT_Module  module );
-    T2_Hints_Funcs     (*get_t2_funcs)     ( FT_Module  module );
-
-  } PSHinter_Interface;
-
-  typedef PSHinter_Interface*  PSHinter_Service;
-
-
-FT_END_HEADER
-
-#endif /* __PSHINTS_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/sfnt.h b/dependencies64/sfml/extlibs/headers/freetype/internal/sfnt.h
deleted file mode 100644 (file)
index 7b58263..0000000
+++ /dev/null
@@ -1,577 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  sfnt.h                                                                 */
-/*                                                                         */
-/*    High-level `sfnt' driver interface (specification).                  */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004, 2005 by                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SFNT_H__
-#define __SFNT_H__
-
-
-#include <ft2build.h>
-#include FT_INTERNAL_DRIVER_H
-#include FT_INTERNAL_TRUETYPE_TYPES_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Init_Face_Func                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    First part of the SFNT face object initialization.  This will find */
-  /*    the face in a SFNT file or collection, and load its format tag in  */
-  /*    face->format_tag.                                                  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream     :: The input stream.                                    */
-  /*                                                                       */
-  /*    face       :: A handle to the target face object.                  */
-  /*                                                                       */
-  /*    face_index :: The index of the TrueType font, if we are opening a  */
-  /*                  collection.                                          */
-  /*                                                                       */
-  /*    num_params :: The number of additional parameters.                 */
-  /*                                                                       */
-  /*    params     :: Optional additional parameters.                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The stream cursor must be at the font file's origin.               */
-  /*                                                                       */
-  /*    This function recognizes fonts embedded in a `TrueType             */
-  /*    collection'.                                                       */
-  /*                                                                       */
-  /*    Once the format tag has been validated by the font driver, it      */
-  /*    should then call the TT_Load_Face_Func() callback to read the rest */
-  /*    of the SFNT tables in the object.                                  */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Init_Face_Func)( FT_Stream      stream,
-                        TT_Face        face,
-                        FT_Int         face_index,
-                        FT_Int         num_params,
-                        FT_Parameter*  params );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Load_Face_Func                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Second part of the SFNT face object initialization.  This will     */
-  /*    load the common SFNT tables (head, OS/2, maxp, metrics, etc.) in   */
-  /*    the face object.                                                   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream     :: The input stream.                                    */
-  /*                                                                       */
-  /*    face       :: A handle to the target face object.                  */
-  /*                                                                       */
-  /*    face_index :: The index of the TrueType font, if we are opening a  */
-  /*                  collection.                                          */
-  /*                                                                       */
-  /*    num_params :: The number of additional parameters.                 */
-  /*                                                                       */
-  /*    params     :: Optional additional parameters.                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function must be called after TT_Init_Face_Func().            */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Load_Face_Func)( FT_Stream      stream,
-                        TT_Face        face,
-                        FT_Int         face_index,
-                        FT_Int         num_params,
-                        FT_Parameter*  params );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Done_Face_Func                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A callback used to delete the common SFNT data from a face.        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to the target face object.                        */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function does NOT destroy the face object.                    */
-  /*                                                                       */
-  typedef void
-  (*TT_Done_Face_Func)( TT_Face  face );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Load_SFNT_HeaderRec_Func                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the header of a SFNT font file.  Supports collections.       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face       :: A handle to the target face object.                  */
-  /*                                                                       */
-  /*    stream     :: The input stream.                                    */
-  /*                                                                       */
-  /*    face_index :: The index of the TrueType font, if we are opening a  */
-  /*                  collection.                                          */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    sfnt       :: The SFNT header.                                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The stream cursor must be at the font file's origin.               */
-  /*                                                                       */
-  /*    This function recognizes fonts embedded in a `TrueType             */
-  /*    collection'.                                                       */
-  /*                                                                       */
-  /*    This function checks that the header is valid by looking at the    */
-  /*    values of `search_range', `entry_selector', and `range_shift'.     */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Load_SFNT_HeaderRec_Func)( TT_Face      face,
-                                  FT_Stream    stream,
-                                  FT_Long      face_index,
-                                  SFNT_Header  sfnt );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Load_Directory_Func                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the table directory into a face object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face      :: A handle to the target face object.                   */
-  /*                                                                       */
-  /*    stream    :: The input stream.                                     */
-  /*                                                                       */
-  /*    sfnt      :: The SFNT header.                                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The stream cursor must be on the first byte after the 4-byte font  */
-  /*    format tag.  This is the case just after a call to                 */
-  /*    TT_Load_Format_Tag().                                              */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Load_Directory_Func)( TT_Face      face,
-                             FT_Stream    stream,
-                             SFNT_Header  sfnt );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Load_Any_Func                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads any font table into client memory.                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: The face object to look for.                             */
-  /*                                                                       */
-  /*    tag    :: The tag of table to load.  Use the value 0 if you want   */
-  /*              to access the whole font file, else set this parameter   */
-  /*              to a valid TrueType table tag that you can forge with    */
-  /*              the MAKE_TT_TAG macro.                                   */
-  /*                                                                       */
-  /*    offset :: The starting offset in the table (or the file if         */
-  /*              tag == 0).                                               */
-  /*                                                                       */
-  /*    length :: The address of the decision variable:                    */
-  /*                                                                       */
-  /*                If length == NULL:                                     */
-  /*                  Loads the whole table.  Returns an error if          */
-  /*                  `offset' == 0!                                       */
-  /*                                                                       */
-  /*                If *length == 0:                                       */
-  /*                  Exits immediately; returning the length of the given */
-  /*                  table or of the font file, depending on the value of */
-  /*                  `tag'.                                               */
-  /*                                                                       */
-  /*                If *length != 0:                                       */
-  /*                  Loads the next `length' bytes of table or font,      */
-  /*                  starting at offset `offset' (in table or font too).  */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    buffer :: The address of target buffer.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    TrueType error code.  0 means success.                             */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Load_Any_Func)( TT_Face    face,
-                       FT_ULong   tag,
-                       FT_Long    offset,
-                       FT_Byte   *buffer,
-                       FT_ULong*  length );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Find_SBit_Image_Func                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Checks whether an embedded bitmap (an `sbit') exists for a given   */
-  /*    glyph, at a given strike.                                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face          :: The target face object.                           */
-  /*                                                                       */
-  /*    glyph_index   :: The glyph index.                                  */
-  /*                                                                       */
-  /*    strike_index  :: The current strike index.                         */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    arange        :: The SBit range containing the glyph index.        */
-  /*                                                                       */
-  /*    astrike       :: The SBit strike containing the glyph index.       */
-  /*                                                                       */
-  /*    aglyph_offset :: The offset of the glyph data in `EBDT' table.     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.  Returns                    */
-  /*    SFNT_Err_Invalid_Argument if no sbit exists for the requested      */
-  /*    glyph.                                                             */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Find_SBit_Image_Func)( TT_Face          face,
-                              FT_UInt          glyph_index,
-                              FT_ULong         strike_index,
-                              TT_SBit_Range   *arange,
-                              TT_SBit_Strike  *astrike,
-                              FT_ULong        *aglyph_offset );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Load_SBit_Metrics_Func                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Gets the big metrics for a given embedded bitmap.                  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream      :: The input stream.                                   */
-  /*                                                                       */
-  /*    range       :: The SBit range containing the glyph.                */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    big_metrics :: A big SBit metrics structure for the glyph.         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The stream cursor must be positioned at the glyph's offset within  */
-  /*    the `EBDT' table before the call.                                  */
-  /*                                                                       */
-  /*    If the image format uses variable metrics, the stream cursor is    */
-  /*    positioned just after the metrics header in the `EBDT' table on    */
-  /*    function exit.                                                     */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Load_SBit_Metrics_Func)( FT_Stream        stream,
-                                TT_SBit_Range    range,
-                                TT_SBit_Metrics  metrics );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Load_SBit_Image_Func                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads a given glyph sbit image from the font resource.  This also  */
-  /*    returns its metrics.                                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face ::                                                            */
-  /*      The target face object.                                          */
-  /*                                                                       */
-  /*    strike_index ::                                                    */
-  /*      The strike index.                                                */
-  /*                                                                       */
-  /*    glyph_index ::                                                     */
-  /*      The current glyph index.                                         */
-  /*                                                                       */
-  /*    load_flags ::                                                      */
-  /*      The current load flags.                                          */
-  /*                                                                       */
-  /*    stream ::                                                          */
-  /*      The input stream.                                                */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    amap ::                                                            */
-  /*      The target pixmap.                                               */
-  /*                                                                       */
-  /*    ametrics ::                                                        */
-  /*      A big sbit metrics structure for the glyph image.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.  Returns an error if no     */
-  /*    glyph sbit exists for the index.                                   */
-  /*                                                                       */
-  /*  <Note>                                                               */
-  /*    The `map.buffer' field is always freed before the glyph is loaded. */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Load_SBit_Image_Func)( TT_Face              face,
-                              FT_ULong             strike_index,
-                              FT_UInt              glyph_index,
-                              FT_UInt              load_flags,
-                              FT_Stream            stream,
-                              FT_Bitmap           *amap,
-                              TT_SBit_MetricsRec  *ametrics );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Set_SBit_Strike_Func                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Selects an sbit strike for given horizontal and vertical ppem      */
-  /*    values.                                                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face          :: The target face object.                           */
-  /*                                                                       */
-  /*    x_ppem        :: The horizontal resolution in points per EM.       */
-  /*                                                                       */
-  /*    y_ppem        :: The vertical resolution in points per EM.         */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    astrike_index :: The index of the sbit strike.                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.  Returns an error if no     */
-  /*    sbit strike exists for the selected ppem values.                   */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Set_SBit_Strike_Func)( TT_Face    face,
-                              FT_UInt    x_ppem,
-                              FT_UInt    y_ppem,
-                              FT_ULong  *astrike_index );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Get_PS_Name_Func                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Gets the PostScript glyph name of a glyph.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    idx  :: The glyph index.                                           */
-  /*                                                                       */
-  /*    PSname :: The address of a string pointer.  Will be NULL in case   */
-  /*              of error, otherwise it is a pointer to the glyph name.   */
-  /*                                                                       */
-  /*              You must not modify the returned string!                 */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Get_PS_Name_Func)( TT_Face      face,
-                          FT_UInt      idx,
-                          FT_String**  PSname );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Load_Metrics_Func                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the horizontal or vertical header in a face object.          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face     :: A handle to the target face object.                    */
-  /*                                                                       */
-  /*    stream   :: The input stream.                                      */
-  /*                                                                       */
-  /*    vertical :: A boolean flag.  If set, load vertical metrics.        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Load_Metrics_Func)( TT_Face    face,
-                           FT_Stream  stream,
-                           FT_Bool    vertical );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Load_Table_Func                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads a given TrueType table.                                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: The input stream.                                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The function will use `face->goto_table' to seek the stream to     */
-  /*    the start of the table.                                            */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Load_Table_Func)( TT_Face    face,
-                         FT_Stream  stream );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Free_Table_Func                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Frees a given TrueType table.                                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to the target face object.                        */
-  /*                                                                       */
-  typedef void
-  (*TT_Free_Table_Func)( TT_Face  face );
-
-
-  /*
-   * @functype:
-   *    TT_Face_GetKerningFunc
-   *
-   * @description:
-   *    Return the horizontal kerning value between two glyphs.
-   *
-   * @input:
-   *    face        :: A handle to the source face object.
-   *    left_glyph  :: The left glyph index.
-   *    right_glyph :: The right glyph index.
-   *
-   * @return:
-   *    The kerning value in font units.
-   */
-  typedef FT_Int
-  (*TT_Face_GetKerningFunc)( TT_Face  face,
-                             FT_UInt  left_glyph,
-                             FT_UInt  right_glyph );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    SFNT_Interface                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This structure holds pointers to the functions used to load and    */
-  /*    free the basic tables that are required in a `sfnt' font file.     */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    Check the various xxx_Func() descriptions for details.             */
-  /*                                                                       */
-  typedef struct  SFNT_Interface_
-  {
-    TT_Loader_GotoTableFunc      goto_table;
-
-    TT_Init_Face_Func            init_face;
-    TT_Load_Face_Func            load_face;
-    TT_Done_Face_Func            done_face;
-    FT_Module_Requester          get_interface;
-
-    TT_Load_Any_Func             load_any;
-    TT_Load_SFNT_HeaderRec_Func  load_sfnt_header;
-    TT_Load_Directory_Func       load_directory;
-
-    /* these functions are called by `load_face' but they can also  */
-    /* be called from external modules, if there is a need to do so */
-    TT_Load_Table_Func           load_header;
-    TT_Load_Metrics_Func         load_metrics;
-    TT_Load_Table_Func           load_charmaps;
-    TT_Load_Table_Func           load_max_profile;
-    TT_Load_Table_Func           load_os2;
-    TT_Load_Table_Func           load_psnames;
-
-    TT_Load_Table_Func           load_names;
-    TT_Free_Table_Func           free_names;
-
-    /* optional tables */
-    TT_Load_Table_Func           load_hdmx;
-    TT_Free_Table_Func           free_hdmx;
-
-    TT_Load_Table_Func           load_kerning;
-    TT_Load_Table_Func           load_gasp;
-    TT_Load_Table_Func           load_pclt;
-
-    /* see `ttload.h' */
-    TT_Load_Table_Func           load_bitmap_header;
-
-    /* see `ttsbit.h' */
-    TT_Set_SBit_Strike_Func      set_sbit_strike;
-    TT_Load_Table_Func           load_sbits;
-    TT_Find_SBit_Image_Func      find_sbit_image;
-    TT_Load_SBit_Metrics_Func    load_sbit_metrics;
-    TT_Load_SBit_Image_Func      load_sbit_image;
-    TT_Free_Table_Func           free_sbits;
-
-    /* see `ttkern.h' */
-    TT_Face_GetKerningFunc       get_kerning;
-    
-    /* see `ttpost.h' */
-    TT_Get_PS_Name_Func          get_psname;
-    TT_Free_Table_Func           free_psnames;
-
-  } SFNT_Interface;
-
-
-  /* transitional */
-  typedef SFNT_Interface*   SFNT_Service;
-
-
-FT_END_HEADER
-
-#endif /* __SFNT_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svbdf.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svbdf.h
deleted file mode 100644 (file)
index 0f7fc61..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svbdf.h                                                                */
-/*                                                                         */
-/*    The FreeType BDF services (specification).                           */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVBDF_H__
-#define __SVBDF_H__
-
-#include FT_BDF_H
-#include FT_INTERNAL_SERVICE_H
-
-
-FT_BEGIN_HEADER
-
-
-#define FT_SERVICE_ID_BDF  "bdf"
-
-  typedef FT_Error
-  (*FT_BDF_GetCharsetIdFunc)( FT_Face       face,
-                              const char*  *acharset_encoding,
-                              const char*  *acharset_registry );
-
-  typedef FT_Error
-  (*FT_BDF_GetPropertyFunc)( FT_Face           face,
-                             const char*       prop_name,
-                             BDF_PropertyRec  *aproperty );
-
-
-  FT_DEFINE_SERVICE( BDF )
-  {
-    FT_BDF_GetCharsetIdFunc  get_charset_id;
-    FT_BDF_GetPropertyFunc   get_property;
-  };
-
-  /* */
-
-
-FT_END_HEADER
-
-
-#endif /* __SVBDF_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svgldict.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svgldict.h
deleted file mode 100644 (file)
index e5e56b2..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svgldict.h                                                             */
-/*                                                                         */
-/*    The FreeType glyph dictionary services (specification).              */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVGLDICT_H__
-#define __SVGLDICT_H__
-
-#include FT_INTERNAL_SERVICE_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*
-   *  A service used to retrieve glyph names, as well as to find the
-   *  index of a given glyph name in a font.
-   *
-   */
-
-#define FT_SERVICE_ID_GLYPH_DICT  "glyph-dict"
-
-
-  typedef FT_Error
-  (*FT_GlyphDict_GetNameFunc)( FT_Face     face,
-                               FT_UInt     glyph_index,
-                               FT_Pointer  buffer,
-                               FT_UInt     buffer_max );
-
-  typedef FT_UInt
-  (*FT_GlyphDict_NameIndexFunc)( FT_Face     face,
-                                 FT_String*  glyph_name );
-
-
-  FT_DEFINE_SERVICE( GlyphDict )
-  {
-    FT_GlyphDict_GetNameFunc    get_name;
-    FT_GlyphDict_NameIndexFunc  name_index;  /* optional */
-  };
-
-  /* */
-
-
-FT_END_HEADER
-
-
-#endif /* __SVGLDICT_H__ */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svmm.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svmm.h
deleted file mode 100644 (file)
index 8a99ec4..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svmm.h                                                                 */
-/*                                                                         */
-/*    The FreeType Multiple Masters and GX var services (specification).   */
-/*                                                                         */
-/*  Copyright 2003, 2004 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVMM_H__
-#define __SVMM_H__
-
-#include FT_INTERNAL_SERVICE_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*
-   *  A service used to manage multiple-masters data in a given face.
-   *
-   *  See the related APIs in `ftmm.h' (FT_MULTIPLE_MASTERS_H).
-   *
-   */
-
-#define FT_SERVICE_ID_MULTI_MASTERS  "multi-masters"
-
-
-  typedef FT_Error
-  (*FT_Get_MM_Func)( FT_Face           face,
-                     FT_Multi_Master*  master );
-
-  typedef FT_Error
-  (*FT_Get_MM_Var_Func)( FT_Face      face,
-                         FT_MM_Var*  *master );
-
-  typedef FT_Error
-  (*FT_Set_MM_Design_Func)( FT_Face   face,
-                            FT_UInt   num_coords,
-                            FT_Long*  coords );
-
-  typedef FT_Error
-  (*FT_Set_Var_Design_Func)( FT_Face    face,
-                             FT_UInt    num_coords,
-                             FT_Fixed*  coords );
-
-  typedef FT_Error
-  (*FT_Set_MM_Blend_Func)( FT_Face   face,
-                           FT_UInt   num_coords,
-                           FT_Long*  coords );
-
-
-  FT_DEFINE_SERVICE( MultiMasters )
-  {
-    FT_Get_MM_Func          get_mm;
-    FT_Set_MM_Design_Func   set_mm_design;
-    FT_Set_MM_Blend_Func    set_mm_blend;
-    FT_Get_MM_Var_Func      get_mm_var;
-    FT_Set_Var_Design_Func  set_var_design;
-  };
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __SVMM_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svotval.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svotval.h
deleted file mode 100644 (file)
index fbe45d0..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svotval.h                                                              */
-/*                                                                         */
-/*    The FreeType OpenType validation service (specification).            */
-/*                                                                         */
-/*  Copyright 2004 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVOTVAL_H__
-#define __SVOTVAL_H__
-
-
-FT_BEGIN_HEADER
-
-
-#define FT_SERVICE_ID_OPENTYPE_VALIDATE  "opentype-validate"
-
-
-  typedef FT_Error
-  (*otv_validate_func)( FT_Face    face,
-                        FT_UInt    ot_flags,
-                        FT_Bytes  *base,
-                        FT_Bytes  *gdef,
-                        FT_Bytes  *gpos,
-                        FT_Bytes  *gsub,
-                        FT_Bytes  *jstf );
-
-
-  FT_DEFINE_SERVICE( OTvalidate )
-  {
-    otv_validate_func  validate;
-  };
-
-  /* */
-
-
-FT_END_HEADER
-
-
-#endif /* __SVOTVAL_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svpfr.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svpfr.h
deleted file mode 100644 (file)
index b610505..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svpfr.h                                                                */
-/*                                                                         */
-/*    Internal PFR service functions (specification).                      */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVPFR_H__
-#define __SVPFR_H__
-
-#include FT_INTERNAL_SERVICE_H
-
-
-FT_BEGIN_HEADER
-
-
-#define FT_SERVICE_ID_PFR_METRICS  "pfr-metrics"
-
-
-  typedef FT_Error
-  (*FT_PFR_GetMetricsFunc)( FT_Face    face,
-                            FT_UInt   *aoutline,
-                            FT_UInt   *ametrics,
-                            FT_Fixed  *ax_scale,
-                            FT_Fixed  *ay_scale );
-
-  typedef FT_Error
-  (*FT_PFR_GetKerningFunc)( FT_Face     face,
-                            FT_UInt     left,
-                            FT_UInt     right,
-                            FT_Vector  *avector );
-
-  typedef FT_Error
-  (*FT_PFR_GetAdvanceFunc)( FT_Face   face,
-                            FT_UInt   gindex,
-                            FT_Pos   *aadvance );
-
-
-  FT_DEFINE_SERVICE( PfrMetrics )
-  {
-    FT_PFR_GetMetricsFunc  get_metrics;
-    FT_PFR_GetKerningFunc  get_kerning;
-    FT_PFR_GetAdvanceFunc  get_advance;
-
-  };
-
- /* */
-
-FT_END_HEADER
-
-#endif /* __SVPFR_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svpostnm.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svpostnm.h
deleted file mode 100644 (file)
index 7f1700a..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svpostnm.h                                                             */
-/*                                                                         */
-/*    The FreeType PostScript name services (specification).               */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVPOSTNM_H__
-#define __SVPOSTNM_H__
-
-#include FT_INTERNAL_SERVICE_H
-
-
-FT_BEGIN_HEADER
-
-  /*
-   *  A trivial service used to retrieve the PostScript name of a given
-   *  font when available.  The `get_name' field should never be NULL.
-   *
-   *  The correponding function can return NULL to indicate that the
-   *  PostScript name is not available.
-   *
-   *  The name is owned by the face and will be destroyed with it.
-   */
-
-#define FT_SERVICE_ID_POSTSCRIPT_FONT_NAME  "postscript-font-name"
-
-
-  typedef const char*
-  (*FT_PsName_GetFunc)( FT_Face  face );
-
-
-  FT_DEFINE_SERVICE( PsFontName )
-  {
-    FT_PsName_GetFunc  get_ps_font_name;
-  };
-
-  /* */
-
-
-FT_END_HEADER
-
-
-#endif /* __SVPOSTNM_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svpscmap.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svpscmap.h
deleted file mode 100644 (file)
index ade96ef..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svpscmap.h                                                             */
-/*                                                                         */
-/*    The FreeType PostScript charmap service (specification).             */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVPSCMAP_H__
-#define __SVPSCMAP_H__
-
-
-FT_BEGIN_HEADER
-
-
-#define FT_SERVICE_ID_POSTSCRIPT_CMAPS  "postscript-cmaps"
-
-
-  /*
-   *  Adobe glyph name to unicode value
-   */
-  typedef FT_UInt32
-  (*PS_Unicode_ValueFunc)( const char*  glyph_name );
-
-  /*
-   *  Unicode value to Adobe glyph name index.  0xFFFF if not found.
-   */
-  typedef FT_UInt
-  (*PS_Unicode_Index_Func)( FT_UInt       num_glyphs,
-                            const char**  glyph_names,
-                            FT_ULong      unicode );
-
-  /*
-   *  Macintosh name id to glyph name.  NULL if invalid index.
-   */
-  typedef const char*
-  (*PS_Macintosh_Name_Func)( FT_UInt  name_index );
-
-  /*
-   *  Adobe standard string ID to glyph name.  NULL if invalid index.
-   */
-  typedef const char*
-  (*PS_Adobe_Std_Strings_Func)( FT_UInt  string_index );
-
-  /*
-   *  Simple unicode -> glyph index charmap built from font glyph names
-   *  table.
-   */
-  typedef struct  PS_UniMap_
-  {
-    FT_UInt  unicode;
-    FT_UInt  glyph_index;
-
-  } PS_UniMap;
-
-
-  typedef struct  PS_Unicodes_
-  {
-    FT_UInt     num_maps;
-    PS_UniMap*  maps;
-
-  } PS_Unicodes;
-
-
-  typedef FT_Error
-  (*PS_Unicodes_InitFunc)( FT_Memory     memory,
-                           FT_UInt       num_glyphs,
-                           const char**  glyph_names,
-                           PS_Unicodes*  unicodes );
-
-  typedef FT_UInt
-  (*PS_Unicodes_CharIndexFunc)( PS_Unicodes*  unicodes,
-                                FT_UInt       unicode );
-
-  typedef FT_ULong
-  (*PS_Unicodes_CharNextFunc)( PS_Unicodes*  unicodes,
-                               FT_ULong      unicode );
-
-
-  FT_DEFINE_SERVICE( PsCMaps )
-  {
-    PS_Unicode_ValueFunc       unicode_value;
-
-    PS_Unicodes_InitFunc       unicodes_init;
-    PS_Unicodes_CharIndexFunc  unicodes_char_index;
-    PS_Unicodes_CharNextFunc   unicodes_char_next;
-
-    PS_Macintosh_Name_Func     macintosh_name;
-    PS_Adobe_Std_Strings_Func  adobe_std_strings;
-    const unsigned short*      adobe_std_encoding;
-    const unsigned short*      adobe_expert_encoding;
-  };
-
-  /* */
-
-
-FT_END_HEADER
-
-
-#endif /* __SVPSCMAP_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svpsinfo.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svpsinfo.h
deleted file mode 100644 (file)
index 63f5db9..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svpsinfo.h                                                             */
-/*                                                                         */
-/*    The FreeType PostScript info service (specification).                */
-/*                                                                         */
-/*  Copyright 2003, 2004 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVPSINFO_H__
-#define __SVPSINFO_H__
-
-#include FT_INTERNAL_SERVICE_H
-#include FT_INTERNAL_TYPE1_TYPES_H
-
-
-FT_BEGIN_HEADER
-
-
-#define FT_SERVICE_ID_POSTSCRIPT_INFO  "postscript-info"
-
-
-  typedef FT_Error
-  (*PS_GetFontInfoFunc)( FT_Face          face,
-                         PS_FontInfoRec*  afont_info );
-
-  typedef FT_Int
-  (*PS_HasGlyphNamesFunc)( FT_Face   face );
-
-  typedef FT_Error
-  (*PS_GetFontPrivateFunc)( FT_Face         face,
-                            PS_PrivateRec*  afont_private );
-
-
-  FT_DEFINE_SERVICE( PsInfo )
-  {
-    PS_GetFontInfoFunc     ps_get_font_info;
-    PS_HasGlyphNamesFunc   ps_has_glyph_names;
-    PS_GetFontPrivateFunc  ps_get_font_private;
-  };
-
-  /* */
-
-
-FT_END_HEADER
-
-
-#endif /* __SVPSINFO_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svsfnt.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svsfnt.h
deleted file mode 100644 (file)
index 87346c6..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svsfnt.h                                                               */
-/*                                                                         */
-/*    The FreeType SFNT table loading service (specification).             */
-/*                                                                         */
-/*  Copyright 2003, 2004 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVSFNT_H__
-#define __SVSFNT_H__
-
-#include FT_INTERNAL_SERVICE_H
-#include FT_TRUETYPE_TABLES_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*
-   *  SFNT table loading service.
-   */
-
-#define FT_SERVICE_ID_SFNT_TABLE  "sfnt-table"
-
-
-  /*
-   * Used to implement FT_Load_Sfnt_Table().
-   */
-  typedef FT_Error
-  (*FT_SFNT_TableLoadFunc)( FT_Face    face,
-                            FT_ULong   tag,
-                            FT_Long    offset,
-                            FT_Byte*   buffer,
-                            FT_ULong*  length );
-
-  /*
-   * Used to implement FT_Get_Sfnt_Table().
-   */
-  typedef void*
-  (*FT_SFNT_TableGetFunc)( FT_Face      face,
-                           FT_Sfnt_Tag  tag );
-
-
-  /*
-   * Used to implement FT_Sfnt_Table_Info().
-   */
-  typedef FT_Error
-  (*FT_SFNT_TableInfoFunc)( FT_Face    face,
-                            FT_UInt    idx,
-                            FT_ULong  *tag,
-                            FT_ULong  *length );
-
-
-  FT_DEFINE_SERVICE( SFNT_Table )
-  {
-    FT_SFNT_TableLoadFunc  load_table;
-    FT_SFNT_TableGetFunc   get_table;
-    FT_SFNT_TableInfoFunc  table_info;
-  };
-
-  /* */
-
-FT_END_HEADER
-
-
-#endif /* __SVSFNT_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svttcmap.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svttcmap.h
deleted file mode 100644 (file)
index f92fcd0..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svsttcmap.h                                                            */
-/*                                                                         */
-/*    The FreeType TrueType/sfnt cmap extra information service.           */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  Masatake YAMATO, Redhat K.K.                                           */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/* Development of this service is support of 
-   Information-technology Promotion Agency, Japan. */
-
-#ifndef __SVTTCMAP_H__
-#define __SVTTCMAP_H__ 
-
-#include FT_INTERNAL_SERVICE_H
-#include FT_TRUETYPE_TABLES_H
-
-
-FT_BEGIN_HEADER
-
-
-#define FT_SERVICE_ID_TT_CMAP "tt-cmaps"
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_CMapInfo                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to store TrueType/sfnt specific cmap information  */
-  /*    which is not covered by the generic @FT_CharMap structure.  This   */
-  /*    structure can be accessed with the @FT_Get_TT_CMap_Info function.  */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    language ::                                                        */
-  /*      The language ID used in Mac fonts.  Definitions of values are in */
-  /*      freetype/ttnameid.h.                                             */
-  /*                                                                       */
-  typedef struct  TT_CMapInfo_
-  {
-    FT_ULong language;
-
-  } TT_CMapInfo;
-
-
-  typedef FT_Error
-  (*TT_CMap_Info_GetFunc)( FT_CharMap    charmap,
-                           TT_CMapInfo  *cmap_info );
-
-
-  FT_DEFINE_SERVICE( TTCMaps )
-  {
-    TT_CMap_Info_GetFunc  get_cmap_info;
-  }; 
-  
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __SVTTCMAP_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svwinfnt.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svwinfnt.h
deleted file mode 100644 (file)
index 57f7765..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svwinfnt.h                                                             */
-/*                                                                         */
-/*    The FreeType Windows FNT/FONT service (specification).               */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVWINFNT_H__
-#define __SVWINFNT_H__
-
-#include FT_INTERNAL_SERVICE_H
-#include FT_WINFONTS_H
-
-
-FT_BEGIN_HEADER
-
-
-#define FT_SERVICE_ID_WINFNT  "winfonts"
-
-  typedef FT_Error
-  (*FT_WinFnt_GetHeaderFunc)( FT_Face               face,
-                              FT_WinFNT_HeaderRec  *aheader );
-
-
-  FT_DEFINE_SERVICE( WinFnt )
-  {
-    FT_WinFnt_GetHeaderFunc  get_header;
-  };
-
-  /* */
-
-
-FT_END_HEADER
-
-
-#endif /* __SVWINFNT_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/svxf86nm.h b/dependencies64/sfml/extlibs/headers/freetype/internal/svxf86nm.h
deleted file mode 100644 (file)
index 3a33abc..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  svxf86nm.h                                                             */
-/*                                                                         */
-/*    The FreeType XFree86 services (specification only).                  */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __SVXF86NM_H__
-#define __SVXF86NM_H__
-
-#include FT_INTERNAL_SERVICE_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*
-   *  A trivial service used to return the name of a face's font driver,
-   *  according to the XFree86 nomenclature.  Note that the service data
-   *  is a simple constant string pointer.
-   */
-
-#define FT_SERVICE_ID_XF86_NAME  "xf86-driver-name"
-
-#define FT_XF86_FORMAT_TRUETYPE  "TrueType"
-#define FT_XF86_FORMAT_TYPE_1    "Type 1"
-#define FT_XF86_FORMAT_BDF       "BDF"
-#define FT_XF86_FORMAT_PCF       "PCF"
-#define FT_XF86_FORMAT_TYPE_42   "Type 42"
-#define FT_XF86_FORMAT_CID       "CID Type 1"
-#define FT_XF86_FORMAT_CFF       "CFF"
-#define FT_XF86_FORMAT_PFR       "PFR"
-#define FT_XF86_FORMAT_WINFNT    "Windows FNT"
-
-  /* */
-
-FT_END_HEADER
-
-
-#endif /* __SVXF86NM_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/t1types.h b/dependencies64/sfml/extlibs/headers/freetype/internal/t1types.h
deleted file mode 100644 (file)
index 702bb1e..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1types.h                                                              */
-/*                                                                         */
-/*    Basic Type1/Type2 type definitions and interface (specification      */
-/*    only).                                                               */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __T1TYPES_H__
-#define __T1TYPES_H__
-
-
-#include <ft2build.h>
-#include FT_TYPE1_TABLES_H
-#include FT_INTERNAL_POSTSCRIPT_HINTS_H
-#include FT_INTERNAL_SERVICE_H
-#include FT_SERVICE_POSTSCRIPT_CMAPS_H
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /***              REQUIRED TYPE1/TYPE2 TABLES DEFINITIONS              ***/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    T1_EncodingRec                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure modeling a custom encoding.                            */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    num_chars  :: The number of character codes in the encoding.       */
-  /*                  Usually 256.                                         */
-  /*                                                                       */
-  /*    code_first :: The lowest valid character code in the encoding.     */
-  /*                                                                       */
-  /*    code_last  :: The highest valid character code in the encoding.    */
-  /*                                                                       */
-  /*    char_index :: An array of corresponding glyph indices.             */
-  /*                                                                       */
-  /*    char_name  :: An array of corresponding glyph names.               */
-  /*                                                                       */
-  typedef struct  T1_EncodingRecRec_
-  {
-    FT_Int       num_chars;
-    FT_Int       code_first;
-    FT_Int       code_last;
-
-    FT_UShort*   char_index;
-    FT_String**  char_name;
-
-  } T1_EncodingRec, *T1_Encoding;
-
-
-  typedef enum  T1_EncodingType_
-  {
-    T1_ENCODING_TYPE_NONE = 0,
-    T1_ENCODING_TYPE_ARRAY,
-    T1_ENCODING_TYPE_STANDARD,
-    T1_ENCODING_TYPE_ISOLATIN1,
-    T1_ENCODING_TYPE_EXPERT
-
-  } T1_EncodingType;
-
-
-  typedef struct  T1_FontRec_
-  {
-    PS_FontInfoRec   font_info;         /* font info dictionary */
-    PS_PrivateRec    private_dict;      /* private dictionary   */
-    FT_String*       font_name;         /* top-level dictionary */
-
-    T1_EncodingType  encoding_type;
-    T1_EncodingRec   encoding;
-
-    FT_Byte*         subrs_block;
-    FT_Byte*         charstrings_block;
-    FT_Byte*         glyph_names_block;
-
-    FT_Int           num_subrs;
-    FT_Byte**        subrs;
-    FT_PtrDist*      subrs_len;
-
-    FT_Int           num_glyphs;
-    FT_String**      glyph_names;       /* array of glyph names       */
-    FT_Byte**        charstrings;       /* array of glyph charstrings */
-    FT_PtrDist*      charstrings_len;
-
-    FT_Byte          paint_type;
-    FT_Byte          font_type;
-    FT_Matrix        font_matrix;
-    FT_Vector        font_offset;
-    FT_BBox          font_bbox;
-    FT_Long          font_id;
-
-    FT_Fixed         stroke_width;
-
-  } T1_FontRec, *T1_Font;
-
-
-  typedef struct  CID_SubrsRec_
-  {
-    FT_UInt    num_subrs;
-    FT_Byte**  code;
-
-  } CID_SubrsRec, *CID_Subrs;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /***                ORIGINAL T1_FACE CLASS DEFINITION                  ***/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  typedef struct T1_FaceRec_*   T1_Face;
-  typedef struct CID_FaceRec_*  CID_Face;
-
-
-  typedef struct  T1_FaceRec_
-  {
-    FT_FaceRec     root;
-    T1_FontRec     type1;
-    const void*    psnames;
-    const void*    psaux;
-    const void*    afm_data;
-    FT_CharMapRec  charmaprecs[2];
-    FT_CharMap     charmaps[2];
-    PS_Unicodes    unicode_map;
-
-    /* support for Multiple Masters fonts */
-    PS_Blend       blend;
-
-    /* since FT 2.1 - interface to PostScript hinter */
-    const void*    pshinter;
-
-  } T1_FaceRec;
-
-
-  typedef struct  CID_FaceRec_
-  {
-    FT_FaceRec       root;
-    void*            psnames;
-    void*            psaux;
-    CID_FaceInfoRec  cid;
-    void*            afm_data;
-    FT_Byte*         binary_data; /* used if hex data has been converted */
-    FT_Stream        cid_stream;
-    CID_Subrs        subrs;
-
-    /* since FT 2.1 - interface to PostScript hinter */
-    void*            pshinter;
-
-  } CID_FaceRec;
-
-
-FT_END_HEADER
-
-#endif /* __T1TYPES_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/internal/tttypes.h b/dependencies64/sfml/extlibs/headers/freetype/internal/tttypes.h
deleted file mode 100644 (file)
index 7f8335f..0000000
+++ /dev/null
@@ -1,1457 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  tttypes.h                                                              */
-/*                                                                         */
-/*    Basic SFNT/TrueType type definitions and interface (specification    */
-/*    only).                                                               */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2004, 2005 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __TTTYPES_H__
-#define __TTTYPES_H__
-
-
-#include <ft2build.h>
-#include FT_TRUETYPE_TABLES_H
-#include FT_INTERNAL_OBJECTS_H
-
-#ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
-#include FT_MULTIPLE_MASTERS_H
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /***             REQUIRED TRUETYPE/OPENTYPE TABLES DEFINITIONS         ***/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TTC_HeaderRec                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    TrueType collection header.  This table contains the offsets of    */
-  /*    the font headers of each distinct TrueType face in the file.       */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    tag     :: Must be `ttc ' to indicate a TrueType collection.       */
-  /*                                                                       */
-  /*    version :: The version number.                                     */
-  /*                                                                       */
-  /*    count   :: The number of faces in the collection.  The             */
-  /*               specification says this should be an unsigned long, but */
-  /*               we use a signed long since we need the value -1 for     */
-  /*               specific purposes.                                      */
-  /*                                                                       */
-  /*    offsets :: The offsets of the font headers, one per face.          */
-  /*                                                                       */
-  typedef struct  TTC_HeaderRec_
-  {
-    FT_ULong   tag;
-    FT_Fixed   version;
-    FT_Long    count;
-    FT_ULong*  offsets;
-
-  } TTC_HeaderRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    SFNT_HeaderRec                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    SFNT file format header.                                           */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    format_tag     :: The font format tag.                             */
-  /*                                                                       */
-  /*    num_tables     :: The number of tables in file.                    */
-  /*                                                                       */
-  /*    search_range   :: Must be `16 * (max power of 2 <= num_tables)'.   */
-  /*                                                                       */
-  /*    entry_selector :: Must be log2 of `search_range / 16'.             */
-  /*                                                                       */
-  /*    range_shift    :: Must be `num_tables * 16 - search_range'.        */
-  /*                                                                       */
-  typedef struct  SFNT_HeaderRec_
-  {
-    FT_ULong   format_tag;
-    FT_UShort  num_tables;
-    FT_UShort  search_range;
-    FT_UShort  entry_selector;
-    FT_UShort  range_shift;
-
-    FT_ULong   offset;  /* not in file */
-
-  } SFNT_HeaderRec, *SFNT_Header;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_TableRec                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This structure describes a given table of a TrueType font.         */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    Tag      :: A four-bytes tag describing the table.                 */
-  /*                                                                       */
-  /*    CheckSum :: The table checksum.  This value can be ignored.        */
-  /*                                                                       */
-  /*    Offset   :: The offset of the table from the start of the TrueType */
-  /*                font in its resource.                                  */
-  /*                                                                       */
-  /*    Length   :: The table length (in bytes).                           */
-  /*                                                                       */
-  typedef struct  TT_TableRec_
-  {
-    FT_ULong  Tag;        /*        table type */
-    FT_ULong  CheckSum;   /*    table checksum */
-    FT_ULong  Offset;     /* table file offset */
-    FT_ULong  Length;     /*      table length */
-
-  } TT_TableRec, *TT_Table;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_LongMetricsRec                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure modeling the long metrics of the `hmtx' and `vmtx'     */
-  /*    TrueType tables.  The values are expressed in font units.          */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    advance :: The advance width or height for the glyph.              */
-  /*                                                                       */
-  /*    bearing :: The left-side or top-side bearing for the glyph.        */
-  /*                                                                       */
-  typedef struct  TT_LongMetricsRec_
-  {
-    FT_UShort  advance;
-    FT_Short   bearing;
-
-  } TT_LongMetricsRec, *TT_LongMetrics;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    TT_ShortMetrics                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple type to model the short metrics of the `hmtx' and `vmtx'  */
-  /*    tables.                                                            */
-  /*                                                                       */
-  typedef FT_Short  TT_ShortMetrics;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_NameEntryRec                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure modeling TrueType name records.  Name records are used */
-  /*    to store important strings like family name, style name,           */
-  /*    copyright, etc. in _localized_ versions (i.e., language, encoding, */
-  /*    etc).                                                              */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    platformID   :: The ID of the name's encoding platform.            */
-  /*                                                                       */
-  /*    encodingID   :: The platform-specific ID for the name's encoding.  */
-  /*                                                                       */
-  /*    languageID   :: The platform-specific ID for the name's language.  */
-  /*                                                                       */
-  /*    nameID       :: The ID specifying what kind of name this is.       */
-  /*                                                                       */
-  /*    stringLength :: The length of the string in bytes.                 */
-  /*                                                                       */
-  /*    stringOffset :: The offset to the string in the `name' table.      */
-  /*                                                                       */
-  /*    string       :: A pointer to the string's bytes.  Note that these  */
-  /*                    are usually UTF-16 encoded characters.             */
-  /*                                                                       */
-  typedef struct  TT_NameEntryRec_
-  {
-    FT_UShort  platformID;
-    FT_UShort  encodingID;
-    FT_UShort  languageID;
-    FT_UShort  nameID;
-    FT_UShort  stringLength;
-    FT_ULong   stringOffset;
-
-    /* this last field is not defined in the spec */
-    /* but used by the FreeType engine            */
-
-    FT_Byte*   string;
-
-  } TT_NameEntryRec, *TT_NameEntry;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_NameTableRec                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure modeling the TrueType name table.                      */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    format         :: The format of the name table.                    */
-  /*                                                                       */
-  /*    numNameRecords :: The number of names in table.                    */
-  /*                                                                       */
-  /*    storageOffset  :: The offset of the name table in the `name'       */
-  /*                      TrueType table.                                  */
-  /*                                                                       */
-  /*    names          :: An array of name records.                        */
-  /*                                                                       */
-  /*    stream         :: the file's input stream.                         */
-  /*                                                                       */
-  typedef struct  TT_NameTableRec_
-  {
-    FT_UShort         format;
-    FT_UInt           numNameRecords;
-    FT_UInt           storageOffset;
-    TT_NameEntryRec*  names;
-    FT_Stream         stream;
-
-  } TT_NameTableRec, *TT_NameTable;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /***             OPTIONAL TRUETYPE/OPENTYPE TABLES DEFINITIONS         ***/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_GaspRangeRec                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A tiny structure used to model a gasp range according to the       */
-  /*    TrueType specification.                                            */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    maxPPEM  :: The maximum ppem value to which `gaspFlag' applies.    */
-  /*                                                                       */
-  /*    gaspFlag :: A flag describing the grid-fitting and anti-aliasing   */
-  /*                modes to be used.                                      */
-  /*                                                                       */
-  typedef struct  TT_GaspRangeRec_
-  {
-    FT_UShort  maxPPEM;
-    FT_UShort  gaspFlag;
-
-  } TT_GaspRangeRec, *TT_GaspRange;
-
-
-#define TT_GASP_GRIDFIT  0x01
-#define TT_GASP_DOGRAY   0x02
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_GaspRec                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure modeling the TrueType `gasp' table used to specify     */
-  /*    grid-fitting and anti-aliasing behaviour.                          */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    version    :: The version number.                                  */
-  /*                                                                       */
-  /*    numRanges  :: The number of gasp ranges in table.                  */
-  /*                                                                       */
-  /*    gaspRanges :: An array of gasp ranges.                             */
-  /*                                                                       */
-  typedef struct  TT_Gasp_
-  {
-    FT_UShort     version;
-    FT_UShort     numRanges;
-    TT_GaspRange  gaspRanges;
-
-  } TT_GaspRec;
-
-
-#ifndef FT_OPTIMIZE_MEMORY
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_HdmxEntryRec                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A small structure used to model the pre-computed widths of a given */
-  /*    size.  They are found in the `hdmx' table.                         */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    ppem      :: The pixels per EM value at which these metrics apply. */
-  /*                                                                       */
-  /*    max_width :: The maximum advance width for this metric.            */
-  /*                                                                       */
-  /*    widths    :: An array of widths.  Note: These are 8-bit bytes.     */
-  /*                                                                       */
-  typedef struct  TT_HdmxEntryRec_
-  {
-    FT_Byte   ppem;
-    FT_Byte   max_width;
-    FT_Byte*  widths;
-
-  } TT_HdmxEntryRec, *TT_HdmxEntry;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_HdmxRec                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model the `hdmx' table, which contains         */
-  /*    pre-computed widths for a set of given sizes/dimensions.           */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    version     :: The version number.                                 */
-  /*                                                                       */
-  /*    num_records :: The number of hdmx records.                         */
-  /*                                                                       */
-  /*    records     :: An array of hdmx records.                           */
-  /*                                                                       */
-  typedef struct  TT_HdmxRec_
-  {
-    FT_UShort     version;
-    FT_Short      num_records;
-    TT_HdmxEntry  records;
-
-  } TT_HdmxRec, *TT_Hdmx;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_Kern0_PairRec                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a kerning pair for the kerning table     */
-  /*    format 0.  The engine now loads this table if it finds one in the  */
-  /*    font file.                                                         */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    left  :: The index of the left glyph in pair.                      */
-  /*                                                                       */
-  /*    right :: The index of the right glyph in pair.                     */
-  /*                                                                       */
-  /*    value :: The kerning distance.  A positive value spaces the        */
-  /*             glyphs, a negative one makes them closer.                 */
-  /*                                                                       */
-  typedef struct  TT_Kern0_PairRec_
-  {
-    FT_UShort  left;   /* index of left  glyph in pair */
-    FT_UShort  right;  /* index of right glyph in pair */
-    FT_FWord   value;  /* kerning value                */
-
-  } TT_Kern0_PairRec, *TT_Kern0_Pair;
-
-#endif /* !OPTIMIZE_MEMORY */
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /***                    EMBEDDED BITMAPS SUPPORT                       ***/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_SBit_MetricsRec                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to hold the big metrics of a given glyph bitmap   */
-  /*    in a TrueType or OpenType font.  These are usually found in the    */
-  /*    `EBDT' (Microsoft) or `bloc' (Apple) table.                        */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    height       :: The glyph height in pixels.                        */
-  /*                                                                       */
-  /*    width        :: The glyph width in pixels.                         */
-  /*                                                                       */
-  /*    horiBearingX :: The horizontal left bearing.                       */
-  /*                                                                       */
-  /*    horiBearingY :: The horizontal top bearing.                        */
-  /*                                                                       */
-  /*    horiAdvance  :: The horizontal advance.                            */
-  /*                                                                       */
-  /*    vertBearingX :: The vertical left bearing.                         */
-  /*                                                                       */
-  /*    vertBearingY :: The vertical top bearing.                          */
-  /*                                                                       */
-  /*    vertAdvance  :: The vertical advance.                              */
-  /*                                                                       */
-  typedef struct  TT_SBit_MetricsRec_
-  {
-    FT_Byte  height;
-    FT_Byte  width;
-
-    FT_Char  horiBearingX;
-    FT_Char  horiBearingY;
-    FT_Byte  horiAdvance;
-
-    FT_Char  vertBearingX;
-    FT_Char  vertBearingY;
-    FT_Byte  vertAdvance;
-
-  } TT_SBit_MetricsRec, *TT_SBit_Metrics;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_SBit_SmallMetricsRec                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to hold the small metrics of a given glyph bitmap */
-  /*    in a TrueType or OpenType font.  These are usually found in the    */
-  /*    `EBDT' (Microsoft) or the `bdat' (Apple) table.                    */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    height   :: The glyph height in pixels.                            */
-  /*                                                                       */
-  /*    width    :: The glyph width in pixels.                             */
-  /*                                                                       */
-  /*    bearingX :: The left-side bearing.                                 */
-  /*                                                                       */
-  /*    bearingY :: The top-side bearing.                                  */
-  /*                                                                       */
-  /*    advance  :: The advance width or height.                           */
-  /*                                                                       */
-  typedef struct  TT_SBit_Small_Metrics_
-  {
-    FT_Byte  height;
-    FT_Byte  width;
-
-    FT_Char  bearingX;
-    FT_Char  bearingY;
-    FT_Byte  advance;
-
-  } TT_SBit_SmallMetricsRec, *TT_SBit_SmallMetrics;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_SBit_LineMetricsRec                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to describe the text line metrics of a given      */
-  /*    bitmap strike, for either a horizontal or vertical layout.         */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    ascender                :: The ascender in pixels.                 */
-  /*                                                                       */
-  /*    descender               :: The descender in pixels.                */
-  /*                                                                       */
-  /*    max_width               :: The maximum glyph width in pixels.      */
-  /*                                                                       */
-  /*    caret_slope_enumerator  :: Rise of the caret slope, typically set  */
-  /*                               to 1 for non-italic fonts.              */
-  /*                                                                       */
-  /*    caret_slope_denominator :: Rise of the caret slope, typically set  */
-  /*                               to 0 for non-italic fonts.              */
-  /*                                                                       */
-  /*    caret_offset            :: Offset in pixels to move the caret for  */
-  /*                               proper positioning.                     */
-  /*                                                                       */
-  /*    min_origin_SB           :: Minimum of horiBearingX (resp.          */
-  /*                               vertBearingY).                          */
-  /*    min_advance_SB          :: Minimum of                              */
-  /*                                                                       */
-  /*                                 horizontal advance -                  */
-  /*                                   ( horiBearingX + width )            */
-  /*                                                                       */
-  /*                               resp.                                   */
-  /*                                                                       */
-  /*                                 vertical advance -                    */
-  /*                                   ( vertBearingY + height )           */
-  /*                                                                       */
-  /*    max_before_BL           :: Maximum of horiBearingY (resp.          */
-  /*                               vertBearingY).                          */
-  /*                                                                       */
-  /*    min_after_BL            :: Minimum of                              */
-  /*                                                                       */
-  /*                                 horiBearingY - height                 */
-  /*                                                                       */
-  /*                               resp.                                   */
-  /*                                                                       */
-  /*                                 vertBearingX - width                  */
-  /*                                                                       */
-  /*    pads                    :: Unused (to make the size of the record  */
-  /*                               a multiple of 32 bits.                  */
-  /*                                                                       */
-  typedef struct  TT_SBit_LineMetricsRec_
-  {
-    FT_Char  ascender;
-    FT_Char  descender;
-    FT_Byte  max_width;
-    FT_Char  caret_slope_numerator;
-    FT_Char  caret_slope_denominator;
-    FT_Char  caret_offset;
-    FT_Char  min_origin_SB;
-    FT_Char  min_advance_SB;
-    FT_Char  max_before_BL;
-    FT_Char  min_after_BL;
-    FT_Char  pads[2];
-
-  } TT_SBit_LineMetricsRec, *TT_SBit_LineMetrics;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_SBit_RangeRec                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A TrueType/OpenType subIndexTable as defined in the `EBLC'         */
-  /*    (Microsoft) or `bloc' (Apple) tables.                              */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    first_glyph   :: The first glyph index in the range.               */
-  /*                                                                       */
-  /*    last_glyph    :: The last glyph index in the range.                */
-  /*                                                                       */
-  /*    index_format  :: The format of index table.  Valid values are 1    */
-  /*                     to 5.                                             */
-  /*                                                                       */
-  /*    image_format  :: The format of `EBDT' image data.                  */
-  /*                                                                       */
-  /*    image_offset  :: The offset to image data in `EBDT'.               */
-  /*                                                                       */
-  /*    image_size    :: For index formats 2 and 5.  This is the size in   */
-  /*                     bytes of each glyph bitmap.                       */
-  /*                                                                       */
-  /*    big_metrics   :: For index formats 2 and 5.  This is the big       */
-  /*                     metrics for each glyph bitmap.                    */
-  /*                                                                       */
-  /*    num_glyphs    :: For index formats 4 and 5.  This is the number of */
-  /*                     glyphs in the code array.                         */
-  /*                                                                       */
-  /*    glyph_offsets :: For index formats 1 and 3.                        */
-  /*                                                                       */
-  /*    glyph_codes   :: For index formats 4 and 5.                        */
-  /*                                                                       */
-  /*    table_offset  :: The offset of the index table in the `EBLC'       */
-  /*                     table.  Only used during strike loading.          */
-  /*                                                                       */
-  typedef struct  TT_SBit_RangeRec
-  {
-    FT_UShort           first_glyph;
-    FT_UShort           last_glyph;
-
-    FT_UShort           index_format;
-    FT_UShort           image_format;
-    FT_ULong            image_offset;
-
-    FT_ULong            image_size;
-    TT_SBit_MetricsRec  metrics;
-    FT_ULong            num_glyphs;
-
-    FT_ULong*           glyph_offsets;
-    FT_UShort*          glyph_codes;
-
-    FT_ULong            table_offset;
-
-  } TT_SBit_RangeRec, *TT_SBit_Range;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_SBit_StrikeRec                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used describe a given bitmap strike in the `EBLC'      */
-  /*    (Microsoft) or `bloc' (Apple) tables.                              */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*   num_index_ranges :: The number of index ranges.                     */
-  /*                                                                       */
-  /*   index_ranges     :: An array of glyph index ranges.                 */
-  /*                                                                       */
-  /*   color_ref        :: Unused.  `color_ref' is put in for future       */
-  /*                       enhancements, but these fields are already      */
-  /*                       in use by other platforms (e.g. Newton).        */
-  /*                       For details, please see                         */
-  /*                                                                       */
-  /*                         http://fonts.apple.com/                       */
-  /*                                TTRefMan/RM06/Chap6bloc.html           */
-  /*                                                                       */
-  /*   hori             :: The line metrics for horizontal layouts.        */
-  /*                                                                       */
-  /*   vert             :: The line metrics for vertical layouts.          */
-  /*                                                                       */
-  /*   start_glyph      :: The lowest glyph index for this strike.         */
-  /*                                                                       */
-  /*   end_glyph        :: The highest glyph index for this strike.        */
-  /*                                                                       */
-  /*   x_ppem           :: The number of horizontal pixels per EM.         */
-  /*                                                                       */
-  /*   y_ppem           :: The number of vertical pixels per EM.           */
-  /*                                                                       */
-  /*   bit_depth        :: The bit depth.  Valid values are 1, 2, 4,       */
-  /*                       and 8.                                          */
-  /*                                                                       */
-  /*   flags            :: Is this a vertical or horizontal strike?  For   */
-  /*                       details, please see                             */
-  /*                                                                       */
-  /*                         http://fonts.apple.com/                       */
-  /*                                TTRefMan/RM06/Chap6bloc.html           */
-  /*                                                                       */
-  typedef struct  TT_SBit_StrikeRec_
-  {
-    FT_Int                  num_ranges;
-    TT_SBit_Range           sbit_ranges;
-    FT_ULong                ranges_offset;
-
-    FT_ULong                color_ref;
-
-    TT_SBit_LineMetricsRec  hori;
-    TT_SBit_LineMetricsRec  vert;
-
-    FT_UShort               start_glyph;
-    FT_UShort               end_glyph;
-
-    FT_Byte                 x_ppem;
-    FT_Byte                 y_ppem;
-
-    FT_Byte                 bit_depth;
-    FT_Char                 flags;
-
-  } TT_SBit_StrikeRec, *TT_SBit_Strike;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_SBit_ComponentRec                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A simple structure to describe a compound sbit element.            */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    glyph_code :: The element's glyph index.                           */
-  /*                                                                       */
-  /*    x_offset   :: The element's left bearing.                          */
-  /*                                                                       */
-  /*    y_offset   :: The element's top bearing.                           */
-  /*                                                                       */
-  typedef struct  TT_SBit_ComponentRec_
-  {
-    FT_UShort  glyph_code;
-    FT_Char    x_offset;
-    FT_Char    y_offset;
-
-  } TT_SBit_ComponentRec, *TT_SBit_Component;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_SBit_ScaleRec                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used describe a given bitmap scaling table, as defined */
-  /*    in the `EBSC' table.                                               */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    hori              :: The horizontal line metrics.                  */
-  /*                                                                       */
-  /*    vert              :: The vertical line metrics.                    */
-  /*                                                                       */
-  /*    x_ppem            :: The number of horizontal pixels per EM.       */
-  /*                                                                       */
-  /*    y_ppem            :: The number of vertical pixels per EM.         */
-  /*                                                                       */
-  /*    x_ppem_substitute :: Substitution x_ppem value.                    */
-  /*                                                                       */
-  /*    y_ppem_substitute :: Substitution y_ppem value.                    */
-  /*                                                                       */
-  typedef struct  TT_SBit_ScaleRec_
-  {
-    TT_SBit_LineMetricsRec  hori;
-    TT_SBit_LineMetricsRec  vert;
-
-    FT_Byte                 x_ppem;
-    FT_Byte                 y_ppem;
-
-    FT_Byte                 x_ppem_substitute;
-    FT_Byte                 y_ppem_substitute;
-
-  } TT_SBit_ScaleRec, *TT_SBit_Scale;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /***                  POSTSCRIPT GLYPH NAMES SUPPORT                   ***/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_Post_20Rec                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Postscript names sub-table, format 2.0.  Stores the PS name of     */
-  /*    each glyph in the font face.                                       */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    num_glyphs    :: The number of named glyphs in the table.          */
-  /*                                                                       */
-  /*    num_names     :: The number of PS names stored in the table.       */
-  /*                                                                       */
-  /*    glyph_indices :: The indices of the glyphs in the names arrays.    */
-  /*                                                                       */
-  /*    glyph_names   :: The PS names not in Mac Encoding.                 */
-  /*                                                                       */
-  typedef struct  TT_Post_20Rec_
-  {
-    FT_UShort   num_glyphs;
-    FT_UShort   num_names;
-    FT_UShort*  glyph_indices;
-    FT_Char**   glyph_names;
-
-  } TT_Post_20Rec, *TT_Post_20;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_Post_25Rec                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Postscript names sub-table, format 2.5.  Stores the PS name of     */
-  /*    each glyph in the font face.                                       */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    num_glyphs :: The number of glyphs in the table.                   */
-  /*                                                                       */
-  /*    offsets    :: An array of signed offsets in a normal Mac           */
-  /*                  Postscript name encoding.                            */
-  /*                                                                       */
-  typedef struct  TT_Post_25_
-  {
-    FT_UShort  num_glyphs;
-    FT_Char*   offsets;
-
-  } TT_Post_25Rec, *TT_Post_25;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_Post_NamesRec                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Postscript names table, either format 2.0 or 2.5.                  */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    loaded    :: A flag to indicate whether the PS names are loaded.   */
-  /*                                                                       */
-  /*    format_20 :: The sub-table used for format 2.0.                    */
-  /*                                                                       */
-  /*    format_25 :: The sub-table used for format 2.5.                    */
-  /*                                                                       */
-  typedef struct  TT_Post_NamesRec_
-  {
-    FT_Bool  loaded;
-
-    union
-    {
-      TT_Post_20Rec  format_20;
-      TT_Post_25Rec  format_25;
-
-    } names;
-
-  } TT_Post_NamesRec, *TT_Post_Names;
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /***                    GX VARIATION TABLE SUPPORT                     ***/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-#ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
-  typedef struct GX_BlendRec_  *GX_Blend;
-#endif
-
-
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /***                  ORIGINAL TT_FACE CLASS DEFINITION                ***/
-  /***                                                                   ***/
-  /***                                                                   ***/
-  /*************************************************************************/
-  /*************************************************************************/
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This structure/class is defined here because it is common to the      */
-  /* following formats: TTF, OpenType-TT, and OpenType-CFF.                */
-  /*                                                                       */
-  /* Note, however, that the classes TT_Size and TT_GlyphSlot are not      */
-  /* shared between font drivers, and are thus defined in `ttobjs.h'.      */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    TT_Face                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a TrueType face/font object.  A TT_Face encapsulates   */
-  /*    the resolution and scaling independent parts of a TrueType font    */
-  /*    resource.                                                          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The TT_Face structure is also used as a `parent class' for the     */
-  /*    OpenType-CFF class (T2_Face).                                      */
-  /*                                                                       */
-  typedef struct TT_FaceRec_*  TT_Face;
-
-
-  /* a function type used for the truetype bytecode interpreter hooks */
-  typedef FT_Error
-  (*TT_Interpreter)( void*  exec_context );
-
-  /* forward declaration */
-  typedef struct TT_LoaderRec_*  TT_Loader;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Loader_GotoTableFunc                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Seeks a stream to the start of a given TrueType table.             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    tag    :: A 4-byte tag used to name the table.                     */
-  /*                                                                       */
-  /*    stream :: The input stream.                                        */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    length :: The length of the table in bytes.  Set to 0 if not       */
-  /*              needed.                                                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The stream cursor must be at the font file's origin.               */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Loader_GotoTableFunc)( TT_Face    face,
-                              FT_ULong   tag,
-                              FT_Stream  stream,
-                              FT_ULong*  length );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Loader_StartGlyphFunc                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Seeks a stream to the start of a given glyph element, and opens a  */
-  /*    frame for it.                                                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    loader      :: The current TrueType glyph loader object.           */
-  /*                                                                       */
-  /*    glyph index :: The index of the glyph to access.                   */
-  /*                                                                       */
-  /*    offset      :: The offset of the glyph according to the            */
-  /*                   `locations' table.                                  */
-  /*                                                                       */
-  /*    byte_count  :: The size of the frame in bytes.                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function is normally equivalent to FT_STREAM_SEEK(offset)     */
-  /*    followed by FT_FRAME_ENTER(byte_count) with the loader's stream,   */
-  /*    but alternative formats (e.g. compressed ones) might use something */
-  /*    different.                                                         */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Loader_StartGlyphFunc)( TT_Loader  loader,
-                               FT_UInt    glyph_index,
-                               FT_ULong   offset,
-                               FT_UInt    byte_count );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Loader_ReadGlyphFunc                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Reads one glyph element (its header, a simple glyph, or a          */
-  /*    composite) from the loader's current stream frame.                 */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    loader :: The current TrueType glyph loader object.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  typedef FT_Error
-  (*TT_Loader_ReadGlyphFunc)( TT_Loader  loader );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <FuncType>                                                            */
-  /*    TT_Loader_EndGlyphFunc                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Closes the current loader stream frame for the glyph.              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    loader :: The current TrueType glyph loader object.                */
-  /*                                                                       */
-  typedef void
-  (*TT_Loader_EndGlyphFunc)( TT_Loader  loader );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*                         TrueType Face Type                            */
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_Face                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The TrueType face class.  These objects model the resolution and   */
-  /*    point-size independent data found in a TrueType font file.         */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    root                 :: The base FT_Face structure, managed by the */
-  /*                            base layer.                                */
-  /*                                                                       */
-  /*    ttc_header           :: The TrueType collection header, used when  */
-  /*                            the file is a `ttc' rather than a `ttf'.   */
-  /*                            For ordinary font files, the field         */
-  /*                            `ttc_header.count' is set to 0.            */
-  /*                                                                       */
-  /*    format_tag           :: The font format tag.                       */
-  /*                                                                       */
-  /*    num_tables           :: The number of TrueType tables in this font */
-  /*                            file.                                      */
-  /*                                                                       */
-  /*    dir_tables           :: The directory of TrueType tables for this  */
-  /*                            font file.                                 */
-  /*                                                                       */
-  /*    header               :: The font's font header (`head' table).     */
-  /*                            Read on font opening.                      */
-  /*                                                                       */
-  /*    horizontal           :: The font's horizontal header (`hhea'       */
-  /*                            table).  This field also contains the      */
-  /*                            associated horizontal metrics table        */
-  /*                            (`hmtx').                                  */
-  /*                                                                       */
-  /*    max_profile          :: The font's maximum profile table.  Read on */
-  /*                            font opening.  Note that some maximum      */
-  /*                            values cannot be taken directly from this  */
-  /*                            table.  We thus define additional fields   */
-  /*                            below to hold the computed maxima.         */
-  /*                                                                       */
-  /*    max_components       :: The maximum number of glyph components     */
-  /*                            required to load any composite glyph from  */
-  /*                            this font.  Used to size the load stack.   */
-  /*                                                                       */
-  /*    vertical_info        :: A boolean which is set when the font file  */
-  /*                            contains vertical metrics.  If not, the    */
-  /*                            value of the `vertical' field is           */
-  /*                            undefined.                                 */
-  /*                                                                       */
-  /*    vertical             :: The font's vertical header (`vhea' table). */
-  /*                            This field also contains the associated    */
-  /*                            vertical metrics table (`vmtx'), if found. */
-  /*                            IMPORTANT: The contents of this field is   */
-  /*                            undefined if the `verticalInfo' field is   */
-  /*                            unset.                                     */
-  /*                                                                       */
-  /*    num_names            :: The number of name records within this     */
-  /*                            TrueType font.                             */
-  /*                                                                       */
-  /*    name_table           :: The table of name records (`name').        */
-  /*                                                                       */
-  /*    os2                  :: The font's OS/2 table (`OS/2').            */
-  /*                                                                       */
-  /*    postscript           :: The font's PostScript table (`post'        */
-  /*                            table).  The PostScript glyph names are    */
-  /*                            not loaded by the driver on face opening.  */
-  /*                            See the `ttpost' module for more details.  */
-  /*                                                                       */
-  /*    cmap_table           :: Address of the face's `cmap' SFNT table    */
-  /*                            in memory (it's an extracted frame).       */
-  /*                                                                       */
-  /*    cmap_size            :: The size in bytes of the `cmap_table'      */
-  /*                            described above.                           */
-  /*                                                                       */
-  /*    goto_table           :: A function called by each TrueType table   */
-  /*                            loader to position a stream's cursor to    */
-  /*                            the start of a given table according to    */
-  /*                            its tag.  It defaults to TT_Goto_Face but  */
-  /*                            can be different for strange formats (e.g. */
-  /*                            Type 42).                                  */
-  /*                                                                       */
-  /*    access_glyph_frame   :: A function used to access the frame of a   */
-  /*                            given glyph within the face's font file.   */
-  /*                                                                       */
-  /*    forget_glyph_frame   :: A function used to forget the frame of a   */
-  /*                            given glyph when all data has been loaded. */
-  /*                                                                       */
-  /*    read_glyph_header    :: A function used to read a glyph header.    */
-  /*                            It must be called between an `access' and  */
-  /*                            `forget'.                                  */
-  /*                                                                       */
-  /*    read_simple_glyph    :: A function used to read a simple glyph.    */
-  /*                            It must be called after the header was     */
-  /*                            read, and before the `forget'.             */
-  /*                                                                       */
-  /*    read_composite_glyph :: A function used to read a composite glyph. */
-  /*                            It must be called after the header was     */
-  /*                            read, and before the `forget'.             */
-  /*                                                                       */
-  /*    sfnt                 :: A pointer to the SFNT service.             */
-  /*                                                                       */
-  /*    psnames              :: A pointer to the PostScript names service. */
-  /*                                                                       */
-  /*    hdmx                 :: The face's horizontal device metrics       */
-  /*                            (`hdmx' table).  This table is optional in */
-  /*                            TrueType/OpenType fonts.                   */
-  /*                                                                       */
-  /*    gasp                 :: The grid-fitting and scaling properties    */
-  /*                            table (`gasp').  This table is optional in */
-  /*                            TrueType/OpenType fonts.                   */
-  /*                                                                       */
-  /*    pclt                 :: The `pclt' SFNT table.                     */
-  /*                                                                       */
-  /*    num_sbit_strikes     :: The number of sbit strikes, i.e., bitmap   */
-  /*                            sizes, embedded in this font.              */
-  /*                                                                       */
-  /*    sbit_strikes         :: An array of sbit strikes embedded in this  */
-  /*                            font.  This table is optional in a         */
-  /*                            TrueType/OpenType font.                    */
-  /*                                                                       */
-  /*    num_sbit_scales      :: The number of sbit scales for this font.   */
-  /*                                                                       */
-  /*    sbit_scales          :: Array of sbit scales embedded in this      */
-  /*                            font.  This table is optional in a         */
-  /*                            TrueType/OpenType font.                    */
-  /*                                                                       */
-  /*    postscript_names     :: A table used to store the Postscript names */
-  /*                            of  the glyphs for this font.  See the     */
-  /*                            file  `ttconfig.h' for comments on the     */
-  /*                            TT_CONFIG_OPTION_POSTSCRIPT_NAMES option.  */
-  /*                                                                       */
-  /*    num_locations        :: The number of glyph locations in this      */
-  /*                            TrueType file.  This should be             */
-  /*                            identical to the number of glyphs.         */
-  /*                            Ignored for Type 2 fonts.                  */
-  /*                                                                       */
-  /*    glyph_locations      :: An array of longs.  These are offsets to   */
-  /*                            glyph data within the `glyf' table.        */
-  /*                            Ignored for Type 2 font faces.             */
-  /*                                                                       */
-  /*    glyf_len             :: The length of the `glyf' table.  Needed    */
-  /*                            for malformed `loca' tables.               */
-  /*                                                                       */
-  /*    font_program_size    :: Size in bytecodes of the face's font       */
-  /*                            program.  0 if none defined.  Ignored for  */
-  /*                            Type 2 fonts.                              */
-  /*                                                                       */
-  /*    font_program         :: The face's font program (bytecode stream)  */
-  /*                            executed at load time, also used during    */
-  /*                            glyph rendering.  Comes from the `fpgm'    */
-  /*                            table.  Ignored for Type 2 font fonts.     */
-  /*                                                                       */
-  /*    cvt_program_size     :: The size in bytecodes of the face's cvt    */
-  /*                            program.  Ignored for Type 2 fonts.        */
-  /*                                                                       */
-  /*    cvt_program          :: The face's cvt program (bytecode stream)   */
-  /*                            executed each time an instance/size is     */
-  /*                            changed/reset.  Comes from the `prep'      */
-  /*                            table.  Ignored for Type 2 fonts.          */
-  /*                                                                       */
-  /*    cvt_size             :: Size of the control value table (in        */
-  /*                            entries).   Ignored for Type 2 fonts.      */
-  /*                                                                       */
-  /*    cvt                  :: The face's original control value table.   */
-  /*                            Coordinates are expressed in unscaled font */
-  /*                            units.  Comes from the `cvt ' table.       */
-  /*                            Ignored for Type 2 fonts.                  */
-  /*                                                                       */
-  /*    num_kern_pairs       :: The number of kerning pairs present in the */
-  /*                            font file.  The engine only loads the      */
-  /*                            first horizontal format 0 kern table it    */
-  /*                            finds in the font file.  Ignored for       */
-  /*                            Type 2 fonts.                              */
-  /*                                                                       */
-  /*    kern_table_index     :: The index of the kerning table in the font */
-  /*                            kerning directory.  Ignored for Type 2     */
-  /*                            fonts.                                     */
-  /*                                                                       */
-  /*    interpreter          :: A pointer to the TrueType bytecode         */
-  /*                            interpreters field is also used to hook    */
-  /*                            the debugger in `ttdebug'.                 */
-  /*                                                                       */
-  /*    unpatented_hinting   :: If true, use only unpatented methods in    */
-  /*                            the bytecode interpreter.                  */
-  /*                                                                       */
-  /*    doblend              :: A boolean which is set if the font should  */
-  /*                            be blended (this is for GX var).           */
-  /*                                                                       */
-  /*    blend                :: Contains the data needed to control GX     */
-  /*                            variation tables (rather like Multiple     */
-  /*                            Master data).                              */
-  /*                                                                       */
-  /*    extra                :: Reserved for third-party font drivers.     */
-  /*                                                                       */
-  /*    postscript_name      :: The PS name of the font.  Used by the      */
-  /*                            postscript name service.                   */
-  /*                                                                       */
-  typedef struct  TT_FaceRec_
-  {
-    FT_FaceRec            root;
-
-    TTC_HeaderRec         ttc_header;
-
-    FT_ULong              format_tag;
-    FT_UShort             num_tables;
-    TT_Table              dir_tables;
-
-    TT_Header             header;       /* TrueType header table          */
-    TT_HoriHeader         horizontal;   /* TrueType horizontal header     */
-#ifdef FT_OPTIMIZE_MEMORY
-    FT_Byte*              horz_metrics;
-    FT_ULong              horz_metrics_size;
-#endif
-
-    TT_MaxProfile         max_profile;
-    FT_ULong              max_components;
-
-    FT_Bool               vertical_info;
-    TT_VertHeader         vertical;     /* TT Vertical header, if present */
-#ifdef FT_OPTIMIZE_MEMORY
-    FT_Byte*              vert_metrics;
-    FT_ULong              vert_metrics_size;
-#endif
-
-    FT_UShort             num_names;    /* number of name records  */
-    TT_NameTableRec       name_table;   /* name table              */
-
-    TT_OS2                os2;          /* TrueType OS/2 table            */
-    TT_Postscript         postscript;   /* TrueType Postscript table      */
-
-    FT_Byte*              cmap_table;   /* extracted 'cmap' table */
-    FT_ULong              cmap_size;
-
-    TT_Loader_GotoTableFunc   goto_table;
-
-    TT_Loader_StartGlyphFunc  access_glyph_frame;
-    TT_Loader_EndGlyphFunc    forget_glyph_frame;
-    TT_Loader_ReadGlyphFunc   read_glyph_header;
-    TT_Loader_ReadGlyphFunc   read_simple_glyph;
-    TT_Loader_ReadGlyphFunc   read_composite_glyph;
-
-    /* a typeless pointer to the SFNT_Interface table used to load */
-    /* the basic TrueType tables in the face object                */
-    void*                 sfnt;
-
-    /* a typeless pointer to the FT_Service_PsCMapsRec table used to */
-    /* handle glyph names <-> unicode & Mac values                   */
-    void*                 psnames;
-
-
-    /***********************************************************************/
-    /*                                                                     */
-    /* Optional TrueType/OpenType tables                                   */
-    /*                                                                     */
-    /***********************************************************************/
-
-    /* horizontal device metrics */
-#ifdef FT_OPTIMIZE_MEMORY
-    FT_Byte*              hdmx_table;
-    FT_ULong              hdmx_table_size;
-    FT_UInt               hdmx_record_count;
-    FT_ULong              hdmx_record_size;
-    FT_Byte*              hdmx_record_sizes;
-#else
-    TT_HdmxRec            hdmx;
-#endif
-
-    /* grid-fitting and scaling table */
-    TT_GaspRec            gasp;                 /* the `gasp' table */
-
-    /* PCL 5 table */
-    TT_PCLT               pclt;
-
-    /* embedded bitmaps support */
-#ifdef FT_OPTIMIZE_MEMORY
-    FT_Byte*              sbit_table;
-    FT_ULong              sbit_table_size;
-    FT_UInt               sbit_num_strikes;
-#else
-    FT_ULong              num_sbit_strikes;
-    TT_SBit_Strike        sbit_strikes;
-#endif
-
-    FT_ULong              num_sbit_scales;
-    TT_SBit_Scale         sbit_scales;
-
-    /* postscript names table */
-    TT_Post_NamesRec      postscript_names;
-
-
-    /***********************************************************************/
-    /*                                                                     */
-    /* TrueType-specific fields (ignored by the OTF-Type2 driver)          */
-    /*                                                                     */
-    /***********************************************************************/
-
-    /* the glyph locations */
-#ifdef FT_OPTIMIZE_MEMORY
-    FT_UInt               num_locations;
-    FT_Byte*              glyph_locations;
-#else
-    FT_UShort             num_locations;
-    FT_Long*              glyph_locations;
-#endif
-
-    FT_ULong              glyf_len;
-
-    /* the font program, if any */
-    FT_ULong              font_program_size;
-    FT_Byte*              font_program;
-
-    /* the cvt program, if any */
-    FT_ULong              cvt_program_size;
-    FT_Byte*              cvt_program;
-
-    /* the original, unscaled, control value table */
-    FT_ULong              cvt_size;
-    FT_Short*             cvt;
-
-#ifdef FT_OPTIMIZE_MEMORY
-    FT_Byte*              kern_table;
-    FT_ULong              kern_table_size;
-    FT_UInt               num_kern_tables;
-    FT_UInt32             kern_avail_bits;
-    FT_UInt32             kern_order_bits;
-#else
-    /* the format 0 kerning table, if any */
-    FT_Int                num_kern_pairs;
-    FT_Int                kern_table_index;
-    TT_Kern0_Pair         kern_pairs;
-#endif
-
-    /* A pointer to the bytecode interpreter to use.  This is also */
-    /* used to hook the debugger for the `ttdebug' utility.        */
-    TT_Interpreter        interpreter;
-
-#ifdef TT_CONFIG_OPTION_UNPATENTED_HINTING
-    /* Use unpatented hinting only. */
-    FT_Bool               unpatented_hinting;
-#endif
-
-#ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
-    FT_Bool               doblend;
-    GX_Blend              blend;
-#endif
-
-    /***********************************************************************/
-    /*                                                                     */
-    /* Other tables or fields. This is used by derivative formats like     */
-    /* OpenType.                                                           */
-    /*                                                                     */
-    /***********************************************************************/
-
-    FT_Generic            extra;
-
-    const char*           postscript_name;
-
-  } TT_FaceRec;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*  <Struct>                                                             */
-  /*     TT_GlyphZoneRec                                                   */
-  /*                                                                       */
-  /*  <Description>                                                        */
-  /*     A glyph zone is used to load, scale and hint glyph outline        */
-  /*     coordinates.                                                      */
-  /*                                                                       */
-  /*  <Fields>                                                             */
-  /*     memory       :: A handle to the memory manager.                   */
-  /*                                                                       */
-  /*     max_points   :: The maximal size in points of the zone.           */
-  /*                                                                       */
-  /*     max_contours :: Max size in links contours of thez one.           */
-  /*                                                                       */
-  /*     n_points     :: The current number of points in the zone.         */
-  /*                                                                       */
-  /*     n_contours   :: The current number of contours in the zone.       */
-  /*                                                                       */
-  /*     org          :: The original glyph coordinates (font              */
-  /*                     units/scaled).                                    */
-  /*                                                                       */
-  /*     cur          :: The current glyph coordinates (scaled/hinted).    */
-  /*                                                                       */
-  /*     tags         :: The point control tags.                           */
-  /*                                                                       */
-  /*     contours     :: The contours end points.                          */
-  /*                                                                       */
-  typedef struct  TT_GlyphZoneRec_
-  {
-    FT_Memory   memory;
-    FT_UShort   max_points;
-    FT_UShort   max_contours;
-    FT_UShort   n_points;   /* number of points in zone    */
-    FT_Short    n_contours; /* number of contours          */
-
-    FT_Vector*  org;        /* original point coordinates  */
-    FT_Vector*  cur;        /* current point coordinates   */
-
-    FT_Byte*    tags;       /* current touch flags         */
-    FT_UShort*  contours;   /* contour end points          */
-
-  } TT_GlyphZoneRec, *TT_GlyphZone;
-
-
-  /* handle to execution context */
-  typedef struct TT_ExecContextRec_*  TT_ExecContext;
-
-  /* glyph loader structure */
-  typedef struct  TT_LoaderRec_
-  {
-    FT_Face          face;
-    FT_Size          size;
-    FT_GlyphSlot     glyph;
-    FT_GlyphLoader   gloader;
-
-    FT_ULong         load_flags;
-    FT_UInt          glyph_index;
-
-    FT_Stream        stream;
-    FT_Int           byte_len;
-
-    FT_Short         n_contours;
-    FT_BBox          bbox;
-    FT_Int           left_bearing;
-    FT_Int           advance;
-    FT_Int           top_bearing;
-    FT_Int           vadvance;
-    FT_Int           linear;
-    FT_Bool          linear_def;
-    FT_Bool          preserve_pps;
-    FT_Vector        pp1;
-    FT_Vector        pp2;
-    FT_Vector        pp3;
-    FT_Vector        pp4;
-
-    FT_ULong         glyf_offset;
-
-    /* the zone where we load our glyphs */
-    TT_GlyphZoneRec  base;
-    TT_GlyphZoneRec  zone;
-
-    TT_ExecContext   exec;
-    FT_Byte*         instructions;
-    FT_ULong         ins_pos;
-
-    /* for possible extensibility in other formats */
-    void*            other;
-
-  } TT_LoaderRec;
-
-
-FT_END_HEADER
-
-#endif /* __TTTYPES_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/t1tables.h b/dependencies64/sfml/extlibs/headers/freetype/t1tables.h
deleted file mode 100644 (file)
index 5ae12b8..0000000
+++ /dev/null
@@ -1,431 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1tables.h                                                             */
-/*                                                                         */
-/*    Basic Type 1/Type 2 tables definitions and interface (specification  */
-/*    only).                                                               */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __T1TABLES_H__
-#define __T1TABLES_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    type1_tables                                                       */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    Type 1 Tables                                                      */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    Type 1 (PostScript) specific font tables.                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains the definition of Type 1-specific tables,    */
-  /*    including structures related to other PostScript font formats.     */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /* Note that we separate font data in PS_FontInfoRec and PS_PrivateRec */
-  /* structures in order to support Multiple Master fonts.               */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    PS_FontInfoRec                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a Type1/Type2 FontInfo dictionary.  Note */
-  /*    that for Multiple Master fonts, each instance has its own          */
-  /*    FontInfo.                                                          */
-  /*                                                                       */
-  typedef struct  PS_FontInfoRec
-  {
-    FT_String*  version;
-    FT_String*  notice;
-    FT_String*  full_name;
-    FT_String*  family_name;
-    FT_String*  weight;
-    FT_Long     italic_angle;
-    FT_Bool     is_fixed_pitch;
-    FT_Short    underline_position;
-    FT_UShort   underline_thickness;
-
-  } PS_FontInfoRec, *PS_FontInfo;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    T1_FontInfo                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This type is equivalent to @PS_FontInfoRec.  It is deprecated but  */
-  /*    kept to maintain source compatibility between various versions of  */
-  /*    FreeType.                                                          */
-  /*                                                                       */
-  typedef PS_FontInfoRec  T1_FontInfo;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    PS_PrivateRec                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a Type1/Type2 private dictionary.  Note  */
-  /*    that for Multiple Master fonts, each instance has its own Private  */
-  /*    dictionary.                                                        */
-  /*                                                                       */
-  typedef struct  PS_PrivateRec_
-  {
-    FT_Int     unique_id;
-    FT_Int     lenIV;
-
-    FT_Byte    num_blue_values;
-    FT_Byte    num_other_blues;
-    FT_Byte    num_family_blues;
-    FT_Byte    num_family_other_blues;
-
-    FT_Short   blue_values[14];
-    FT_Short   other_blues[10];
-
-    FT_Short   family_blues      [14];
-    FT_Short   family_other_blues[10];
-
-    FT_Fixed   blue_scale;
-    FT_Int     blue_shift;
-    FT_Int     blue_fuzz;
-
-    FT_UShort  standard_width[1];
-    FT_UShort  standard_height[1];
-
-    FT_Byte    num_snap_widths;
-    FT_Byte    num_snap_heights;
-    FT_Bool    force_bold;
-    FT_Bool    round_stem_up;
-
-    FT_Short   snap_widths [13];  /* including std width  */
-    FT_Short   snap_heights[13];  /* including std height */
-
-    FT_Fixed   expansion_factor;
-
-    FT_Long    language_group;
-    FT_Long    password;
-
-    FT_Short   min_feature[2];
-
-  } PS_PrivateRec, *PS_Private;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    T1_Private                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*   This type is equivalent to @PS_PrivateRec.  It is deprecated but    */
-  /*   kept to maintain source compatibility between various versions of   */
-  /*   FreeType.                                                           */
-  /*                                                                       */
-  typedef PS_PrivateRec  T1_Private;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    T1_Blend_Flags                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A set of flags used to indicate which fields are present in a      */
-  /*    given blend dictionary (font info or private).  Used to support    */
-  /*    Multiple Masters fonts.                                            */
-  /*                                                                       */
-  typedef enum
-  {
-    /*# required fields in a FontInfo blend dictionary */
-    T1_BLEND_UNDERLINE_POSITION = 0,
-    T1_BLEND_UNDERLINE_THICKNESS,
-    T1_BLEND_ITALIC_ANGLE,
-
-    /*# required fields in a Private blend dictionary */
-    T1_BLEND_BLUE_VALUES,
-    T1_BLEND_OTHER_BLUES,
-    T1_BLEND_STANDARD_WIDTH,
-    T1_BLEND_STANDARD_HEIGHT,
-    T1_BLEND_STEM_SNAP_WIDTHS,
-    T1_BLEND_STEM_SNAP_HEIGHTS,
-    T1_BLEND_BLUE_SCALE,
-    T1_BLEND_BLUE_SHIFT,
-    T1_BLEND_FAMILY_BLUES,
-    T1_BLEND_FAMILY_OTHER_BLUES,
-    T1_BLEND_FORCE_BOLD,
-
-    /*# never remove */
-    T1_BLEND_MAX
-
-  } T1_Blend_Flags;
-
-
-  /*# backwards compatible definitions */
-#define t1_blend_underline_position   T1_BLEND_UNDERLINE_POSITION
-#define t1_blend_underline_thickness  T1_BLEND_UNDERLINE_THICKNESS
-#define t1_blend_italic_angle         T1_BLEND_ITALIC_ANGLE
-#define t1_blend_blue_values          T1_BLEND_BLUE_VALUES
-#define t1_blend_other_blues          T1_BLEND_OTHER_BLUES
-#define t1_blend_standard_widths      T1_BLEND_STANDARD_WIDTH
-#define t1_blend_standard_height      T1_BLEND_STANDARD_HEIGHT
-#define t1_blend_stem_snap_widths     T1_BLEND_STEM_SNAP_WIDTHS
-#define t1_blend_stem_snap_heights    T1_BLEND_STEM_SNAP_HEIGHTS
-#define t1_blend_blue_scale           T1_BLEND_BLUE_SCALE
-#define t1_blend_blue_shift           T1_BLEND_BLUE_SHIFT
-#define t1_blend_family_blues         T1_BLEND_FAMILY_BLUES
-#define t1_blend_family_other_blues   T1_BLEND_FAMILY_OTHER_BLUES
-#define t1_blend_force_bold           T1_BLEND_FORCE_BOLD
-#define t1_blend_max                  T1_BLEND_MAX
-
-
-  /* maximum number of Multiple Masters designs, as defined in the spec */
-#define T1_MAX_MM_DESIGNS     16
-
-  /* maximum number of Multiple Masters axes, as defined in the spec */
-#define T1_MAX_MM_AXIS        4
-
-  /* maximum number of elements in a design map */
-#define T1_MAX_MM_MAP_POINTS  20
-
-
-  /* this structure is used to store the BlendDesignMap entry for an axis */
-  typedef struct  PS_DesignMap_
-  {
-    FT_Byte    num_points;
-    FT_Long*   design_points;
-    FT_Fixed*  blend_points;
-
-  } PS_DesignMapRec, *PS_DesignMap;
-
-  /* backwards-compatible definition */
-  typedef PS_DesignMapRec  T1_DesignMap;
-
-
-  typedef struct  PS_BlendRec_
-  {
-    FT_UInt          num_designs;
-    FT_UInt          num_axis;
-
-    FT_String*       axis_names[T1_MAX_MM_AXIS];
-    FT_Fixed*        design_pos[T1_MAX_MM_DESIGNS];
-    PS_DesignMapRec  design_map[T1_MAX_MM_AXIS];
-
-    FT_Fixed*        weight_vector;
-    FT_Fixed*        default_weight_vector;
-
-    PS_FontInfo      font_infos[T1_MAX_MM_DESIGNS + 1];
-    PS_Private       privates  [T1_MAX_MM_DESIGNS + 1];
-
-    FT_ULong         blend_bitflags;
-
-    FT_BBox*         bboxes    [T1_MAX_MM_DESIGNS + 1];
-
-  } PS_BlendRec, *PS_Blend;
-
-
-  /* backwards-compatible definition */
-  typedef PS_BlendRec  T1_Blend;
-
-
-  typedef struct  CID_FaceDictRec_
-  {
-    PS_PrivateRec  private_dict;
-
-    FT_UInt        len_buildchar;
-    FT_Fixed       forcebold_threshold;
-    FT_Pos         stroke_width;
-    FT_Fixed       expansion_factor;
-
-    FT_Byte        paint_type;
-    FT_Byte        font_type;
-    FT_Matrix      font_matrix;
-    FT_Vector      font_offset;
-
-    FT_UInt        num_subrs;
-    FT_ULong       subrmap_offset;
-    FT_Int         sd_bytes;
-
-  } CID_FaceDictRec, *CID_FaceDict;
-
-
-  /* backwards-compatible definition */
-  typedef CID_FaceDictRec  CID_FontDict;
-
-
-  typedef struct  CID_FaceInfoRec_
-  {
-    FT_String*      cid_font_name;
-    FT_Fixed        cid_version;
-    FT_Int          cid_font_type;
-
-    FT_String*      registry;
-    FT_String*      ordering;
-    FT_Int          supplement;
-
-    PS_FontInfoRec  font_info;
-    FT_BBox         font_bbox;
-    FT_ULong        uid_base;
-
-    FT_Int          num_xuid;
-    FT_ULong        xuid[16];
-
-    FT_ULong        cidmap_offset;
-    FT_Int          fd_bytes;
-    FT_Int          gd_bytes;
-    FT_ULong        cid_count;
-
-    FT_Int          num_dicts;
-    CID_FaceDict    font_dicts;
-
-    FT_ULong        data_offset;
-
-  } CID_FaceInfoRec, *CID_FaceInfo;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    CID_Info                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*   This type is equivalent to CID_FaceInfoRec.  It is deprecated but   */
-  /*   kept to maintain source compatibility between various versions of   */
-  /*   FreeType.                                                           */
-  /*                                                                       */
-  typedef CID_FaceInfoRec  CID_Info;
-
-  /* */
-
-
- /************************************************************************
-  *
-  * @function:
-  *    FT_Has_PS_Glyph_Names
-  *
-  * @description:
-  *    Return true if a given face provides reliable Postscript glyph
-  *    names.  This is similar to using the @FT_HAS_GLYPH_NAMES macro,
-  *    except that certain fonts (mostly TrueType) contain incorrect
-  *    glyph name tables.
-  *
-  *    When this function returns true, the caller is sure that the glyph
-  *    names returned by @FT_Get_Glyph_Name are reliable.
-  *
-  * @input:
-  *    face ::
-  *       face handle
-  *
-  * @return:
-  *    Boolean.  True if glyph names are reliable.
-  */
-  FT_EXPORT( FT_Int )
-  FT_Has_PS_Glyph_Names( FT_Face  face );
-
-
- /************************************************************************
-  *
-  * @function:
-  *    FT_Get_PS_Font_Info
-  *
-  * @description:
-  *    Retrieve the @PS_FontInfoRec structure corresponding to a given
-  *    Postscript font.
-  *
-  * @input:
-  *    face ::
-  *       Postscript face handle.
-  *
-  * @output:
-  *    afont_info ::
-  *       Output font info structure pointer.
-  *
-  * @return:
-  *    FreeType error code.  0 means success.
-  *
-  * @note:
-  *    The string pointers within the font info structure are owned by
-  *    the face and don't need to be freed by the caller.
-  *
-  *    If the font's format is not Postscript-based, this function will
-  *    return the FT_Err_Invalid_Argument error code.
-  */
-  FT_EXPORT( FT_Error )
-  FT_Get_PS_Font_Info( FT_Face          face,
-                       PS_FontInfoRec  *afont_info );
-
-
- /************************************************************************
-  *
-  * @function:
-  *    FT_Get_PS_Font_Private
-  *
-  * @description:
-  *    Retrieve the @PS_PrivateRec structure corresponding to a given
-  *    Postscript font.
-  *
-  * @input:
-  *    face ::
-  *       Postscript face handle.
-  *
-  * @output:
-  *    afont_private ::
-  *       Output private dictionary structure pointer.
-  *
-  * @return:
-  *    FreeType error code.  0 means success.
-  *
-  * @note:
-  *    The string pointers within the font info structure are owned by
-  *    the face and don't need to be freed by the caller.
-  *
-  *    If the font's format is not Postscript-based, this function will
-  *    return the FT_Err_Invalid_Argument error code.
-  */
-  FT_EXPORT( FT_Error )
-  FT_Get_PS_Font_Private( FT_Face         face,
-                          PS_PrivateRec  *afont_private );
-
- /* */
-
-
-
-FT_END_HEADER
-
-#endif /* __T1TABLES_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ttnameid.h b/dependencies64/sfml/extlibs/headers/freetype/ttnameid.h
deleted file mode 100644 (file)
index 2e7f110..0000000
+++ /dev/null
@@ -1,1119 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttnameid.h                                                             */
-/*                                                                         */
-/*    TrueType name ID definitions (specification only).                   */
-/*                                                                         */
-/*  Copyright 1996-2002, 2003, 2004 by                                     */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __TTNAMEID_H__
-#define __TTNAMEID_H__
-
-
-#include <ft2build.h>
-
-
-FT_BEGIN_HEADER
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Possible values for the `platform' identifier code in the name        */
-  /* records of the TTF `name' table.                                      */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /***********************************************************************
-   *
-   * @enum:
-   *   TT_PLATFORM_XXX
-   *
-   * @description:
-   *   A list of valid values for the `platform_id' identifier code in
-   *   @FT_CharMapRec and @FT_SfntName structures.
-   *
-   * @values:
-   *   TT_PLATFORM_APPLE_UNICODE ::
-   *     Used by Apple to indicate a Unicode character map and/or name entry.
-   *     See @TT_APPLE_ID_XXX for corresponding `encoding_id' values.  Note
-   *     that name entries in this format are coded as big-endian UCS-2
-   *     character codes _only_.
-   *
-   *   TT_PLATFORM_MACINTOSH ::
-   *     Used by Apple to indicate a MacOS-specific charmap and/or name entry.
-   *     See @TT_MAC_ID_XXX for corresponding `encoding_id' values.  Note that
-   *     most TrueType fonts contain an Apple roman charmap to be usable on
-   *     MacOS systems (even if they contain a Microsoft charmap as well).
-   *
-   *   TT_PLATFORM_ISO ::
-   *     This value was used to specify Unicode charmaps.  It is however
-   *     now deprecated.  See @TT_ISO_ID_XXX for a list of corresponding
-   *     `encoding_id' values.
-   *
-   *   TT_PLATFORM_MICROSOFT ::
-   *     Used by Microsoft to indicate Windows-specific charmaps.  See
-   *     @TT_MS_ID_XXX for a list of corresponding `encoding_id' values.
-   *     Note that most fonts contain a Unicode charmap using
-   *     (@TT_PLATFORM_MICROSOFT, @TT_MS_ID_UNICODE_CS).
-   *
-   *   TT_PLATFORM_CUSTOM ::
-   *     Used to indicate application-specific charmaps.
-   *
-   *   TT_PLATFORM_ADOBE ::
-   *     This value isn't part of any font format specification, but is used
-   *     by FreeType to report Adobe-specific charmaps in an @FT_CharMapRec
-   *     structure.  See @TT_ADOBE_ID_XXX.
-   */
-
-#define TT_PLATFORM_APPLE_UNICODE  0
-#define TT_PLATFORM_MACINTOSH      1
-#define TT_PLATFORM_ISO            2 /* deprecated */
-#define TT_PLATFORM_MICROSOFT      3
-#define TT_PLATFORM_CUSTOM         4
-#define TT_PLATFORM_ADOBE          7 /* artificial */
-
-
-  /***********************************************************************
-   *
-   * @enum:
-   *   TT_APPLE_ID_XXX
-   *
-   * @description:
-   *   A list of valid values for the `encoding_id' for
-   *   @TT_PLATFORM_APPLE_UNICODE charmaps and name entries.
-   *
-   * @values:
-   *   TT_APPLE_ID_DEFAULT ::
-   *     Unicode version 1.0.
-   *   TT_APPLE_ID_UNICODE_1_1 ::
-   *     Unicode 1.1; specifies Hangul characters starting at U+34xx.
-   *   TT_APPLE_ID_ISO_10646 ::
-   *     Deprecated (identical to preceding.)
-   *   TT_APPLE_ID_UNICODE_2_0 ::
-   *     Unicode 2.0 and beyond (UTF-16 BMP only.)
-   *   TT_APPLE_ID_UNICODE_32 ::
-   *     Unicode 3.1 and beyond, using UTF-32
-   */
-
-#define TT_APPLE_ID_DEFAULT      0 /* Unicode 1.0 */
-#define TT_APPLE_ID_UNICODE_1_1  1 /* specify Hangul at U+34xx */
-#define TT_APPLE_ID_ISO_10646    2 /* deprecated */
-#define TT_APPLE_ID_UNICODE_2_0  3 /* or later */
-#define TT_APPLE_ID_UNICODE_32   4 /* 2.0 or later, full repertoire */
-
-
-  /***********************************************************************
-   *
-   * @enum:
-   *   TT_MAC_ID_XXX
-   *
-   * @description:
-   *   A list of valid values for the `encoding_id' for
-   *   @TT_PLATFORM_MACINTOSH charmaps and name entries.
-   *
-   * @values:
-   *   TT_MAC_ID_ROMAN ::
-   *   TT_MAC_ID_JAPANESE ::
-   *   TT_MAC_ID_TRADITIONAL_CHINESE ::
-   *   TT_MAC_ID_KOREAN ::
-   *   TT_MAC_ID_ARABIC ::
-   *   TT_MAC_ID_HEBREW ::
-   *   TT_MAC_ID_GREEK ::
-   *   TT_MAC_ID_RUSSIAN ::
-   *   TT_MAC_ID_RSYMBOL ::
-   *   TT_MAC_ID_DEVANAGARI ::
-   *   TT_MAC_ID_GURMUKHI ::
-   *   TT_MAC_ID_GUJARATI ::
-   *   TT_MAC_ID_ORIYA ::
-   *   TT_MAC_ID_BENGALI ::
-   *   TT_MAC_ID_TAMIL ::
-   *   TT_MAC_ID_TELUGU ::
-   *   TT_MAC_ID_KANNADA ::
-   *   TT_MAC_ID_MALAYALAM ::
-   *   TT_MAC_ID_SINHALESE ::
-   *   TT_MAC_ID_BURMESE ::
-   *   TT_MAC_ID_KHMER ::
-   *   TT_MAC_ID_THAI ::
-   *   TT_MAC_ID_LAOTIAN ::
-   *   TT_MAC_ID_GEORGIAN ::
-   *   TT_MAC_ID_ARMENIAN ::
-   *   TT_MAC_ID_MALDIVIAN ::
-   *   TT_MAC_ID_SIMPLIFIED_CHINESE ::
-   *   TT_MAC_ID_TIBETAN ::
-   *   TT_MAC_ID_MONGOLIAN ::
-   *   TT_MAC_ID_GEEZ ::
-   *   TT_MAC_ID_SLAVIC ::
-   *   TT_MAC_ID_VIETNAMESE ::
-   *   TT_MAC_ID_SINDHI ::
-   *   TT_MAC_ID_UNINTERP ::
-   */
-
-#define TT_MAC_ID_ROMAN                 0
-#define TT_MAC_ID_JAPANESE              1
-#define TT_MAC_ID_TRADITIONAL_CHINESE   2
-#define TT_MAC_ID_KOREAN                3
-#define TT_MAC_ID_ARABIC                4
-#define TT_MAC_ID_HEBREW                5
-#define TT_MAC_ID_GREEK                 6
-#define TT_MAC_ID_RUSSIAN               7
-#define TT_MAC_ID_RSYMBOL               8
-#define TT_MAC_ID_DEVANAGARI            9
-#define TT_MAC_ID_GURMUKHI             10
-#define TT_MAC_ID_GUJARATI             11
-#define TT_MAC_ID_ORIYA                12
-#define TT_MAC_ID_BENGALI              13
-#define TT_MAC_ID_TAMIL                14
-#define TT_MAC_ID_TELUGU               15
-#define TT_MAC_ID_KANNADA              16
-#define TT_MAC_ID_MALAYALAM            17
-#define TT_MAC_ID_SINHALESE            18
-#define TT_MAC_ID_BURMESE              19
-#define TT_MAC_ID_KHMER                20
-#define TT_MAC_ID_THAI                 21
-#define TT_MAC_ID_LAOTIAN              22
-#define TT_MAC_ID_GEORGIAN             23
-#define TT_MAC_ID_ARMENIAN             24
-#define TT_MAC_ID_MALDIVIAN            25
-#define TT_MAC_ID_SIMPLIFIED_CHINESE   25
-#define TT_MAC_ID_TIBETAN              26
-#define TT_MAC_ID_MONGOLIAN            27
-#define TT_MAC_ID_GEEZ                 28
-#define TT_MAC_ID_SLAVIC               29
-#define TT_MAC_ID_VIETNAMESE           30
-#define TT_MAC_ID_SINDHI               31
-#define TT_MAC_ID_UNINTERP             32
-
-
-  /***********************************************************************
-   *
-   * @enum:
-   *   TT_ISO_ID_XXX
-   *
-   * @description:
-   *   A list of valid values for the `encoding_id' for
-   *   @TT_PLATFORM_ISO charmaps and name entries.
-   *
-   *   Their use is now deprecated.
-   *
-   * @values:
-   *   TT_ISO_ID_7BIT_ASCII ::
-   *     ASCII.
-   *   TT_ISO_ID_10646 ::
-   *     ISO/10646.
-   *   TT_ISO_ID_8859_1 ::
-   *     Also known as Latin-1.
-   */
-
-#define TT_ISO_ID_7BIT_ASCII  0
-#define TT_ISO_ID_10646       1
-#define TT_ISO_ID_8859_1      2
-
-
-  /***********************************************************************
-   *
-   * @enum:
-   *   TT_MS_ID_XXX
-   *
-   * @description:
-   *   A list of valid values for the `encoding_id' for
-   *   @TT_PLATFORM_MICROSOFT charmaps and name entries.
-   *
-   * @values:
-   *   TT_MS_ID_SYMBOL_CS ::
-   *     Corresponds to Microsoft symbol encoding. See
-   *     @FT_ENCODING_MS_SYMBOL.
-   *
-   *   TT_MS_ID_UNICODE_CS ::
-   *     Corresponds to a Microsoft WGL4 charmap, matching Unicode.  See
-   *     @FT_ENCODING_UNICODE.
-   *
-   *   TT_MS_ID_SJIS ::
-   *     Corresponds to SJIS Japanese encoding.  See @FT_ENCODING_SJIS.
-   *
-   *   TT_MS_ID_GB2312 ::
-   *     Corresponds to Simplified Chinese as used in Mainland China.  See
-   *     @FT_ENCODING_GB2312.
-   *
-   *   TT_MS_ID_BIG_5 ::
-   *     Corresponds to Traditional Chinese as used in Taiwan and Hong Kong.
-   *     See @FT_ENCODING_BIG5.
-   *
-   *   TT_MS_ID_WANSUNG ::
-   *     Corresponds to Korean Wansung encoding.  See @FT_ENCODING_WANSUNG.
-   *
-   *   TT_MS_ID_JOHAB ::
-   *     Corresponds to Johab encoding.  See @FT_ENCODING_JOHAB.
-   *
-   *   TT_MS_ID_UCS_4 ::
-   *     Corresponds to UCS-4 or UTF-32 charmaps.  This has been added to
-   *     the OpenType specification version 1.4 (mid-2001.)
-   */
-
-#define TT_MS_ID_SYMBOL_CS    0
-#define TT_MS_ID_UNICODE_CS   1
-#define TT_MS_ID_SJIS         2
-#define TT_MS_ID_GB2312       3
-#define TT_MS_ID_BIG_5        4
-#define TT_MS_ID_WANSUNG      5
-#define TT_MS_ID_JOHAB        6
-#define TT_MS_ID_UCS_4       10
-
-
-  /***********************************************************************
-   *
-   * @enum:
-   *   TT_ADOBE_ID_XXX
-   *
-   * @description:
-   *   A list of valid values for the `encoding_id' for
-   *   @TT_PLATFORM_ADOBE charmaps.  This is a FreeType-specific extension!
-   *
-   * @values:
-   *   TT_ADOBE_ID_STANDARD ::
-   *     Adobe standard encoding.
-   *   TT_ADOBE_ID_EXPERT ::
-   *     Adobe expert encoding.
-   *   TT_ADOBE_ID_CUSTOM ::
-   *     Adobe custom encoding.
-   */
-
-#define TT_ADOBE_ID_STANDARD  0
-#define TT_ADOBE_ID_EXPERT    1
-#define TT_ADOBE_ID_CUSTOM    2
-#define TT_ADOBE_ID_LATIN_1   3
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Possible values of the language identifier field in the name records  */
-  /* of the TTF `name' table if the `platform' identifier code is          */
-  /* TT_PLATFORM_MACINTOSH.                                                */
-  /*                                                                       */
-  /* The canonical source for the Apple assigned Language ID's is at       */
-  /*                                                                       */
-  /*   http://fonts.apple.com/TTRefMan/RM06/Chap6name.html                 */
-  /*                                                                       */
-#define TT_MAC_LANGID_ENGLISH                       0
-#define TT_MAC_LANGID_FRENCH                        1
-#define TT_MAC_LANGID_GERMAN                        2
-#define TT_MAC_LANGID_ITALIAN                       3
-#define TT_MAC_LANGID_DUTCH                         4
-#define TT_MAC_LANGID_SWEDISH                       5
-#define TT_MAC_LANGID_SPANISH                       6
-#define TT_MAC_LANGID_DANISH                        7
-#define TT_MAC_LANGID_PORTUGUESE                    8
-#define TT_MAC_LANGID_NORWEGIAN                     9
-#define TT_MAC_LANGID_HEBREW                       10
-#define TT_MAC_LANGID_JAPANESE                     11
-#define TT_MAC_LANGID_ARABIC                       12
-#define TT_MAC_LANGID_FINNISH                      13
-#define TT_MAC_LANGID_GREEK                        14
-#define TT_MAC_LANGID_ICELANDIC                    15
-#define TT_MAC_LANGID_MALTESE                      16
-#define TT_MAC_LANGID_TURKISH                      17
-#define TT_MAC_LANGID_CROATIAN                     18
-#define TT_MAC_LANGID_CHINESE_TRADITIONAL          19
-#define TT_MAC_LANGID_URDU                         20
-#define TT_MAC_LANGID_HINDI                        21
-#define TT_MAC_LANGID_THAI                         22
-#define TT_MAC_LANGID_KOREAN                       23
-#define TT_MAC_LANGID_LITHUANIAN                   24
-#define TT_MAC_LANGID_POLISH                       25
-#define TT_MAC_LANGID_HUNGARIAN                    26
-#define TT_MAC_LANGID_ESTONIAN                     27
-#define TT_MAC_LANGID_LETTISH                      28
-#define TT_MAC_LANGID_SAAMISK                      29
-#define TT_MAC_LANGID_FAEROESE                     30
-#define TT_MAC_LANGID_FARSI                        31
-#define TT_MAC_LANGID_RUSSIAN                      32
-#define TT_MAC_LANGID_CHINESE_SIMPLIFIED           33
-#define TT_MAC_LANGID_FLEMISH                      34
-#define TT_MAC_LANGID_IRISH                        35
-#define TT_MAC_LANGID_ALBANIAN                     36
-#define TT_MAC_LANGID_ROMANIAN                     37
-#define TT_MAC_LANGID_CZECH                        38
-#define TT_MAC_LANGID_SLOVAK                       39
-#define TT_MAC_LANGID_SLOVENIAN                    40
-#define TT_MAC_LANGID_YIDDISH                      41
-#define TT_MAC_LANGID_SERBIAN                      42
-#define TT_MAC_LANGID_MACEDONIAN                   43
-#define TT_MAC_LANGID_BULGARIAN                    44
-#define TT_MAC_LANGID_UKRAINIAN                    45
-#define TT_MAC_LANGID_BYELORUSSIAN                 46
-#define TT_MAC_LANGID_UZBEK                        47
-#define TT_MAC_LANGID_KAZAKH                       48
-#define TT_MAC_LANGID_AZERBAIJANI                  49
-#define TT_MAC_LANGID_AZERBAIJANI_CYRILLIC_SCRIPT  49
-#define TT_MAC_LANGID_AZERBAIJANI_ARABIC_SCRIPT    50
-#define TT_MAC_LANGID_ARMENIAN                     51
-#define TT_MAC_LANGID_GEORGIAN                     52
-#define TT_MAC_LANGID_MOLDAVIAN                    53
-#define TT_MAC_LANGID_KIRGHIZ                      54
-#define TT_MAC_LANGID_TAJIKI                       55
-#define TT_MAC_LANGID_TURKMEN                      56
-#define TT_MAC_LANGID_MONGOLIAN                    57
-#define TT_MAC_LANGID_MONGOLIAN_MONGOLIAN_SCRIPT   57
-#define TT_MAC_LANGID_MONGOLIAN_CYRILLIC_SCRIPT    58
-#define TT_MAC_LANGID_PASHTO                       59
-#define TT_MAC_LANGID_KURDISH                      60
-#define TT_MAC_LANGID_KASHMIRI                     61
-#define TT_MAC_LANGID_SINDHI                       62
-#define TT_MAC_LANGID_TIBETAN                      63
-#define TT_MAC_LANGID_NEPALI                       64
-#define TT_MAC_LANGID_SANSKRIT                     65
-#define TT_MAC_LANGID_MARATHI                      66
-#define TT_MAC_LANGID_BENGALI                      67
-#define TT_MAC_LANGID_ASSAMESE                     68
-#define TT_MAC_LANGID_GUJARATI                     69
-#define TT_MAC_LANGID_PUNJABI                      70
-#define TT_MAC_LANGID_ORIYA                        71
-#define TT_MAC_LANGID_MALAYALAM                    72
-#define TT_MAC_LANGID_KANNADA                      73
-#define TT_MAC_LANGID_TAMIL                        74
-#define TT_MAC_LANGID_TELUGU                       75
-#define TT_MAC_LANGID_SINHALESE                    76
-#define TT_MAC_LANGID_BURMESE                      77
-#define TT_MAC_LANGID_KHMER                        78
-#define TT_MAC_LANGID_LAO                          79
-#define TT_MAC_LANGID_VIETNAMESE                   80
-#define TT_MAC_LANGID_INDONESIAN                   81
-#define TT_MAC_LANGID_TAGALOG                      82
-#define TT_MAC_LANGID_MALAY_ROMAN_SCRIPT           83
-#define TT_MAC_LANGID_MALAY_ARABIC_SCRIPT          84
-#define TT_MAC_LANGID_AMHARIC                      85
-#define TT_MAC_LANGID_TIGRINYA                     86
-#define TT_MAC_LANGID_GALLA                        87
-#define TT_MAC_LANGID_SOMALI                       88
-#define TT_MAC_LANGID_SWAHILI                      89
-#define TT_MAC_LANGID_RUANDA                       90
-#define TT_MAC_LANGID_RUNDI                        91
-#define TT_MAC_LANGID_CHEWA                        92
-#define TT_MAC_LANGID_MALAGASY                     93
-#define TT_MAC_LANGID_ESPERANTO                    94
-#define TT_MAC_LANGID_WELSH                       128
-#define TT_MAC_LANGID_BASQUE                      129
-#define TT_MAC_LANGID_CATALAN                     130
-#define TT_MAC_LANGID_LATIN                       131
-#define TT_MAC_LANGID_QUECHUA                     132
-#define TT_MAC_LANGID_GUARANI                     133
-#define TT_MAC_LANGID_AYMARA                      134
-#define TT_MAC_LANGID_TATAR                       135
-#define TT_MAC_LANGID_UIGHUR                      136
-#define TT_MAC_LANGID_DZONGKHA                    137
-#define TT_MAC_LANGID_JAVANESE                    138
-#define TT_MAC_LANGID_SUNDANESE                   139
-
-
-#if 0  /* these seem to be errors that have been dropped */
-
-#define TT_MAC_LANGID_SCOTTISH_GAELIC             140
-#define TT_MAC_LANGID_IRISH_GAELIC                141
-
-#endif
-
-
-  /* The following codes are new as of 2000-03-10 */
-#define TT_MAC_LANGID_GALICIAN                    140
-#define TT_MAC_LANGID_AFRIKAANS                   141
-#define TT_MAC_LANGID_BRETON                      142
-#define TT_MAC_LANGID_INUKTITUT                   143
-#define TT_MAC_LANGID_SCOTTISH_GAELIC             144
-#define TT_MAC_LANGID_MANX_GAELIC                 145
-#define TT_MAC_LANGID_IRISH_GAELIC                146
-#define TT_MAC_LANGID_TONGAN                      147
-#define TT_MAC_LANGID_GREEK_POLYTONIC             148
-#define TT_MAC_LANGID_GREELANDIC                  149
-#define TT_MAC_LANGID_AZERBAIJANI_ROMAN_SCRIPT    150
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Possible values of the language identifier field in the name records  */
-  /* of the TTF `name' table if the `platform' identifier code is          */
-  /* TT_PLATFORM_MICROSOFT.                                                */
-  /*                                                                       */
-  /* The canonical source for the MS assigned LCID's (seems to) be at      */
-  /*                                                                       */
-  /*   http://www.microsoft.com/globaldev/reference/lcid-all.mspx          */
-  /*                                                                       */
-  /* It used to be at various places, among them                           */
-  /*                                                                       */
-  /*   http://www.microsoft.com/typography/OTSPEC/lcid-cp.txt              */
-  /*   http://www.microsoft.com/globaldev/reference/loclanghome.asp        */
-  /*   http://support.microsoft.com/support/kb/articles/Q224/8/04.ASP      */
-  /*   http://msdn.microsoft.com/library/en-us/passport25/                 */
-  /*           NET_Passport_VBScript_Documentation/Single_Sign_In/         */
-  /*           Advanced_Single_Sign_In/Localization_and_LCIDs.asp          */
-  /*                                                                       */
-  /* Hopefully, it seems now that the Globaldev site prevails...           */
-  /*                                   (updated by Antoine, 2004-02-17)    */
-
-#define TT_MS_LANGID_ARABIC_GENERAL                    0x0001
-#define TT_MS_LANGID_ARABIC_SAUDI_ARABIA               0x0401
-#define TT_MS_LANGID_ARABIC_IRAQ                       0x0801
-#define TT_MS_LANGID_ARABIC_EGYPT                      0x0c01
-#define TT_MS_LANGID_ARABIC_LIBYA                      0x1001
-#define TT_MS_LANGID_ARABIC_ALGERIA                    0x1401
-#define TT_MS_LANGID_ARABIC_MOROCCO                    0x1801
-#define TT_MS_LANGID_ARABIC_TUNISIA                    0x1c01
-#define TT_MS_LANGID_ARABIC_OMAN                       0x2001
-#define TT_MS_LANGID_ARABIC_YEMEN                      0x2401
-#define TT_MS_LANGID_ARABIC_SYRIA                      0x2801
-#define TT_MS_LANGID_ARABIC_JORDAN                     0x2c01
-#define TT_MS_LANGID_ARABIC_LEBANON                    0x3001
-#define TT_MS_LANGID_ARABIC_KUWAIT                     0x3401
-#define TT_MS_LANGID_ARABIC_UAE                        0x3801
-#define TT_MS_LANGID_ARABIC_BAHRAIN                    0x3c01
-#define TT_MS_LANGID_ARABIC_QATAR                      0x4001
-#define TT_MS_LANGID_BULGARIAN_BULGARIA                0x0402
-#define TT_MS_LANGID_CATALAN_SPAIN                     0x0403
-#define TT_MS_LANGID_CHINESE_GENERAL                   0x0004
-#define TT_MS_LANGID_CHINESE_TAIWAN                    0x0404
-#define TT_MS_LANGID_CHINESE_PRC                       0x0804
-#define TT_MS_LANGID_CHINESE_HONG_KONG                 0x0c04
-#define TT_MS_LANGID_CHINESE_SINGAPORE                 0x1004
-
-#if 1  /* this looks like the correct value */
-#define TT_MS_LANGID_CHINESE_MACAU                     0x1404
-#else  /* but beware, Microsoft may change its mind...
-          the most recent Word reference has the following: */
-#define TT_MS_LANGID_CHINESE_MACAU  TT_MS_LANGID_CHINESE_HONG_KONG
-#endif
-
-#if 0  /* used only with .NET "cultures"; commented out */
-#define TT_MS_LANGID_CHINESE_TRADITIONAL               0x7C04
-#endif
-
-#define TT_MS_LANGID_CZECH_CZECH_REPUBLIC              0x0405
-#define TT_MS_LANGID_DANISH_DENMARK                    0x0406
-#define TT_MS_LANGID_GERMAN_GERMANY                    0x0407
-#define TT_MS_LANGID_GERMAN_SWITZERLAND                0x0807
-#define TT_MS_LANGID_GERMAN_AUSTRIA                    0x0c07
-#define TT_MS_LANGID_GERMAN_LUXEMBOURG                 0x1007
-#define TT_MS_LANGID_GERMAN_LIECHTENSTEI               0x1407
-#define TT_MS_LANGID_GREEK_GREECE                      0x0408
-
-  /* don't ask what this one means... It is commented out currently. */
-#if 0
-#define TT_MS_LANGID_GREEK_GREECE2                     0x2008
-#endif
-
-#define TT_MS_LANGID_ENGLISH_GENERAL                   0x0009
-#define TT_MS_LANGID_ENGLISH_UNITED_STATES             0x0409
-#define TT_MS_LANGID_ENGLISH_UNITED_KINGDOM            0x0809
-#define TT_MS_LANGID_ENGLISH_AUSTRALIA                 0x0c09
-#define TT_MS_LANGID_ENGLISH_CANADA                    0x1009
-#define TT_MS_LANGID_ENGLISH_NEW_ZEALAND               0x1409
-#define TT_MS_LANGID_ENGLISH_IRELAND                   0x1809
-#define TT_MS_LANGID_ENGLISH_SOUTH_AFRICA              0x1c09
-#define TT_MS_LANGID_ENGLISH_JAMAICA                   0x2009
-#define TT_MS_LANGID_ENGLISH_CARIBBEAN                 0x2409
-#define TT_MS_LANGID_ENGLISH_BELIZE                    0x2809
-#define TT_MS_LANGID_ENGLISH_TRINIDAD                  0x2c09
-#define TT_MS_LANGID_ENGLISH_ZIMBABWE                  0x3009
-#define TT_MS_LANGID_ENGLISH_PHILIPPINES               0x3409
-#define TT_MS_LANGID_ENGLISH_INDONESIA                 0x3809
-#define TT_MS_LANGID_ENGLISH_HONG_KONG                 0x3c09
-#define TT_MS_LANGID_ENGLISH_INDIA                     0x4009
-#define TT_MS_LANGID_ENGLISH_MALAYSIA                  0x4409
-#define TT_MS_LANGID_ENGLISH_SINGAPORE                 0x4809
-#define TT_MS_LANGID_SPANISH_SPAIN_TRADITIONAL_SORT    0x040a
-#define TT_MS_LANGID_SPANISH_MEXICO                    0x080a
-#define TT_MS_LANGID_SPANISH_SPAIN_INTERNATIONAL_SORT  0x0c0a
-#define TT_MS_LANGID_SPANISH_GUATEMALA                 0x100a
-#define TT_MS_LANGID_SPANISH_COSTA_RICA                0x140a
-#define TT_MS_LANGID_SPANISH_PANAMA                    0x180a
-#define TT_MS_LANGID_SPANISH_DOMINICAN_REPUBLIC        0x1c0a
-#define TT_MS_LANGID_SPANISH_VENEZUELA                 0x200a
-#define TT_MS_LANGID_SPANISH_COLOMBIA                  0x240a
-#define TT_MS_LANGID_SPANISH_PERU                      0x280a
-#define TT_MS_LANGID_SPANISH_ARGENTINA                 0x2c0a
-#define TT_MS_LANGID_SPANISH_ECUADOR                   0x300a
-#define TT_MS_LANGID_SPANISH_CHILE                     0x340a
-#define TT_MS_LANGID_SPANISH_URUGUAY                   0x380a
-#define TT_MS_LANGID_SPANISH_PARAGUAY                  0x3c0a
-#define TT_MS_LANGID_SPANISH_BOLIVIA                   0x400a
-#define TT_MS_LANGID_SPANISH_EL_SALVADOR               0x440a
-#define TT_MS_LANGID_SPANISH_HONDURAS                  0x480a
-#define TT_MS_LANGID_SPANISH_NICARAGUA                 0x4c0a
-#define TT_MS_LANGID_SPANISH_PUERTO_RICO               0x500a
-#define TT_MS_LANGID_SPANISH_UNITED_STATES             0x540a
-  /* The following ID blatantly violate MS specs by using a */
-  /* sublanguage > 0x1F.                                    */
-#define TT_MS_LANGID_SPANISH_LATIN_AMERICA             0xE40aU
-#define TT_MS_LANGID_FINNISH_FINLAND                   0x040b
-#define TT_MS_LANGID_FRENCH_FRANCE                     0x040c
-#define TT_MS_LANGID_FRENCH_BELGIUM                    0x080c
-#define TT_MS_LANGID_FRENCH_CANADA                     0x0c0c
-#define TT_MS_LANGID_FRENCH_SWITZERLAND                0x100c
-#define TT_MS_LANGID_FRENCH_LUXEMBOURG                 0x140c
-#define TT_MS_LANGID_FRENCH_MONACO                     0x180c
-#define TT_MS_LANGID_FRENCH_WEST_INDIES                0x1c0c
-#define TT_MS_LANGID_FRENCH_REUNION                    0x200c
-#define TT_MS_LANGID_FRENCH_CONGO                      0x240c
-  /* which was formerly: */
-#define TT_MS_LANGID_FRENCH_ZAIRE  TT_MS_LANGID_FRENCH_CONGO
-#define TT_MS_LANGID_FRENCH_SENEGAL                    0x280c
-#define TT_MS_LANGID_FRENCH_CAMEROON                   0x2c0c
-#define TT_MS_LANGID_FRENCH_COTE_D_IVOIRE              0x300c
-#define TT_MS_LANGID_FRENCH_MALI                       0x340c
-#define TT_MS_LANGID_FRENCH_MOROCCO                    0x380c
-#define TT_MS_LANGID_FRENCH_HAITI                      0x3c0c
-  /* and another violation of the spec (see 0xE40aU) */
-#define TT_MS_LANGID_FRENCH_NORTH_AFRICA               0xE40cU
-#define TT_MS_LANGID_HEBREW_ISRAEL                     0x040d
-#define TT_MS_LANGID_HUNGARIAN_HUNGARY                 0x040e
-#define TT_MS_LANGID_ICELANDIC_ICELAND                 0x040f
-#define TT_MS_LANGID_ITALIAN_ITALY                     0x0410
-#define TT_MS_LANGID_ITALIAN_SWITZERLAND               0x0810
-#define TT_MS_LANGID_JAPANESE_JAPAN                    0x0411
-#define TT_MS_LANGID_KOREAN_EXTENDED_WANSUNG_KOREA     0x0412
-#define TT_MS_LANGID_KOREAN_JOHAB_KOREA                0x0812
-#define TT_MS_LANGID_DUTCH_NETHERLANDS                 0x0413
-#define TT_MS_LANGID_DUTCH_BELGIUM                     0x0813
-#define TT_MS_LANGID_NORWEGIAN_NORWAY_BOKMAL           0x0414
-#define TT_MS_LANGID_NORWEGIAN_NORWAY_NYNORSK          0x0814
-#define TT_MS_LANGID_POLISH_POLAND                     0x0415
-#define TT_MS_LANGID_PORTUGUESE_BRAZIL                 0x0416
-#define TT_MS_LANGID_PORTUGUESE_PORTUGAL               0x0816
-#define TT_MS_LANGID_RHAETO_ROMANIC_SWITZERLAND        0x0417
-#define TT_MS_LANGID_ROMANIAN_ROMANIA                  0x0418
-#define TT_MS_LANGID_MOLDAVIAN_MOLDAVIA                0x0818
-#define TT_MS_LANGID_RUSSIAN_RUSSIA                    0x0419
-#define TT_MS_LANGID_RUSSIAN_MOLDAVIA                  0x0819
-#define TT_MS_LANGID_CROATIAN_CROATIA                  0x041a
-#define TT_MS_LANGID_SERBIAN_SERBIA_LATIN              0x081a
-#define TT_MS_LANGID_SERBIAN_SERBIA_CYRILLIC           0x0c1a
-
-#if 0  /* this used to be this value, but it looks like we were wrong */
-#define TT_MS_LANGID_BOSNIAN_BOSNIA_HERZEGOVINA        0x101a
-#else  /* current sources say */
-#define TT_MS_LANGID_CROATIAN_BOSNIA_HERZEGOVINA       0x101a
-#define TT_MS_LANGID_BOSNIAN_BOSNIA_HERZEGOVINA        0x141a
-       /* and XPsp2 Platform SDK added (2004-07-26) */
-       /* Names are shortened to be signifiant within 40 chars. */
-#define TT_MS_LANGID_SERBIAN_BOSNIA_HERZ_LATIN         0x181a
-#define TT_MS_LANGID_SERBIAN_BOSNIA_HERZ_CYRILLIC      0x181a
-#endif
-
-#define TT_MS_LANGID_SLOVAK_SLOVAKIA                   0x041b
-#define TT_MS_LANGID_ALBANIAN_ALBANIA                  0x041c
-#define TT_MS_LANGID_SWEDISH_SWEDEN                    0x041d
-#define TT_MS_LANGID_SWEDISH_FINLAND                   0x081d
-#define TT_MS_LANGID_THAI_THAILAND                     0x041e
-#define TT_MS_LANGID_TURKISH_TURKEY                    0x041f
-#define TT_MS_LANGID_URDU_PAKISTAN                     0x0420
-#define TT_MS_LANGID_URDU_INDIA                        0x0820
-#define TT_MS_LANGID_INDONESIAN_INDONESIA              0x0421
-#define TT_MS_LANGID_UKRAINIAN_UKRAINE                 0x0422
-#define TT_MS_LANGID_BELARUSIAN_BELARUS                0x0423
-#define TT_MS_LANGID_SLOVENE_SLOVENIA                  0x0424
-#define TT_MS_LANGID_ESTONIAN_ESTONIA                  0x0425
-#define TT_MS_LANGID_LATVIAN_LATVIA                    0x0426
-#define TT_MS_LANGID_LITHUANIAN_LITHUANIA              0x0427
-#define TT_MS_LANGID_CLASSIC_LITHUANIAN_LITHUANIA      0x0827
-#define TT_MS_LANGID_TAJIK_TAJIKISTAN                  0x0428
-#define TT_MS_LANGID_FARSI_IRAN                        0x0429
-#define TT_MS_LANGID_VIETNAMESE_VIET_NAM               0x042a
-#define TT_MS_LANGID_ARMENIAN_ARMENIA                  0x042b
-#define TT_MS_LANGID_AZERI_AZERBAIJAN_LATIN            0x042c
-#define TT_MS_LANGID_AZERI_AZERBAIJAN_CYRILLIC         0x082c
-#define TT_MS_LANGID_BASQUE_SPAIN                      0x042d
-#define TT_MS_LANGID_SORBIAN_GERMANY                   0x042e
-#define TT_MS_LANGID_MACEDONIAN_MACEDONIA              0x042f
-#define TT_MS_LANGID_SUTU_SOUTH_AFRICA                 0x0430
-#define TT_MS_LANGID_TSONGA_SOUTH_AFRICA               0x0431
-#define TT_MS_LANGID_TSWANA_SOUTH_AFRICA               0x0432
-#define TT_MS_LANGID_VENDA_SOUTH_AFRICA                0x0433
-#define TT_MS_LANGID_XHOSA_SOUTH_AFRICA                0x0434
-#define TT_MS_LANGID_ZULU_SOUTH_AFRICA                 0x0435
-#define TT_MS_LANGID_AFRIKAANS_SOUTH_AFRICA            0x0436
-#define TT_MS_LANGID_GEORGIAN_GEORGIA                  0x0437
-#define TT_MS_LANGID_FAEROESE_FAEROE_ISLANDS           0x0438
-#define TT_MS_LANGID_HINDI_INDIA                       0x0439
-#define TT_MS_LANGID_MALTESE_MALTA                     0x043a
-  /* Added by XPsp2 Platform SDK (2004-07-26) */
-#define TT_MS_LANGID_SAMI_NORTHERN_NORWAY              0x043b
-#define TT_MS_LANGID_SAMI_NORTHERN_SWEDEN              0x083b
-#define TT_MS_LANGID_SAMI_NORTHERN_FINLAND             0x0C3b
-#define TT_MS_LANGID_SAMI_LULE_NORWAY                  0x103b
-#define TT_MS_LANGID_SAMI_LULE_SWEDEN                  0x143b
-#define TT_MS_LANGID_SAMI_SOUTHERN_NORWAY              0x183b
-#define TT_MS_LANGID_SAMI_SOUTHERN_SWEDEN              0x1C3b
-#define TT_MS_LANGID_SAMI_SKOLT_FINLAND                0x203b
-#define TT_MS_LANGID_SAMI_INARI_FINLAND                0x243b
-  /* ... and we also keep our old identifier... */
-#define TT_MS_LANGID_SAAMI_LAPONIA                     0x043b
-
-#if 0 /* this seems to be a previous invertion */
-#define TT_MS_LANGID_IRISH_GAELIC_IRELAND              0x043c
-#define TT_MS_LANGID_SCOTTISH_GAELIC_UNITED_KINGDOM    0x083c
-#else
-#define TT_MS_LANGID_SCOTTISH_GAELIC_UNITED_KINGDOM    0x083c
-#define TT_MS_LANGID_IRISH_GAELIC_IRELAND              0x043c
-#endif
-
-#define TT_MS_LANGID_YIDDISH_GERMANY                   0x043d
-#define TT_MS_LANGID_MALAY_MALAYSIA                    0x043e
-#define TT_MS_LANGID_MALAY_BRUNEI_DARUSSALAM           0x083e
-#define TT_MS_LANGID_KAZAK_KAZAKSTAN                   0x043f
-#define TT_MS_LANGID_KIRGHIZ_KIRGHIZSTAN /* Cyrillic*/ 0x0440
-  /* alias declared in Windows 2000 */
-#define TT_MS_LANGID_KIRGHIZ_KIRGHIZ_REPUBLIC \
-          TT_MS_LANGID_KIRGHIZ_KIRGHIZSTAN
-
-#define TT_MS_LANGID_SWAHILI_KENYA                     0x0441
-#define TT_MS_LANGID_TURKMEN_TURKMENISTAN              0x0442
-#define TT_MS_LANGID_UZBEK_UZBEKISTAN_LATIN            0x0443
-#define TT_MS_LANGID_UZBEK_UZBEKISTAN_CYRILLIC         0x0843
-#define TT_MS_LANGID_TATAR_TATARSTAN                   0x0444
-#define TT_MS_LANGID_BENGALI_INDIA                     0x0445
-#define TT_MS_LANGID_BENGALI_BANGLADESH                0x0845
-#define TT_MS_LANGID_PUNJABI_INDIA                     0x0446
-#define TT_MS_LANGID_PUNJABI_ARABIC_PAKISTAN           0x0846
-#define TT_MS_LANGID_GUJARATI_INDIA                    0x0447
-#define TT_MS_LANGID_ORIYA_INDIA                       0x0448
-#define TT_MS_LANGID_TAMIL_INDIA                       0x0449
-#define TT_MS_LANGID_TELUGU_INDIA                      0x044a
-#define TT_MS_LANGID_KANNADA_INDIA                     0x044b
-#define TT_MS_LANGID_MALAYALAM_INDIA                   0x044c
-#define TT_MS_LANGID_ASSAMESE_INDIA                    0x044d
-#define TT_MS_LANGID_MARATHI_INDIA                     0x044e
-#define TT_MS_LANGID_SANSKRIT_INDIA                    0x044f
-#define TT_MS_LANGID_MONGOLIAN_MONGOLIA /* Cyrillic */ 0x0450
-#define TT_MS_LANGID_MONGOLIAN_MONGOLIA_MONGOLIAN      0x0850
-#define TT_MS_LANGID_TIBETAN_CHINA                     0x0451
-#define TT_MS_LANGID_DZONGHKA_BHUTAN                   0x0851
-
-#if 0
-  /* the following used to be defined */
-#define TT_MS_LANGID_TIBETAN_BHUTAN                    0x0451
-  /* ... but it was changed; */
-#else
-  /* So we will continue to #define it, but with the correct value */
-#define TT_MS_LANGID_TIBETAN_BHUTAN   TT_MS_LANGID_DZONGHKA_BHUTAN
-#endif
-
-#define TT_MS_LANGID_WELSH_WALES                       0x0452
-#define TT_MS_LANGID_KHMER_CAMBODIA                    0x0453
-#define TT_MS_LANGID_LAO_LAOS                          0x0454
-#define TT_MS_LANGID_BURMESE_MYANMAR                   0x0455
-#define TT_MS_LANGID_GALICIAN_SPAIN                    0x0456
-#define TT_MS_LANGID_KONKANI_INDIA                     0x0457
-#define TT_MS_LANGID_MANIPURI_INDIA  /* Bengali */     0x0458
-#define TT_MS_LANGID_SINDHI_INDIA /* Arabic */         0x0459
-#define TT_MS_LANGID_SINDHI_PAKISTAN                   0x0859
-  /* Missing a LCID for Sindhi in Devanagari script */
-#define TT_MS_LANGID_SYRIAC_SYRIA                      0x045a
-#define TT_MS_LANGID_SINHALESE_SRI_LANKA               0x045b
-#define TT_MS_LANGID_CHEROKEE_UNITED_STATES            0x045c
-#define TT_MS_LANGID_INUKTITUT_CANADA                  0x045d
-#define TT_MS_LANGID_AMHARIC_ETHIOPIA                  0x045e
-#define TT_MS_LANGID_TAMAZIGHT_MOROCCO /* Arabic */    0x045f
-#define TT_MS_LANGID_TAMAZIGHT_MOROCCO_LATIN           0x085f
-  /* Missing a LCID for Tifinagh script */
-#define TT_MS_LANGID_KASHMIRI_PAKISTAN /* Arabic */    0x0460
-  /* Spelled this way by XPsp2 Platform SDK (2004-07-26) */
-  /* script is yet unclear... might be Arabic, Nagari or Sharada */
-#define TT_MS_LANGID_KASHMIRI_SASIA                    0x0860
-  /* ... and aliased (by MS) for compatibility reasons. */
-#define TT_MS_LANGID_KASHMIRI_INDIA TT_MS_LANGID_KASHMIRI_SASIA
-#define TT_MS_LANGID_NEPALI_NEPAL                      0x0461
-#define TT_MS_LANGID_NEPALI_INDIA                      0x0861
-#define TT_MS_LANGID_FRISIAN_NETHERLANDS               0x0462
-#define TT_MS_LANGID_PASHTO_AFGHANISTAN                0x0463
-#define TT_MS_LANGID_FILIPINO_PHILIPPINES              0x0464
-#define TT_MS_LANGID_DHIVEHI_MALDIVES                  0x0465
-  /* alias declared in Windows 2000 */
-#define TT_MS_LANGID_DIVEHI_MALDIVES  TT_MS_LANGID_DHIVEHI_MALDIVES
-#define TT_MS_LANGID_EDO_NIGERIA                       0x0466
-#define TT_MS_LANGID_FULFULDE_NIGERIA                  0x0467
-#define TT_MS_LANGID_HAUSA_NIGERIA                     0x0468
-#define TT_MS_LANGID_IBIBIO_NIGERIA                    0x0469
-#define TT_MS_LANGID_YORUBA_NIGERIA                    0x046a
-#define TT_MS_LANGID_QUECHUA_BOLIVIA                   0x046b
-#define TT_MS_LANGID_QUECHUA_ECUADOR                   0x086b
-#define TT_MS_LANGID_QUECHUA_PERU                      0x0c6b
-#define TT_MS_LANGID_SEPEDI_SOUTH_AFRICA               0x046c
-  /* Also spelled by XPsp2 Platform SDK (2004-07-26) */
-#define TT_MS_LANGID_SOTHO_SOUTHERN_SOUTH_AFRICA \
-          TT_MS_LANGID_SEPEDI_SOUTH_AFRICA
-  /* language codes 0x046d, 0x046e and 0x046f are (still) unknown. */
-#define TT_MS_LANGID_IGBO_NIGERIA                      0x0470
-#define TT_MS_LANGID_KANURI_NIGERIA                    0x0471
-#define TT_MS_LANGID_OROMO_ETHIOPIA                    0x0472
-#define TT_MS_LANGID_TIGRIGNA_ETHIOPIA                 0x0473
-#define TT_MS_LANGID_TIGRIGNA_ERYTHREA                 0x0873
-  /* also spelled in the `Passport SDK' list as: */
-#define TT_MS_LANGID_TIGRIGNA_ERYTREA  TT_MS_LANGID_TIGRIGNA_ERYTHREA
-#define TT_MS_LANGID_GUARANI_PARAGUAY                  0x0474
-#define TT_MS_LANGID_HAWAIIAN_UNITED_STATES            0x0475
-#define TT_MS_LANGID_LATIN                             0x0476
-#define TT_MS_LANGID_SOMALI_SOMALIA                    0x0477
-  /* Note: Yi does not have a (proper) ISO 639-2 code, since it is mostly */
-  /*       not written (but OTOH the peculiar writing system is worth     */
-  /*       studying).                                                     */
-#define TT_MS_LANGID_YI_CHINA                          0x0478
-#define TT_MS_LANGID_PAPIAMENTU_NETHERLANDS_ANTILLES   0x0479
-  /* language codes from 0x047a to 0x047f are (still) unknown. */
-#define TT_MS_LANGID_UIGHUR_CHINA                      0x0480
-#define TT_MS_LANGID_MAORI_NEW_ZEALAND                 0x0481
-
-#if 0  /* not deemed useful for fonts */
-#define TT_MS_LANGID_HUMAN_INTERFACE_DEVICE            0x04ff
-#endif
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Possible values of the `name' identifier field in the name records of */
-  /* the TTF `name' table.  These values are platform independent.         */
-  /*                                                                       */
-#define TT_NAME_ID_COPYRIGHT            0
-#define TT_NAME_ID_FONT_FAMILY          1
-#define TT_NAME_ID_FONT_SUBFAMILY       2
-#define TT_NAME_ID_UNIQUE_ID            3
-#define TT_NAME_ID_FULL_NAME            4
-#define TT_NAME_ID_VERSION_STRING       5
-#define TT_NAME_ID_PS_NAME              6
-#define TT_NAME_ID_TRADEMARK            7
-
-  /* the following values are from the OpenType spec */
-#define TT_NAME_ID_MANUFACTURER         8
-#define TT_NAME_ID_DESIGNER             9
-#define TT_NAME_ID_DESCRIPTION          10
-#define TT_NAME_ID_VENDOR_URL           11
-#define TT_NAME_ID_DESIGNER_URL         12
-#define TT_NAME_ID_LICENSE              13
-#define TT_NAME_ID_LICENSE_URL          14
-  /* number 15 is reserved */
-#define TT_NAME_ID_PREFERRED_FAMILY     16
-#define TT_NAME_ID_PREFERRED_SUBFAMILY  17
-#define TT_NAME_ID_MAC_FULL_NAME        18
-
-  /* The following code is new as of 2000-01-21 */
-#define TT_NAME_ID_SAMPLE_TEXT          19
-
-  /* This is new in OpenType 1.3 */
-#define TT_NAME_ID_CID_FINDFONT_NAME    20
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Bit mask values for the Unicode Ranges from the TTF `OS2 ' table.     */
-  /*                                                                       */
-  /* Updated 02-Jul-2000.                                                  */
-  /*                                                                       */
-
-  /* General Scripts Area */
-
-  /* Bit  0   Basic Latin */
-#define TT_UCR_BASIC_LATIN                     (1L <<  0) /* U+0020-U+007E */
-  /* Bit  1   C1 Controls and Latin-1 Supplement */
-#define TT_UCR_LATIN1_SUPPLEMENT               (1L <<  1) /* U+0080-U+00FF */
-  /* Bit  2   Latin Extended-A */
-#define TT_UCR_LATIN_EXTENDED_A                (1L <<  2) /* U+0100-U+017F */
-  /* Bit  3   Latin Extended-B */
-#define TT_UCR_LATIN_EXTENDED_B                (1L <<  3) /* U+0180-U+024F */
-  /* Bit  4   IPA Extensions */
-#define TT_UCR_IPA_EXTENSIONS                  (1L <<  4) /* U+0250-U+02AF */
-  /* Bit  5   Spacing Modifier Letters */
-#define TT_UCR_SPACING_MODIFIER                (1L <<  5) /* U+02B0-U+02FF */
-  /* Bit  6   Combining Diacritical Marks */
-#define TT_UCR_COMBINING_DIACRITICS            (1L <<  6) /* U+0300-U+036F */
-  /* Bit  7   Greek and Coptic */
-#define TT_UCR_GREEK                           (1L <<  7) /* U+0370-U+03FF */
-  /* Bit  8 is reserved (was: Greek Symbols and Coptic) */
-  /* Bit  9   Cyrillic               + */
-  /*          Cyrillic Supplementary   */
-#define TT_UCR_CYRILLIC                        (1L <<  9) /* U+0400-U+04FF */
-                                                          /* U+0500-U+052F */
-  /* Bit 10   Armenian */
-#define TT_UCR_ARMENIAN                        (1L << 10) /* U+0530-U+058F */
-  /* Bit 11   Hebrew */
-#define TT_UCR_HEBREW                          (1L << 11) /* U+0590-U+05FF */
-  /* Bit 12 is reserved (was: Hebrew Extended) */
-  /* Bit 13   Arabic */
-#define TT_UCR_ARABIC                          (1L << 13) /* U+0600-U+06FF */
-  /* Bit 14 is reserved (was: Arabic Extended) */
-  /* Bit 15   Devanagari */
-#define TT_UCR_DEVANAGARI                      (1L << 15) /* U+0900-U+097F */
-  /* Bit 16   Bengali */
-#define TT_UCR_BENGALI                         (1L << 16) /* U+0980-U+09FF */
-  /* Bit 17   Gurmukhi */
-#define TT_UCR_GURMUKHI                        (1L << 17) /* U+0A00-U+0A7F */
-  /* Bit 18   Gujarati */
-#define TT_UCR_GUJARATI                        (1L << 18) /* U+0A80-U+0AFF */
-  /* Bit 19   Oriya */
-#define TT_UCR_ORIYA                           (1L << 19) /* U+0B00-U+0B7F */
-  /* Bit 20   Tamil */
-#define TT_UCR_TAMIL                           (1L << 20) /* U+0B80-U+0BFF */
-  /* Bit 21   Telugu */
-#define TT_UCR_TELUGU                          (1L << 21) /* U+0C00-U+0C7F */
-  /* Bit 22   Kannada */
-#define TT_UCR_KANNADA                         (1L << 22) /* U+0C80-U+0CFF */
-  /* Bit 23   Malayalam */
-#define TT_UCR_MALAYALAM                       (1L << 23) /* U+0D00-U+0D7F */
-  /* Bit 24   Thai */
-#define TT_UCR_THAI                            (1L << 24) /* U+0E00-U+0E7F */
-  /* Bit 25   Lao */
-#define TT_UCR_LAO                             (1L << 25) /* U+0E80-U+0EFF */
-  /* Bit 26   Georgian */
-#define TT_UCR_GEORGIAN                        (1L << 26) /* U+10A0-U+10FF */
-  /* Bit 27 is reserved (was Georgian Extended) */
-  /* Bit 28   Hangul Jamo */
-#define TT_UCR_HANGUL_JAMO                     (1L << 28) /* U+1100-U+11FF */
-  /* Bit 29   Latin Extended Additional */
-#define TT_UCR_LATIN_EXTENDED_ADDITIONAL       (1L << 29) /* U+1E00-U+1EFF */
-  /* Bit 30   Greek Extended */
-#define TT_UCR_GREEK_EXTENDED                  (1L << 30) /* U+1F00-U+1FFF */
-
-  /* Symbols Area */
-
-  /* Bit 31   General Punctuation */
-#define TT_UCR_GENERAL_PUNCTUATION             (1L << 31) /* U+2000-U+206F */
-  /* Bit 32   Superscripts And Subscripts */
-#define TT_UCR_SUPERSCRIPTS_SUBSCRIPTS         (1L <<  0) /* U+2070-U+209F */
-  /* Bit 33   Currency Symbols */
-#define TT_UCR_CURRENCY_SYMBOLS                (1L <<  1) /* U+20A0-U+20CF */
-  /* Bit 34   Combining Diacritical Marks For Symbols */
-#define TT_UCR_COMBINING_DIACRITICS_SYMB       (1L <<  2) /* U+20D0-U+20FF */
-  /* Bit 35   Letterlike Symbols */
-#define TT_UCR_LETTERLIKE_SYMBOLS              (1L <<  3) /* U+2100-U+214F */
-  /* Bit 36   Number Forms */
-#define TT_UCR_NUMBER_FORMS                    (1L <<  4) /* U+2150-U+218F */
-  /* Bit 37   Arrows                + */
-  /*          Supplemental Arrows-A + */
-  /*          Supplemental Arrows-B   */
-#define TT_UCR_ARROWS                          (1L <<  5) /* U+2190-U+21FF */
-                                                          /* U+27F0-U+27FF */
-                                                          /* U+2900-U+297F */
-  /* Bit 38   Mathematical Operators               + */
-  /*          Supplemental Mathematical Operators  + */
-  /*          Miscellaneous Mathematical Symbols-A + */
-  /*          Miscellaneous Mathematical Symbols-B   */
-#define TT_UCR_MATHEMATICAL_OPERATORS          (1L <<  6) /* U+2200-U+22FF */
-                                                          /* U+2A00-U+2AFF */
-                                                          /* U+27C0-U+27EF */
-                                                          /* U+2980-U+29FF */
-  /* Bit 39 Miscellaneous Technical */
-#define TT_UCR_MISCELLANEOUS_TECHNICAL         (1L <<  7) /* U+2300-U+23FF */
-  /* Bit 40   Control Pictures */
-#define TT_UCR_CONTROL_PICTURES                (1L <<  8) /* U+2400-U+243F */
-  /* Bit 41   Optical Character Recognition */
-#define TT_UCR_OCR                             (1L <<  9) /* U+2440-U+245F */
-  /* Bit 42   Enclosed Alphanumerics */
-#define TT_UCR_ENCLOSED_ALPHANUMERICS          (1L << 10) /* U+2460-U+24FF */
-  /* Bit 43   Box Drawing */
-#define TT_UCR_BOX_DRAWING                     (1L << 11) /* U+2500-U+257F */
-  /* Bit 44   Block Elements */
-#define TT_UCR_BLOCK_ELEMENTS                  (1L << 12) /* U+2580-U+259F */
-  /* Bit 45   Geometric Shapes */
-#define TT_UCR_GEOMETRIC_SHAPES                (1L << 13) /* U+25A0-U+25FF */
-  /* Bit 46   Miscellaneous Symbols */
-#define TT_UCR_MISCELLANEOUS_SYMBOLS           (1L << 14) /* U+2600-U+26FF */
-  /* Bit 47   Dingbats */
-#define TT_UCR_DINGBATS                        (1L << 15) /* U+2700-U+27BF */
-
-  /* CJK Phonetics and Symbols Area */
-
-  /* Bit 48   CJK Symbols and Punctuation */
-#define TT_UCR_CJK_SYMBOLS                     (1L << 16) /* U+3000-U+303F */
-  /* Bit 49   Hiragana */
-#define TT_UCR_HIRAGANA                        (1L << 17) /* U+3040-U+309F */
-  /* Bit 50   Katakana                     + */
-  /*          Katakana Phonetic Extensions   */
-#define TT_UCR_KATAKANA                        (1L << 18) /* U+30A0-U+30FF */
-                                                          /* U+31F0-U+31FF */
-  /* Bit 51   Bopomofo          + */
-  /*          Bopomofo Extended   */
-#define TT_UCR_BOPOMOFO                        (1L << 19) /* U+3100-U+312F */
-                                                          /* U+31A0-U+31BF */
-  /* Bit 52   Hangul Compatibility Jamo */
-#define TT_UCR_HANGUL_COMPATIBILITY_JAMO       (1L << 20) /* U+3130-U+318F */
-  /* Bit 53   Kanbun */
-#define TT_UCR_CJK_MISC                        (1L << 21) /* U+3190-U+319F */
-#define TT_UCR_KANBUN  TT_UCR_CJK_MISC
-  /* Bit 54   Enclosed CJK Letters and Months */
-#define TT_UCR_ENCLOSED_CJK_LETTERS_MONTHS     (1L << 22) /* U+3200-U+32FF */
-  /* Bit 55   CJK Compatibility */
-#define TT_UCR_CJK_COMPATIBILITY               (1L << 23) /* U+3300-U+33FF */
-
-  /* Hangul Syllables Area */
-
-  /* Bit 56   Hangul */
-#define TT_UCR_HANGUL                          (1L << 24) /* U+AC00-U+D7A3 */
-
-  /* Surrogates Area */
-
-  /* Bit 57   High Surrogates             + */
-  /*          High Private Use Surrogates + */
-  /*          Low Surrogates                */
-#define TT_UCR_SURROGATES                      (1L << 25) /* U+D800-U+DB7F */
-                                                          /* U+DB80-U+DBFF */
-                                                          /* U+DC00-U+DFFF */
-  /* According to OpenType specs v.1.3+, setting bit 57 implies that there */
-  /* is at least one codepoint beyond the Basic Multilingual Plane that is */
-  /* supported by this font.  So it really means:            >= U+10000    */
-
-  /* Bit 58 is reserved for Unicode SubRanges */
-
-  /* CJK Ideographs Area */
-
-  /* Bit 59   CJK Unified Ideographs             + */
-  /*          CJK Radicals Supplement            + */
-  /*          Kangxi Radicals                    + */
-  /*          Ideographic Description Characters + */
-  /*          CJK Unified Ideographs Extension A   */
-  /*          CJK Unified Ideographs Extension A + */
-  /*          CJK Unified Ideographs Extension B + */
-  /*          Kanbun                               */
-#define TT_UCR_CJK_UNIFIED_IDEOGRAPHS          (1L << 27) /* U+4E00-U+9FFF */
-                                                          /* U+2E80-U+2EFF */
-                                                          /* U+2F00-U+2FDF */
-                                                          /* U+2FF0-U+2FFF */
-                                                          /* U+3400-U+4DB5 */
-                                                          /*U+20000-U+2A6DF*/
-                                                          /* U+3190-U+319F */
-
-  /* Private Use Area */
-
-  /* Bit 60   Private Use */
-#define TT_UCR_PRIVATE_USE                     (1L << 28) /* U+E000-U+F8FF */
-
-  /* Compatibility Area and Specials */
-
-  /* Bit 61   CJK Compatibility Ideographs            + */
-  /*          CJK Compatibility Ideographs Supplement   */
-#define TT_UCR_CJK_COMPATIBILITY_IDEOGRAPHS    (1L << 29) /* U+F900-U+FAFF */
-                                                          /*U+2F800-U+2FA1F*/
-  /* Bit 62   Alphabetic Presentation Forms */
-#define TT_UCR_ALPHABETIC_PRESENTATION_FORMS   (1L << 30) /* U+FB00-U+FB4F */
-  /* Bit 63   Arabic Presentation Forms-A */
-#define TT_UCR_ARABIC_PRESENTATIONS_A          (1L << 31) /* U+FB50-U+FDFF */
-  /* Bit 64   Combining Half Marks */
-#define TT_UCR_COMBINING_HALF_MARKS            (1L <<  0) /* U+FE20-U+FE2F */
-  /* Bit 65   CJK Compatibility Forms */
-#define TT_UCR_CJK_COMPATIBILITY_FORMS         (1L <<  1) /* U+FE30-U+FE4F */
-  /* Bit 66   Small Form Variants */
-#define TT_UCR_SMALL_FORM_VARIANTS             (1L <<  2) /* U+FE50-U+FE6F */
-  /* Bit 67   Arabic Presentation Forms-B */
-#define TT_UCR_ARABIC_PRESENTATIONS_B          (1L <<  3) /* U+FE70-U+FEFE */
-  /* Bit 68   Halfwidth and Fullwidth Forms */
-#define TT_UCR_HALFWIDTH_FULLWIDTH_FORMS       (1L <<  4) /* U+FF00-U+FFEF */
-  /* Bit 69   Specials */
-#define TT_UCR_SPECIALS                        (1L <<  5) /* U+FFF0-U+FFFD */
-  /* Bit 70   Tibetan */
-#define TT_UCR_TIBETAN                         (1L <<  6) /* U+0F00-U+0FFF */
-  /* Bit 71   Syriac */
-#define TT_UCR_SYRIAC                          (1L <<  7) /* U+0700-U+074F */
-  /* Bit 72   Thaana */
-#define TT_UCR_THAANA                          (1L <<  8) /* U+0780-U+07BF */
-  /* Bit 73   Sinhala */
-#define TT_UCR_SINHALA                         (1L <<  9) /* U+0D80-U+0DFF */
-  /* Bit 74   Myanmar */
-#define TT_UCR_MYANMAR                         (1L << 10) /* U+1000-U+109F */
-  /* Bit 75   Ethiopic */
-#define TT_UCR_ETHIOPIC                        (1L << 11) /* U+1200-U+137F */
-  /* Bit 76   Cherokee */
-#define TT_UCR_CHEROKEE                        (1L << 12) /* U+13A0-U+13FF */
-  /* Bit 77   Unified Canadian Aboriginal Syllabics */
-#define TT_UCR_CANADIAN_ABORIGINAL_SYLLABICS   (1L << 13) /* U+1400-U+167F */
-  /* Bit 78   Ogham */
-#define TT_UCR_OGHAM                           (1L << 14) /* U+1680-U+169F */
-  /* Bit 79   Runic */
-#define TT_UCR_RUNIC                           (1L << 15) /* U+16A0-U+16FF */
-  /* Bit 80   Khmer */
-#define TT_UCR_KHMER                           (1L << 16) /* U+1780-U+17FF */
-  /* Bit 81   Mongolian */
-#define TT_UCR_MONGOLIAN                       (1L << 17) /* U+1800-U+18AF */
-  /* Bit 82   Braille Patterns */
-#define TT_UCR_BRAILLE                         (1L << 18) /* U+2800-U+28FF */
-  /* Bit 83   Yi Syllables + */
-  /*          Yi Radicals    */
-#define TT_UCR_YI                              (1L << 19) /* U+A000-U+A48F */
-                                                          /* U+A490-U+A4CF */
-  /* Bit 84   Tagalog  + */
-  /*          Hanunoo  + */
-  /*          Buhid    + */
-  /*          Tagbanwa   */
-#define TT_UCR_PHILIPPINE                      (1L << 20) /* U+1700-U+171F */
-                                                          /* U+1720-U+173F */
-                                                          /* U+1740-U+175F */
-                                                          /* U+1760-U+177F */
-  /* Bit 85   Old Italic */
-#define TT_UCR_OLD_ITALIC                      (1L << 21) /*U+10300-U+1032F*/
-  /* Bit 86   Gothic */
-#define TT_UCR_GOTHIC                          (1L << 22) /*U+10330-U+1034F*/
-  /* Bit 87   Deseret */
-#define TT_UCR_DESERET                         (1L << 23) /*U+10400-U+1044F*/
-  /* Bit 88   Byzantine Musical Symbols + */
-  /*          Musical Symbols             */
-#define TT_UCR_MUSICAL_SYMBOLS                 (1L << 24) /*U+1D000-U+1D0FF*/
-                                                          /*U+1D100-U+1D1FF*/
-  /* Bit 89   Mathematical Alphanumeric Symbols */
-#define TT_UCR_MATH_ALPHANUMERIC_SYMBOLS       (1L << 25) /*U+1D400-U+1D7FF*/
-  /* Bit 90   Private Use (plane 15) + */
-  /*          Private Use (plane 16)   */
-#define TT_UCR_PRIVATE_USE_SUPPLEMENTARY       (1L << 26) /*U+F0000-U+FFFFD*/
-                                                        /*U+100000-U+10FFFD*/
-  /* Bit 91   Variation Selectors */
-#define TT_UCR_VARIATION_SELECTORS             (1L << 27) /* U+FE00-U+FE0F */
-  /* Bit 92   Tags */
-#define TT_UCR_TAGS                            (1L << 28) /*U+E0000-U+E007F*/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Some compilers have a very limited length of identifiers.             */
-  /*                                                                       */
-#if defined( __TURBOC__ ) && __TURBOC__ < 0x0410 || defined( __PACIFIC__ )
-#define HAVE_LIMIT_ON_IDENTS
-#endif
-
-
-#ifndef HAVE_LIMIT_ON_IDENTS
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Here some alias #defines in order to be clearer.                      */
-  /*                                                                       */
-  /* These are not always #defined to stay within the 31 character limit   */
-  /* which some compilers have.                                            */
-  /*                                                                       */
-  /* Credits go to Dave Hoo <dhoo@flash.net> for pointing out that modern  */
-  /* Borland compilers (read: from BC++ 3.1 on) can increase this limit.   */
-  /* If you get a warning with such a compiler, use the -i40 switch.       */
-  /*                                                                       */
-#define TT_UCR_ARABIC_PRESENTATION_FORMS_A      \
-         TT_UCR_ARABIC_PRESENTATIONS_A
-#define TT_UCR_ARABIC_PRESENTATION_FORMS_B      \
-         TT_UCR_ARABIC_PRESENTATIONS_B
-
-#define TT_UCR_COMBINING_DIACRITICAL_MARKS      \
-         TT_UCR_COMBINING_DIACRITICS
-#define TT_UCR_COMBINING_DIACRITICAL_MARKS_SYMB \
-         TT_UCR_COMBINING_DIACRITICS_SYMB
-
-
-#endif /* !HAVE_LIMIT_ON_IDENTS */
-
-
-FT_END_HEADER
-
-#endif /* __TTNAMEID_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/tttables.h b/dependencies64/sfml/extlibs/headers/freetype/tttables.h
deleted file mode 100644 (file)
index 051c1ea..0000000
+++ /dev/null
@@ -1,731 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  tttables.h                                                             */
-/*                                                                         */
-/*    Basic SFNT/TrueType tables definitions and interface                 */
-/*    (specification only).                                                */
-/*                                                                         */
-/*  Copyright 1996-2001, 2002, 2003, 2004 by                               */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __TTTABLES_H__
-#define __TTTABLES_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    truetype_tables                                                    */
-  /*                                                                       */
-  /* <Title>                                                               */
-  /*    TrueType Tables                                                    */
-  /*                                                                       */
-  /* <Abstract>                                                            */
-  /*    TrueType specific table types and functions.                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This section contains the definition of TrueType-specific tables   */
-  /*    as well as some routines used to access and process them.          */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_Header                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a TrueType font header table.  All       */
-  /*    fields follow the TrueType specification.                          */
-  /*                                                                       */
-  typedef struct  TT_Header_
-  {
-    FT_Fixed   Table_Version;
-    FT_Fixed   Font_Revision;
-
-    FT_Long    CheckSum_Adjust;
-    FT_Long    Magic_Number;
-
-    FT_UShort  Flags;
-    FT_UShort  Units_Per_EM;
-
-    FT_Long    Created [2];
-    FT_Long    Modified[2];
-
-    FT_Short   xMin;
-    FT_Short   yMin;
-    FT_Short   xMax;
-    FT_Short   yMax;
-
-    FT_UShort  Mac_Style;
-    FT_UShort  Lowest_Rec_PPEM;
-
-    FT_Short   Font_Direction;
-    FT_Short   Index_To_Loc_Format;
-    FT_Short   Glyph_Data_Format;
-
-  } TT_Header;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_HoriHeader                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a TrueType horizontal header, the `hhea' */
-  /*    table, as well as the corresponding horizontal metrics table,      */
-  /*    i.e., the `hmtx' table.                                            */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    Version                :: The table version.                       */
-  /*                                                                       */
-  /*    Ascender               :: The font's ascender, i.e., the distance  */
-  /*                              from the baseline to the top-most of all */
-  /*                              glyph points found in the font.          */
-  /*                                                                       */
-  /*                              This value is invalid in many fonts, as  */
-  /*                              it is usually set by the font designer,  */
-  /*                              and often reflects only a portion of the */
-  /*                              glyphs found in the font (maybe ASCII).  */
-  /*                                                                       */
-  /*                              You should use the `sTypoAscender' field */
-  /*                              of the OS/2 table instead if you want    */
-  /*                              the correct one.                         */
-  /*                                                                       */
-  /*    Descender              :: The font's descender, i.e., the distance */
-  /*                              from the baseline to the bottom-most of  */
-  /*                              all glyph points found in the font.  It  */
-  /*                              is negative.                             */
-  /*                                                                       */
-  /*                              This value is invalid in many fonts, as  */
-  /*                              it is usually set by the font designer,  */
-  /*                              and often reflects only a portion of the */
-  /*                              glyphs found in the font (maybe ASCII).  */
-  /*                                                                       */
-  /*                              You should use the `sTypoDescender'      */
-  /*                              field of the OS/2 table instead if you   */
-  /*                              want the correct one.                    */
-  /*                                                                       */
-  /*    Line_Gap               :: The font's line gap, i.e., the distance  */
-  /*                              to add to the ascender and descender to  */
-  /*                              get the BTB, i.e., the                   */
-  /*                              baseline-to-baseline distance for the    */
-  /*                              font.                                    */
-  /*                                                                       */
-  /*    advance_Width_Max      :: This field is the maximum of all advance */
-  /*                              widths found in the font.  It can be     */
-  /*                              used to compute the maximum width of an  */
-  /*                              arbitrary string of text.                */
-  /*                                                                       */
-  /*    min_Left_Side_Bearing  :: The minimum left side bearing of all     */
-  /*                              glyphs within the font.                  */
-  /*                                                                       */
-  /*    min_Right_Side_Bearing :: The minimum right side bearing of all    */
-  /*                              glyphs within the font.                  */
-  /*                                                                       */
-  /*    xMax_Extent            :: The maximum horizontal extent (i.e., the */
-  /*                              `width' of a glyph's bounding box) for   */
-  /*                              all glyphs in the font.                  */
-  /*                                                                       */
-  /*    caret_Slope_Rise       :: The rise coefficient of the cursor's     */
-  /*                              slope of the cursor (slope=rise/run).    */
-  /*                                                                       */
-  /*    caret_Slope_Run        :: The run coefficient of the cursor's      */
-  /*                              slope.                                   */
-  /*                                                                       */
-  /*    Reserved               :: 10 reserved bytes.                       */
-  /*                                                                       */
-  /*    metric_Data_Format     :: Always 0.                                */
-  /*                                                                       */
-  /*    number_Of_HMetrics     :: Number of HMetrics entries in the `hmtx' */
-  /*                              table -- this value can be smaller than  */
-  /*                              the total number of glyphs in the font.  */
-  /*                                                                       */
-  /*    long_metrics           :: A pointer into the `hmtx' table.         */
-  /*                                                                       */
-  /*    short_metrics          :: A pointer into the `hmtx' table.         */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    IMPORTANT: The TT_HoriHeader and TT_VertHeader structures should   */
-  /*               be identical except for the names of their fields which */
-  /*               are different.                                          */
-  /*                                                                       */
-  /*               This ensures that a single function in the `ttload'     */
-  /*               module is able to read both the horizontal and vertical */
-  /*               headers.                                                */
-  /*                                                                       */
-  typedef struct  TT_HoriHeader_
-  {
-    FT_Fixed   Version;
-    FT_Short   Ascender;
-    FT_Short   Descender;
-    FT_Short   Line_Gap;
-
-    FT_UShort  advance_Width_Max;      /* advance width maximum */
-
-    FT_Short   min_Left_Side_Bearing;  /* minimum left-sb       */
-    FT_Short   min_Right_Side_Bearing; /* minimum right-sb      */
-    FT_Short   xMax_Extent;            /* xmax extents          */
-    FT_Short   caret_Slope_Rise;
-    FT_Short   caret_Slope_Run;
-    FT_Short   caret_Offset;
-
-    FT_Short   Reserved[4];
-
-    FT_Short   metric_Data_Format;
-    FT_UShort  number_Of_HMetrics;
-
-    /* The following fields are not defined by the TrueType specification */
-    /* but they are used to connect the metrics header to the relevant    */
-    /* `HMTX' table.                                                      */
-
-    void*      long_metrics;
-    void*      short_metrics;
-
-  } TT_HoriHeader;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_VertHeader                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a TrueType vertical header, the `vhea'   */
-  /*    table, as well as the corresponding vertical metrics table, i.e.,  */
-  /*    the `vmtx' table.                                                  */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    Version                 :: The table version.                      */
-  /*                                                                       */
-  /*    Ascender                :: The font's ascender, i.e., the distance */
-  /*                               from the baseline to the top-most of    */
-  /*                               all glyph points found in the font.     */
-  /*                                                                       */
-  /*                               This value is invalid in many fonts, as */
-  /*                               it is usually set by the font designer, */
-  /*                               and often reflects only a portion of    */
-  /*                               the glyphs found in the font (maybe     */
-  /*                               ASCII).                                 */
-  /*                                                                       */
-  /*                               You should use the `sTypoAscender'      */
-  /*                               field of the OS/2 table instead if you  */
-  /*                               want the correct one.                   */
-  /*                                                                       */
-  /*    Descender               :: The font's descender, i.e., the         */
-  /*                               distance from the baseline to the       */
-  /*                               bottom-most of all glyph points found   */
-  /*                               in the font.  It is negative.           */
-  /*                                                                       */
-  /*                               This value is invalid in many fonts, as */
-  /*                               it is usually set by the font designer, */
-  /*                               and often reflects only a portion of    */
-  /*                               the glyphs found in the font (maybe     */
-  /*                               ASCII).                                 */
-  /*                                                                       */
-  /*                               You should use the `sTypoDescender'     */
-  /*                               field of the OS/2 table instead if you  */
-  /*                               want the correct one.                   */
-  /*                                                                       */
-  /*    Line_Gap                :: The font's line gap, i.e., the distance */
-  /*                               to add to the ascender and descender to */
-  /*                               get the BTB, i.e., the                  */
-  /*                               baseline-to-baseline distance for the   */
-  /*                               font.                                   */
-  /*                                                                       */
-  /*    advance_Height_Max      :: This field is the maximum of all        */
-  /*                               advance heights found in the font.  It  */
-  /*                               can be used to compute the maximum      */
-  /*                               height of an arbitrary string of text.  */
-  /*                                                                       */
-  /*    min_Top_Side_Bearing    :: The minimum top side bearing of all     */
-  /*                               glyphs within the font.                 */
-  /*                                                                       */
-  /*    min_Bottom_Side_Bearing :: The minimum bottom side bearing of all  */
-  /*                               glyphs within the font.                 */
-  /*                                                                       */
-  /*    yMax_Extent             :: The maximum vertical extent (i.e., the  */
-  /*                               `height' of a glyph's bounding box) for */
-  /*                               all glyphs in the font.                 */
-  /*                                                                       */
-  /*    caret_Slope_Rise        :: The rise coefficient of the cursor's    */
-  /*                               slope of the cursor (slope=rise/run).   */
-  /*                                                                       */
-  /*    caret_Slope_Run         :: The run coefficient of the cursor's     */
-  /*                               slope.                                  */
-  /*                                                                       */
-  /*    caret_Offset            :: The cursor's offset for slanted fonts.  */
-  /*                               This value is `reserved' in vmtx        */
-  /*                               version 1.0.                            */
-  /*                                                                       */
-  /*    Reserved                :: 8 reserved bytes.                       */
-  /*                                                                       */
-  /*    metric_Data_Format      :: Always 0.                               */
-  /*                                                                       */
-  /*    number_Of_HMetrics      :: Number of VMetrics entries in the       */
-  /*                               `vmtx' table -- this value can be       */
-  /*                               smaller than the total number of glyphs */
-  /*                               in the font.                            */
-  /*                                                                       */
-  /*    long_metrics           :: A pointer into the `vmtx' table.         */
-  /*                                                                       */
-  /*    short_metrics          :: A pointer into the `vmtx' table.         */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    IMPORTANT: The TT_HoriHeader and TT_VertHeader structures should   */
-  /*               be identical except for the names of their fields which */
-  /*               are different.                                          */
-  /*                                                                       */
-  /*               This ensures that a single function in the `ttload'     */
-  /*               module is able to read both the horizontal and vertical */
-  /*               headers.                                                */
-  /*                                                                       */
-  typedef struct  TT_VertHeader_
-  {
-    FT_Fixed   Version;
-    FT_Short   Ascender;
-    FT_Short   Descender;
-    FT_Short   Line_Gap;
-
-    FT_UShort  advance_Height_Max;      /* advance height maximum */
-
-    FT_Short   min_Top_Side_Bearing;    /* minimum left-sb or top-sb       */
-    FT_Short   min_Bottom_Side_Bearing; /* minimum right-sb or bottom-sb   */
-    FT_Short   yMax_Extent;             /* xmax or ymax extents            */
-    FT_Short   caret_Slope_Rise;
-    FT_Short   caret_Slope_Run;
-    FT_Short   caret_Offset;
-
-    FT_Short   Reserved[4];
-
-    FT_Short   metric_Data_Format;
-    FT_UShort  number_Of_VMetrics;
-
-    /* The following fields are not defined by the TrueType specification */
-    /* but they're used to connect the metrics header to the relevant     */
-    /* `HMTX' or `VMTX' table.                                            */
-
-    void*      long_metrics;
-    void*      short_metrics;
-
-  } TT_VertHeader;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_OS2                                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a TrueType OS/2 table. This is the long  */
-  /*    table version.  All fields comply to the TrueType specification.   */
-  /*                                                                       */
-  /*    Note that we now support old Mac fonts which do not include an     */
-  /*    OS/2 table.  In this case, the `version' field is always set to    */
-  /*    0xFFFF.                                                            */
-  /*                                                                       */
-  typedef struct  TT_OS2_
-  {
-    FT_UShort  version;                /* 0x0001 - more or 0xFFFF */
-    FT_Short   xAvgCharWidth;
-    FT_UShort  usWeightClass;
-    FT_UShort  usWidthClass;
-    FT_Short   fsType;
-    FT_Short   ySubscriptXSize;
-    FT_Short   ySubscriptYSize;
-    FT_Short   ySubscriptXOffset;
-    FT_Short   ySubscriptYOffset;
-    FT_Short   ySuperscriptXSize;
-    FT_Short   ySuperscriptYSize;
-    FT_Short   ySuperscriptXOffset;
-    FT_Short   ySuperscriptYOffset;
-    FT_Short   yStrikeoutSize;
-    FT_Short   yStrikeoutPosition;
-    FT_Short   sFamilyClass;
-
-    FT_Byte    panose[10];
-
-    FT_ULong   ulUnicodeRange1;        /* Bits 0-31   */
-    FT_ULong   ulUnicodeRange2;        /* Bits 32-63  */
-    FT_ULong   ulUnicodeRange3;        /* Bits 64-95  */
-    FT_ULong   ulUnicodeRange4;        /* Bits 96-127 */
-
-    FT_Char    achVendID[4];
-
-    FT_UShort  fsSelection;
-    FT_UShort  usFirstCharIndex;
-    FT_UShort  usLastCharIndex;
-    FT_Short   sTypoAscender;
-    FT_Short   sTypoDescender;
-    FT_Short   sTypoLineGap;
-    FT_UShort  usWinAscent;
-    FT_UShort  usWinDescent;
-
-    /* only version 1 tables: */
-
-    FT_ULong   ulCodePageRange1;       /* Bits 0-31   */
-    FT_ULong   ulCodePageRange2;       /* Bits 32-63  */
-
-    /* only version 2 tables: */
-
-    FT_Short   sxHeight;
-    FT_Short   sCapHeight;
-    FT_UShort  usDefaultChar;
-    FT_UShort  usBreakChar;
-    FT_UShort  usMaxContext;
-
-  } TT_OS2;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_Postscript                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a TrueType Postscript table.  All fields */
-  /*    comply to the TrueType table.  This structure does not reference   */
-  /*    the Postscript glyph names, which can be nevertheless accessed     */
-  /*    with the `ttpost' module.                                          */
-  /*                                                                       */
-  typedef struct  TT_Postscript_
-  {
-    FT_Fixed  FormatType;
-    FT_Fixed  italicAngle;
-    FT_Short  underlinePosition;
-    FT_Short  underlineThickness;
-    FT_ULong  isFixedPitch;
-    FT_ULong  minMemType42;
-    FT_ULong  maxMemType42;
-    FT_ULong  minMemType1;
-    FT_ULong  maxMemType1;
-
-    /* Glyph names follow in the file, but we don't   */
-    /* load them by default.  See the ttpost.c file.  */
-
-  } TT_Postscript;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_PCLT                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A structure used to model a TrueType PCLT table.  All fields       */
-  /*    comply to the TrueType table.                                      */
-  /*                                                                       */
-  typedef struct  TT_PCLT_
-  {
-    FT_Fixed   Version;
-    FT_ULong   FontNumber;
-    FT_UShort  Pitch;
-    FT_UShort  xHeight;
-    FT_UShort  Style;
-    FT_UShort  TypeFamily;
-    FT_UShort  CapHeight;
-    FT_UShort  SymbolSet;
-    FT_Char    TypeFace[16];
-    FT_Char    CharacterComplement[8];
-    FT_Char    FileName[6];
-    FT_Char    StrokeWeight;
-    FT_Char    WidthType;
-    FT_Byte    SerifStyle;
-    FT_Byte    Reserved;
-
-  } TT_PCLT;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_MaxProfile                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The maximum profile is a table containing many max values which    */
-  /*    can be used to pre-allocate arrays.  This ensures that no memory   */
-  /*    allocation occurs during a glyph load.                             */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    version               :: The version number.                       */
-  /*                                                                       */
-  /*    numGlyphs             :: The number of glyphs in this TrueType     */
-  /*                             font.                                     */
-  /*                                                                       */
-  /*    maxPoints             :: The maximum number of points in a         */
-  /*                             non-composite TrueType glyph.  See also   */
-  /*                             the structure element                     */
-  /*                             `maxCompositePoints'.                     */
-  /*                                                                       */
-  /*    maxContours           :: The maximum number of contours in a       */
-  /*                             non-composite TrueType glyph.  See also   */
-  /*                             the structure element                     */
-  /*                             `maxCompositeContours'.                   */
-  /*                                                                       */
-  /*    maxCompositePoints    :: The maximum number of points in a         */
-  /*                             composite TrueType glyph.  See also the   */
-  /*                             structure element `maxPoints'.            */
-  /*                                                                       */
-  /*    maxCompositeContours  :: The maximum number of contours in a       */
-  /*                             composite TrueType glyph.  See also the   */
-  /*                             structure element `maxContours'.          */
-  /*                                                                       */
-  /*    maxZones              :: The maximum number of zones used for      */
-  /*                             glyph hinting.                            */
-  /*                                                                       */
-  /*    maxTwilightPoints     :: The maximum number of points in the       */
-  /*                             twilight zone used for glyph hinting.     */
-  /*                                                                       */
-  /*    maxStorage            :: The maximum number of elements in the     */
-  /*                             storage area used for glyph hinting.      */
-  /*                                                                       */
-  /*    maxFunctionDefs       :: The maximum number of function            */
-  /*                             definitions in the TrueType bytecode for  */
-  /*                             this font.                                */
-  /*                                                                       */
-  /*    maxInstructionDefs    :: The maximum number of instruction         */
-  /*                             definitions in the TrueType bytecode for  */
-  /*                             this font.                                */
-  /*                                                                       */
-  /*    maxStackElements      :: The maximum number of stack elements used */
-  /*                             during bytecode interpretation.           */
-  /*                                                                       */
-  /*    maxSizeOfInstructions :: The maximum number of TrueType opcodes    */
-  /*                             used for glyph hinting.                   */
-  /*                                                                       */
-  /*    maxComponentElements  :: The maximum number of simple (i.e., non-  */
-  /*                             composite) glyphs in a composite glyph.   */
-  /*                                                                       */
-  /*    maxComponentDepth     :: The maximum nesting depth of composite    */
-  /*                             glyphs.                                   */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This structure is only used during font loading.                   */
-  /*                                                                       */
-  typedef struct  TT_MaxProfile_
-  {
-    FT_Fixed   version;
-    FT_UShort  numGlyphs;
-    FT_UShort  maxPoints;
-    FT_UShort  maxContours;
-    FT_UShort  maxCompositePoints;
-    FT_UShort  maxCompositeContours;
-    FT_UShort  maxZones;
-    FT_UShort  maxTwilightPoints;
-    FT_UShort  maxStorage;
-    FT_UShort  maxFunctionDefs;
-    FT_UShort  maxInstructionDefs;
-    FT_UShort  maxStackElements;
-    FT_UShort  maxSizeOfInstructions;
-    FT_UShort  maxComponentElements;
-    FT_UShort  maxComponentDepth;
-
-  } TT_MaxProfile;
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Enum>                                                                */
-  /*    FT_Sfnt_Tag                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An enumeration used to specify the index of an SFNT table.         */
-  /*    Used in the @FT_Get_Sfnt_Table API function.                       */
-  /*                                                                       */
-  typedef enum
-  {
-    ft_sfnt_head = 0,
-    ft_sfnt_maxp = 1,
-    ft_sfnt_os2  = 2,
-    ft_sfnt_hhea = 3,
-    ft_sfnt_vhea = 4,
-    ft_sfnt_post = 5,
-    ft_sfnt_pclt = 6,
-
-    sfnt_max   /* internal end mark */
-
-  } FT_Sfnt_Tag;
-
-  /* */
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_Sfnt_Table                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Returns a pointer to a given SFNT table within a face.             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to the source.                                    */
-  /*                                                                       */
-  /*    tag  :: The index of the SFNT table.                               */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A type-less pointer to the table.  This will be 0 in case of       */
-  /*    error, or if the corresponding table was not found *OR* loaded     */
-  /*    from the file.                                                     */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The table is owned by the face object and disappears with it.      */
-  /*                                                                       */
-  /*    This function is only useful to access SFNT tables that are loaded */
-  /*    by the sfnt/truetype/opentype drivers.  See @FT_Sfnt_Tag for a     */
-  /*    list.                                                              */
-  /*                                                                       */
-  FT_EXPORT( void* )
-  FT_Get_Sfnt_Table( FT_Face      face,
-                     FT_Sfnt_Tag  tag );
-
-
- /**************************************************************************
-  *
-  * <Function>
-  *    FT_Load_Sfnt_Table
-  *
-  * <Description>
-  *   Loads any font table into client memory.
-  *
-  * <Input>
-  *   face   :: A handle to the source face.
-  *
-  *   tag    :: The 4-byte tag of the table to load.  Use the value 0 if
-  *             you want to access the whole font file.  Otherwise, you can
-  *             use one of the definitions found in the @FT_TRUETYPE_TAGS_H
-  *             file, or forge a new one with @FT_MAKE_TAG.
-  *              
-  *   offset :: The starting offset in the table (or file if tag == 0).
-  *
-  * <Output>
-  *   buffer :: The target buffer address.  The client must ensure that
-  *             the memory array is big enough to hold the data.
-  *
-  * <InOut>
-  *   length :: If the `length' parameter is NULL, then try to load the whole
-  *             table.  Return an error code if it fails.
-  *
-  *             Else, if `*length' is 0, exit immediately while returning
-  *             the table's (or file) full size in it.
-  *
-  *             Else the number of bytes to read from the table or file,
-  *             from the starting offset.
-  *
-  * <Return>
-  *   FreeType error code.  0 means success.
-  *
-  * <Note>
-  *   If you need to determine the table's length you should first call this
-  *   function with `*length' set to 0, as in the following example:
-  *
-  *   {
-  *     FT_ULong  length = 0;
-  *
-  *
-  *     error = FT_Load_Sfnt_Table( face, tag, 0, NULL, &length );
-  *     if ( error ) { ... table does not exist ... }
-  *
-  *     buffer = malloc( length );
-  *     if ( buffer == NULL ) { ... not enough memory ... }
-  *
-  *     error = FT_Load_Sfnt_Table( face, tag, 0, buffer, &length );
-  *     if ( error ) { ... could not load table ... }
-  *   }
-  */
-  FT_EXPORT( FT_Error )
-  FT_Load_Sfnt_Table( FT_Face    face,
-                      FT_ULong   tag,
-                      FT_Long    offset,
-                      FT_Byte*   buffer,
-                      FT_ULong*  length );
-
-
- /**************************************************************************
-  *
-  * <Function>
-  *    FT_Sfnt_Table_Info
-  *
-  * <Description>
-  *   Returns information on an SFNT table.
-  *
-  * <Input>
-  *   face ::
-  *     A handle to the source face.
-  *
-  *   table_index ::
-  *     The index of an SFNT table.  The function returns
-  *     FT_Err_Table_Missing for an invalid value.
-  *
-  * <Output>
-  *   tag ::
-  *     The name tag of the SFNT table.
-  *
-  *   length ::
-  *     The length of the SFNT table.
-  *
-  * <Return>
-  *   FreeType error code.  0 means success.
-  *
-  * <Note>
-  *   SFNT tables with length zero are treated as missing by Windows.
-  *
-  */
-  FT_EXPORT( FT_Error )
-  FT_Sfnt_Table_Info( FT_Face    face,
-                      FT_UInt    table_index,
-                      FT_ULong  *tag,
-                      FT_ULong  *length );
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Get_CMap_Language_ID                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Return TrueType/sfnt specific cmap language ID.  Definitions of    */
-  /*    language ID values are in freetype/ttnameid.h.                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    charmap ::                                                         */
-  /*      The target charmap.                                              */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The language ID of `charmap'.  If `charmap' doesn't belong to a    */
-  /*    TrueType/sfnt face, just return 0 as the default value.            */
-  /*                                                                       */
-  FT_EXPORT( FT_ULong )
-  FT_Get_CMap_Language_ID( FT_CharMap  charmap );
-
-  /* */
-
-
-FT_END_HEADER
-
-#endif /* __TTTABLES_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/tttags.h b/dependencies64/sfml/extlibs/headers/freetype/tttags.h
deleted file mode 100644 (file)
index 9fee71b..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  tttags.h                                                               */
-/*                                                                         */
-/*    Tags for TrueType and OpenType tables (specification only).          */
-/*                                                                         */
-/*  Copyright 1996-2001, 2004 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __TTAGS_H__
-#define __TTAGS_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
-#define TTAG_avar  FT_MAKE_TAG( 'a', 'v', 'a', 'r' )
-#define TTAG_BASE  FT_MAKE_TAG( 'B', 'A', 'S', 'E' )
-#define TTAG_bdat  FT_MAKE_TAG( 'b', 'd', 'a', 't' )
-#define TTAG_bhed  FT_MAKE_TAG( 'b', 'h', 'e', 'd' )
-#define TTAG_bloc  FT_MAKE_TAG( 'b', 'l', 'o', 'c' )
-#define TTAG_CFF   FT_MAKE_TAG( 'C', 'F', 'F', ' ' )
-#define TTAG_cmap  FT_MAKE_TAG( 'c', 'm', 'a', 'p' )
-#define TTAG_cvar  FT_MAKE_TAG( 'c', 'v', 'a', 'r' )
-#define TTAG_cvt   FT_MAKE_TAG( 'c', 'v', 't', ' ' )
-#define TTAG_DSIG  FT_MAKE_TAG( 'D', 'S', 'I', 'G' )
-#define TTAG_EBDT  FT_MAKE_TAG( 'E', 'B', 'D', 'T' )
-#define TTAG_EBLC  FT_MAKE_TAG( 'E', 'B', 'L', 'C' )
-#define TTAG_EBSC  FT_MAKE_TAG( 'E', 'B', 'S', 'C' )
-#define TTAG_fpgm  FT_MAKE_TAG( 'f', 'p', 'g', 'm' )
-#define TTAG_fvar  FT_MAKE_TAG( 'f', 'v', 'a', 'r' )
-#define TTAG_gasp  FT_MAKE_TAG( 'g', 'a', 's', 'p' )
-#define TTAG_GDEF  FT_MAKE_TAG( 'G', 'D', 'E', 'F' )
-#define TTAG_glyf  FT_MAKE_TAG( 'g', 'l', 'y', 'f' )
-#define TTAG_GPOS  FT_MAKE_TAG( 'G', 'P', 'O', 'S' )
-#define TTAG_GSUB  FT_MAKE_TAG( 'G', 'S', 'U', 'B' )
-#define TTAG_gvar  FT_MAKE_TAG( 'g', 'v', 'a', 'r' )
-#define TTAG_hdmx  FT_MAKE_TAG( 'h', 'd', 'm', 'x' )
-#define TTAG_head  FT_MAKE_TAG( 'h', 'e', 'a', 'd' )
-#define TTAG_hhea  FT_MAKE_TAG( 'h', 'h', 'e', 'a' )
-#define TTAG_hmtx  FT_MAKE_TAG( 'h', 'm', 't', 'x' )
-#define TTAG_JSTF  FT_MAKE_TAG( 'J', 'S', 'T', 'F' )
-#define TTAG_kern  FT_MAKE_TAG( 'k', 'e', 'r', 'n' )
-#define TTAG_loca  FT_MAKE_TAG( 'l', 'o', 'c', 'a' )
-#define TTAG_LTSH  FT_MAKE_TAG( 'L', 'T', 'S', 'H' )
-#define TTAG_maxp  FT_MAKE_TAG( 'm', 'a', 'x', 'p' )
-#define TTAG_MMFX  FT_MAKE_TAG( 'M', 'M', 'F', 'X' )
-#define TTAG_MMSD  FT_MAKE_TAG( 'M', 'M', 'S', 'D' )
-#define TTAG_name  FT_MAKE_TAG( 'n', 'a', 'm', 'e' )
-#define TTAG_OS2   FT_MAKE_TAG( 'O', 'S', '/', '2' )
-#define TTAG_OTTO  FT_MAKE_TAG( 'O', 'T', 'T', 'O' )
-#define TTAG_PCLT  FT_MAKE_TAG( 'P', 'C', 'L', 'T' )
-#define TTAG_post  FT_MAKE_TAG( 'p', 'o', 's', 't' )
-#define TTAG_prep  FT_MAKE_TAG( 'p', 'r', 'e', 'p' )
-#define TTAG_true  FT_MAKE_TAG( 't', 'r', 'u', 'e' )
-#define TTAG_ttc   FT_MAKE_TAG( 't', 't', 'c', ' ' )
-#define TTAG_ttcf  FT_MAKE_TAG( 't', 't', 'c', 'f' )
-#define TTAG_VDMX  FT_MAKE_TAG( 'V', 'D', 'M', 'X' )
-#define TTAG_vhea  FT_MAKE_TAG( 'v', 'h', 'e', 'a' )
-#define TTAG_vmtx  FT_MAKE_TAG( 'v', 'm', 't', 'x' )
-
-
-FT_END_HEADER
-
-#endif /* __TTAGS_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/freetype/ttunpat.h b/dependencies64/sfml/extlibs/headers/freetype/ttunpat.h
deleted file mode 100644 (file)
index 0bc0a6f..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttunpat.h                                                              */
-/*                                                                         */
-/*    Definitions for the unpatented TrueType hinting system               */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  Written by Graham Asher <graham.asher@btinternet.com>                  */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-#ifndef __TTUNPAT_H__
-#define __TTUNPAT_H__
-
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-
-#ifdef FREETYPE_H
-#error "freetype.h of FreeType 1 has been loaded!"
-#error "Please fix the directory search order for header files"
-#error "so that freetype.h of FreeType 2 is found first."
-#endif
-
-
-FT_BEGIN_HEADER
-
-
- /***************************************************************************
-  *
-  * @constant:
-  *   FT_PARAM_TAG_UNPATENTED_HINTING
-  *
-  * @description:
-  *   A constant used as the tag of an @FT_Parameter structure to indicate
-  *   that unpatented methods only should be used by the TrueType bytecode
-  *   interpreter for a typeface opened by FT_Open_Face.
-  *
-  */
-#define FT_PARAM_TAG_UNPATENTED_HINTING  FT_MAKE_TAG( 'u', 'n', 'p', 'a' )
-
- /* */
-
-FT_END_HEADER
-
-
-#endif /* __TTUNPAT_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/ft2build.h b/dependencies64/sfml/extlibs/headers/ft2build.h
deleted file mode 100644 (file)
index 7390dc4..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ft2build.h                                                             */
-/*                                                                         */
-/*    Build macros of the FreeType 2 library.                              */
-/*                                                                         */
-/*  Copyright 1996-2001, 2003 by                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This is a Unix-specific version of <ft2build.h> that should be used   */
-  /* exclusively *after* installation of the library.                      */
-  /*                                                                       */
-  /* It assumes that "/usr/local/include/freetype2" (or whatever is        */
-  /* returned by the "freetype-config --cflags" or "pkg-config --cflags"   */
-  /* command) is in your compilation include path.                         */
-  /*                                                                       */
-  /* We don't need to do anything special in this release.  However, for   */
-  /* a future FreeType 2 release, the following installation changes will  */
-  /* be performed:                                                         */
-  /*                                                                       */
-  /*   - The contents of "freetype-2.x/include/freetype" will be installed */
-  /*     to "/usr/local/include/freetype2" instead of                      */
-  /*     "/usr/local/include/freetype2/freetype".                          */
-  /*                                                                       */
-  /*   - This file will #include <freetype2/config/ftheader.h>, instead    */
-  /*     of <freetype/config/ftheader.h>.                                  */
-  /*                                                                       */
-  /*   - The contents of "ftheader.h" will be processed with `sed' to      */
-  /*     replace all "<freetype/xxx>" with "<freetype2/xxx>".              */
-  /*                                                                       */
-  /*   - Adding "/usr/local/include/freetype2" to your compilation include */
-  /*     path will not be necessary anymore.                               */
-  /*                                                                       */
-  /* These changes will be transparent to client applications which use    */
-  /* freetype-config (or pkg-config).  No modifications will be necessary  */
-  /* to compile with the new scheme.                                       */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-#ifndef __FT2_BUILD_UNIX_H__
-#define __FT2_BUILD_UNIX_H__
-
-  /* "<prefix>/include/freetype2" must be in your current inclusion path */
-#include <freetype/config/ftheader.h>
-
-#endif /* __FT2_BUILD_UNIX_H__ */
-
-
-/* END */
diff --git a/dependencies64/sfml/extlibs/headers/sndfile.h b/dependencies64/sfml/extlibs/headers/sndfile.h
deleted file mode 100644 (file)
index 46eb188..0000000
+++ /dev/null
@@ -1,561 +0,0 @@
-/*
-** Copyright (C) 1999-2006 Erik de Castro Lopo <erikd@mega-nerd.com>
-**
-** This program is free software; you can redistribute it and/or modify
-** it under the terms of the GNU Lesser General Public License as published by
-** the Free Software Foundation; either version 2.1 of the License, or
-** (at your option) any later version.
-**
-** This program is distributed in the hope that it will be useful,
-** but WITHOUT ANY WARRANTY; without even the implied warranty of
-** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-** GNU Lesser General Public License for more details.
-**
-** You should have received a copy of the GNU Lesser General Public License
-** along with this program; if not, write to the Free Software
-** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-*/
-
-/*
-** sndfile.h -- system-wide definitions
-**
-** API documentation is in the doc/ directory of the source code tarball
-** and at http://www.mega-nerd.com/libsndfile/api.html.
-*/
-
-#ifndef SNDFILE_H
-#define SNDFILE_H
-
-/* This is the version 1.0.X header file. */
-#define        SNDFILE_1
-
-#include <stdio.h>
-#ifdef __APPLE__
-    #include <stdint.h>
-#endif
-
-/* For the Metrowerks CodeWarrior Pro Compiler (mainly MacOS) */
-
-#if    (defined (__MWERKS__))
-#include       <unix.h>
-#else
-#include       <sys/types.h>
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/* The following file types can be read and written.
-** A file type would consist of a major type (ie SF_FORMAT_WAV) bitwise
-** ORed with a minor type (ie SF_FORMAT_PCM). SF_FORMAT_TYPEMASK and
-** SF_FORMAT_SUBMASK can be used to separate the major and minor file
-** types.
-*/
-
-enum
-{      /* Major formats. */
-       SF_FORMAT_WAV                   = 0x010000,             /* Microsoft WAV format (little endian default). */
-       SF_FORMAT_AIFF                  = 0x020000,             /* Apple/SGI AIFF format (big endian). */
-       SF_FORMAT_AU                    = 0x030000,             /* Sun/NeXT AU format (big endian). */
-       SF_FORMAT_RAW                   = 0x040000,             /* RAW PCM data. */
-       SF_FORMAT_PAF                   = 0x050000,             /* Ensoniq PARIS file format. */
-       SF_FORMAT_SVX                   = 0x060000,             /* Amiga IFF / SVX8 / SV16 format. */
-       SF_FORMAT_NIST                  = 0x070000,             /* Sphere NIST format. */
-       SF_FORMAT_VOC                   = 0x080000,             /* VOC files. */
-       SF_FORMAT_IRCAM                 = 0x0A0000,             /* Berkeley/IRCAM/CARL */
-       SF_FORMAT_W64                   = 0x0B0000,             /* Sonic Foundry's 64 bit RIFF/WAV */
-       SF_FORMAT_MAT4                  = 0x0C0000,             /* Matlab (tm) V4.2 / GNU Octave 2.0 */
-       SF_FORMAT_MAT5                  = 0x0D0000,             /* Matlab (tm) V5.0 / GNU Octave 2.1 */
-       SF_FORMAT_PVF                   = 0x0E0000,             /* Portable Voice Format */
-       SF_FORMAT_XI                    = 0x0F0000,             /* Fasttracker 2 Extended Instrument */
-       SF_FORMAT_HTK                   = 0x100000,             /* HMM Tool Kit format */
-       SF_FORMAT_SDS                   = 0x110000,             /* Midi Sample Dump Standard */
-       SF_FORMAT_AVR                   = 0x120000,             /* Audio Visual Research */
-       SF_FORMAT_WAVEX                 = 0x130000,             /* MS WAVE with WAVEFORMATEX */
-       SF_FORMAT_SD2                   = 0x160000,             /* Sound Designer 2 */
-       SF_FORMAT_FLAC                  = 0x170000,             /* FLAC lossless file format */
-       SF_FORMAT_CAF                   = 0x180000,             /* Core Audio File format */
-
-       /* Subtypes from here on. */
-
-       SF_FORMAT_PCM_S8                = 0x0001,               /* Signed 8 bit data */
-       SF_FORMAT_PCM_16                = 0x0002,               /* Signed 16 bit data */
-       SF_FORMAT_PCM_24                = 0x0003,               /* Signed 24 bit data */
-       SF_FORMAT_PCM_32                = 0x0004,               /* Signed 32 bit data */
-
-       SF_FORMAT_PCM_U8                = 0x0005,               /* Unsigned 8 bit data (WAV and RAW only) */
-
-       SF_FORMAT_FLOAT                 = 0x0006,               /* 32 bit float data */
-       SF_FORMAT_DOUBLE                = 0x0007,               /* 64 bit float data */
-
-       SF_FORMAT_ULAW                  = 0x0010,               /* U-Law encoded. */
-       SF_FORMAT_ALAW                  = 0x0011,               /* A-Law encoded. */
-       SF_FORMAT_IMA_ADPCM             = 0x0012,               /* IMA ADPCM. */
-       SF_FORMAT_MS_ADPCM              = 0x0013,               /* Microsoft ADPCM. */
-
-       SF_FORMAT_GSM610                = 0x0020,               /* GSM 6.10 encoding. */
-       SF_FORMAT_VOX_ADPCM             = 0x0021,               /* OKI / Dialogix ADPCM */
-
-       SF_FORMAT_G721_32               = 0x0030,               /* 32kbs G721 ADPCM encoding. */
-       SF_FORMAT_G723_24               = 0x0031,               /* 24kbs G723 ADPCM encoding. */
-       SF_FORMAT_G723_40               = 0x0032,               /* 40kbs G723 ADPCM encoding. */
-
-       SF_FORMAT_DWVW_12               = 0x0040,               /* 12 bit Delta Width Variable Word encoding. */
-       SF_FORMAT_DWVW_16               = 0x0041,               /* 16 bit Delta Width Variable Word encoding. */
-       SF_FORMAT_DWVW_24               = 0x0042,               /* 24 bit Delta Width Variable Word encoding. */
-       SF_FORMAT_DWVW_N                = 0x0043,               /* N bit Delta Width Variable Word encoding. */
-
-       SF_FORMAT_DPCM_8                = 0x0050,               /* 8 bit differential PCM (XI only) */
-       SF_FORMAT_DPCM_16               = 0x0051,               /* 16 bit differential PCM (XI only) */
-
-       /* Endian-ness options. */
-
-       SF_ENDIAN_FILE                  = 0x00000000,   /* Default file endian-ness. */
-       SF_ENDIAN_LITTLE                = 0x10000000,   /* Force little endian-ness. */
-       SF_ENDIAN_BIG                   = 0x20000000,   /* Force big endian-ness. */
-       SF_ENDIAN_CPU                   = 0x30000000,   /* Force CPU endian-ness. */
-
-       SF_FORMAT_SUBMASK               = 0x0000FFFF,
-       SF_FORMAT_TYPEMASK              = 0x0FFF0000,
-       SF_FORMAT_ENDMASK               = 0x30000000
-} ;
-
-/*
-** The following are the valid command numbers for the sf_command()
-** interface.  The use of these commands is documented in the file
-** command.html in the doc directory of the source code distribution.
-*/
-
-enum
-{      SFC_GET_LIB_VERSION                             = 0x1000,
-       SFC_GET_LOG_INFO                                = 0x1001,
-
-       SFC_GET_NORM_DOUBLE                             = 0x1010,
-       SFC_GET_NORM_FLOAT                              = 0x1011,
-       SFC_SET_NORM_DOUBLE                             = 0x1012,
-       SFC_SET_NORM_FLOAT                              = 0x1013,
-       SFC_SET_SCALE_FLOAT_INT_READ    = 0x1014,
-
-       SFC_GET_SIMPLE_FORMAT_COUNT             = 0x1020,
-       SFC_GET_SIMPLE_FORMAT                   = 0x1021,
-
-       SFC_GET_FORMAT_INFO                             = 0x1028,
-
-       SFC_GET_FORMAT_MAJOR_COUNT              = 0x1030,
-       SFC_GET_FORMAT_MAJOR                    = 0x1031,
-       SFC_GET_FORMAT_SUBTYPE_COUNT    = 0x1032,
-       SFC_GET_FORMAT_SUBTYPE                  = 0x1033,
-
-       SFC_CALC_SIGNAL_MAX                             = 0x1040,
-       SFC_CALC_NORM_SIGNAL_MAX                = 0x1041,
-       SFC_CALC_MAX_ALL_CHANNELS               = 0x1042,
-       SFC_CALC_NORM_MAX_ALL_CHANNELS  = 0x1043,
-       SFC_GET_SIGNAL_MAX                              = 0x1044,
-       SFC_GET_MAX_ALL_CHANNELS                = 0x1045,
-
-       SFC_SET_ADD_PEAK_CHUNK                  = 0x1050,
-
-       SFC_UPDATE_HEADER_NOW                   = 0x1060,
-       SFC_SET_UPDATE_HEADER_AUTO              = 0x1061,
-
-       SFC_FILE_TRUNCATE                               = 0x1080,
-
-       SFC_SET_RAW_START_OFFSET                = 0x1090,
-
-       SFC_SET_DITHER_ON_WRITE                 = 0x10A0,
-       SFC_SET_DITHER_ON_READ                  = 0x10A1,
-
-       SFC_GET_DITHER_INFO_COUNT               = 0x10A2,
-       SFC_GET_DITHER_INFO                             = 0x10A3,
-
-       SFC_GET_EMBED_FILE_INFO                 = 0x10B0,
-
-       SFC_SET_CLIPPING                                = 0x10C0,
-       SFC_GET_CLIPPING                                = 0x10C1,
-
-       SFC_GET_INSTRUMENT                              = 0x10D0,
-       SFC_SET_INSTRUMENT                              = 0x10D1,
-
-       SFC_GET_LOOP_INFO                               = 0x10E0,
-
-       SFC_GET_BROADCAST_INFO                  = 0x10F0,
-       SFC_SET_BROADCAST_INFO                  = 0x10F1,
-
-       /* Following commands for testing only. */
-       SFC_TEST_IEEE_FLOAT_REPLACE             = 0x6001,
-
-       /*
-       ** SFC_SET_ADD_* values are deprecated and will disappear at some
-       ** time in the future. They are guaranteed to be here up to and
-       ** including version 1.0.8 to avoid breakage of existng software.
-       ** They currently do nothing and will continue to do nothing.
-       */
-       SFC_SET_ADD_DITHER_ON_WRITE             = 0x1070,
-       SFC_SET_ADD_DITHER_ON_READ              = 0x1071
-} ;
-
-
-/*
-** String types that can be set and read from files. Not all file types
-** support this and even the file types which support one, may not support
-** all string types.
-*/
-
-enum
-{      SF_STR_TITLE                                    = 0x01,
-       SF_STR_COPYRIGHT                                = 0x02,
-       SF_STR_SOFTWARE                                 = 0x03,
-       SF_STR_ARTIST                                   = 0x04,
-       SF_STR_COMMENT                                  = 0x05,
-       SF_STR_DATE                                             = 0x06
-} ;
-
-/*
-** Use the following as the start and end index when doing metadata
-** transcoding.
-*/
-
-#define        SF_STR_FIRST    SF_STR_TITLE
-#define        SF_STR_LAST             SF_STR_DATE
-
-enum
-{      /* True and false */
-       SF_FALSE        = 0,
-       SF_TRUE         = 1,
-
-       /* Modes for opening files. */
-       SFM_READ        = 0x10,
-       SFM_WRITE       = 0x20,
-       SFM_RDWR        = 0x30
-} ;
-
-/* Public error values. These are guaranteed to remain unchanged for the duration
-** of the library major version number.
-** There are also a large number of private error numbers which are internal to
-** the library which can change at any time.
-*/
-
-enum
-{      SF_ERR_NO_ERROR                         = 0,
-       SF_ERR_UNRECOGNISED_FORMAT      = 1,
-       SF_ERR_SYSTEM                           = 2,
-       SF_ERR_MALFORMED_FILE           = 3,
-       SF_ERR_UNSUPPORTED_ENCODING     = 4
-} ;
-
-/* A SNDFILE* pointer can be passed around much like stdio.h's FILE* pointer. */
-
-typedef        struct SNDFILE_tag      SNDFILE ;
-
-/* The following typedef is system specific and is defined when libsndfile is.
-** compiled. sf_count_t can be one of loff_t (Linux), off_t (*BSD),
-** off64_t (Solaris), __int64_t (Win32) etc.
-*/
-
-#ifdef __APPLE__
-typedef int64_t sf_count_t ;
-#else
-typedef __int64        sf_count_t ;
-#endif
-
-#define SF_COUNT_MAX           0x7FFFFFFFFFFFFFFFLL
-
-/* A pointer to a SF_INFO structure is passed to sf_open_read () and filled in.
-** On write, the SF_INFO structure is filled in by the user and passed into
-** sf_open_write ().
-*/
-
-struct SF_INFO
-{      sf_count_t      frames ;                /* Used to be called samples.  Changed to avoid confusion. */
-       int                     samplerate ;
-       int                     channels ;
-       int                     format ;
-       int                     sections ;
-       int                     seekable ;
-} ;
-
-typedef        struct SF_INFO SF_INFO ;
-
-/* The SF_FORMAT_INFO struct is used to retrieve information about the sound
-** file formats libsndfile supports using the sf_command () interface.
-**
-** Using this interface will allow applications to support new file formats
-** and encoding types when libsndfile is upgraded, without requiring
-** re-compilation of the application.
-**
-** Please consult the libsndfile documentation (particularly the information
-** on the sf_command () interface) for examples of its use.
-*/
-
-typedef struct
-{      int                     format ;
-       const char      *name ;
-       const char      *extension ;
-} SF_FORMAT_INFO ;
-
-/*
-** Enums and typedefs for adding dither on read and write.
-** See the html documentation for sf_command(), SFC_SET_DITHER_ON_WRITE
-** and SFC_SET_DITHER_ON_READ.
-*/
-
-enum
-{      SFD_DEFAULT_LEVEL       = 0,
-       SFD_CUSTOM_LEVEL        = 0x40000000,
-
-       SFD_NO_DITHER           = 500,
-       SFD_WHITE                       = 501,
-       SFD_TRIANGULAR_PDF      = 502
-} ;
-
-typedef struct
-{      int                     type ;
-       double          level ;
-       const char      *name ;
-} SF_DITHER_INFO ;
-
-/* Struct used to retrieve information about a file embedded within a
-** larger file. See SFC_GET_EMBED_FILE_INFO.
-*/
-
-typedef struct
-{      sf_count_t      offset ;
-       sf_count_t      length ;
-} SF_EMBED_FILE_INFO ;
-
-/*
-**     Structs used to retrieve music sample information from a file.
-*/
-
-enum
-{      /*
-       **      The loop mode field in SF_INSTRUMENT will be one of the following.
-       */
-       SF_LOOP_NONE = 800,
-       SF_LOOP_FORWARD,
-       SF_LOOP_BACKWARD,
-       SF_LOOP_ALTERNATING
-} ;
-
-typedef struct
-{      int gain ;
-       char basenote, detune ;
-       char velocity_lo, velocity_hi ;
-       char key_lo, key_hi ;
-       int loop_count ;
-
-       struct
-       {       int mode ;
-               unsigned int start ;
-               unsigned int end ;
-               unsigned int count ;
-       } loops [16] ; /* make variable in a sensible way */
-} SF_INSTRUMENT ;
-
-
-
-/* Struct used to retrieve loop information from a file.*/
-typedef struct
-{
-       short   time_sig_num ;  /* any positive integer    > 0  */
-       short   time_sig_den ;  /* any positive power of 2 > 0  */
-       int             loop_mode ;             /* see SF_LOOP enum             */
-
-       int             num_beats ;             /* this is NOT the amount of quarter notes !!!*/
-                                                       /* a full bar of 4/4 is 4 beats */
-                                                       /* a full bar of 7/8 is 7 beats */
-
-       float   bpm ;                   /* suggestion, as it can be calculated using other fields:*/
-                                                       /* file's lenght, file's sampleRate and our time_sig_den*/
-                                                       /* -> bpms are always the amount of _quarter notes_ per minute */
-
-       int     root_key ;                      /* MIDI note, or -1 for None */
-       int future [6] ;
-} SF_LOOP_INFO ;
-
-
-/*     Struct used to retrieve broadcast (EBU) information from a file. 
-**     Strongly (!) based on EBU "bext" chunk format used in Broadcast WAVE.
-*/
-typedef struct
-{      char                    description [256] ;
-       char                    originator [32] ;
-       char                    originator_reference [32] ;
-       char                    origination_date [10] ;
-       char                    origination_time [8] ;
-       int                             time_reference_low ;
-       int                             time_reference_high ;
-       short                   version ;
-       char                    umid [64] ;
-       char                    reserved [190] ;
-       unsigned int    coding_history_size ;
-       char                    coding_history [256] ;
-} SF_BROADCAST_INFO ;
-
-typedef sf_count_t             (*sf_vio_get_filelen)   (void *user_data) ;
-typedef sf_count_t             (*sf_vio_seek)          (sf_count_t offset, int whence, void *user_data) ;
-typedef sf_count_t             (*sf_vio_read)          (void *ptr, sf_count_t count, void *user_data) ;
-typedef sf_count_t             (*sf_vio_write)         (const void *ptr, sf_count_t count, void *user_data) ;
-typedef sf_count_t             (*sf_vio_tell)          (void *user_data) ;
-
-struct SF_VIRTUAL_IO
-{      sf_vio_get_filelen      get_filelen ;
-       sf_vio_seek                     seek ;
-       sf_vio_read                     read ;
-       sf_vio_write            write ;
-       sf_vio_tell                     tell ;
-} ;
-
-typedef        struct SF_VIRTUAL_IO SF_VIRTUAL_IO ;
-
-/* Open the specified file for read, write or both. On error, this will
-** return a NULL pointer. To find the error number, pass a NULL SNDFILE
-** to sf_perror () or sf_error_str ().
-** All calls to sf_open() should be matched with a call to sf_close().
-*/
-
-SNDFILE*       sf_open         (const char *path, int mode, SF_INFO *sfinfo) ;
-
-/* Use the existing file descriptor to create a SNDFILE object. If close_desc
-** is TRUE, the file descriptor will be closed when sf_close() is called. If
-** it is FALSE, the descritor will not be closed.
-** When passed a descriptor like this, the library will assume that the start
-** of file header is at the current file offset. This allows sound files within
-** larger container files to be read and/or written.
-** On error, this will return a NULL pointer. To find the error number, pass a
-** NULL SNDFILE to sf_perror () or sf_error_str ().
-** All calls to sf_open_fd() should be matched with a call to sf_close().
-
-*/
-
-SNDFILE*       sf_open_fd      (int fd, int mode, SF_INFO *sfinfo, int close_desc) ;
-
-SNDFILE*       sf_open_virtual (SF_VIRTUAL_IO *sfvirtual, int mode, SF_INFO *sfinfo, void *user_data) ;
-
-/* sf_error () returns a error number which can be translated to a text
-** string using sf_error_number().
-*/
-
-int            sf_error                (SNDFILE *sndfile) ;
-
-/* sf_strerror () returns to the caller a pointer to the current error message for
-** the given SNDFILE.
-*/
-
-const char* sf_strerror (SNDFILE *sndfile) ;
-
-/* sf_error_number () allows the retrieval of the error string for each internal
-** error number.
-**
-*/
-
-const char*    sf_error_number (int errnum) ;
-
-/* The following three error functions are deprecated but they will remain in the
-** library for the forseeable future. The function sf_strerror() should be used
-** in their place.
-*/
-
-int            sf_perror               (SNDFILE *sndfile) ;
-int            sf_error_str    (SNDFILE *sndfile, char* str, size_t len) ;
-
-
-/* Return TRUE if fields of the SF_INFO struct are a valid combination of values. */
-
-int            sf_command      (SNDFILE *sndfile, int command, void *data, int datasize) ;
-
-/* Return TRUE if fields of the SF_INFO struct are a valid combination of values. */
-
-int            sf_format_check (const SF_INFO *info) ;
-
-/* Seek within the waveform data chunk of the SNDFILE. sf_seek () uses
-** the same values for whence (SEEK_SET, SEEK_CUR and SEEK_END) as
-** stdio.h function fseek ().
-** An offset of zero with whence set to SEEK_SET will position the
-** read / write pointer to the first data sample.
-** On success sf_seek returns the current position in (multi-channel)
-** samples from the start of the file.
-** Please see the libsndfile documentation for moving the read pointer
-** separately from the write pointer on files open in mode SFM_RDWR.
-** On error all of these functions return -1.
-*/
-
-sf_count_t     sf_seek                 (SNDFILE *sndfile, sf_count_t frames, int whence) ;
-
-/* Functions for retrieving and setting string data within sound files.
-** Not all file types support this features; AIFF and WAV do. For both
-** functions, the str_type parameter must be one of the SF_STR_* values
-** defined above.
-** On error, sf_set_string() returns non-zero while sf_get_string()
-** returns NULL.
-*/
-
-int sf_set_string (SNDFILE *sndfile, int str_type, const char* str) ;
-
-const char* sf_get_string (SNDFILE *sndfile, int str_type) ;
-
-/* Functions for reading/writing the waveform data of a sound file.
-*/
-
-sf_count_t     sf_read_raw             (SNDFILE *sndfile, void *ptr, sf_count_t bytes) ;
-sf_count_t     sf_write_raw    (SNDFILE *sndfile, const void *ptr, sf_count_t bytes) ;
-
-/* Functions for reading and writing the data chunk in terms of frames.
-** The number of items actually read/written = frames * number of channels.
-**     sf_xxxx_raw             read/writes the raw data bytes from/to the file
-**     sf_xxxx_short   passes data in the native short format
-**     sf_xxxx_int             passes data in the native int format
-**     sf_xxxx_float   passes data in the native float format
-**     sf_xxxx_double  passes data in the native double format
-** All of these read/write function return number of frames read/written.
-*/
-
-sf_count_t     sf_readf_short  (SNDFILE *sndfile, short *ptr, sf_count_t frames) ;
-sf_count_t     sf_writef_short (SNDFILE *sndfile, const short *ptr, sf_count_t frames) ;
-
-sf_count_t     sf_readf_int    (SNDFILE *sndfile, int *ptr, sf_count_t frames) ;
-sf_count_t     sf_writef_int   (SNDFILE *sndfile, const int *ptr, sf_count_t frames) ;
-
-sf_count_t     sf_readf_float  (SNDFILE *sndfile, float *ptr, sf_count_t frames) ;
-sf_count_t     sf_writef_float (SNDFILE *sndfile, const float *ptr, sf_count_t frames) ;
-
-sf_count_t     sf_readf_double         (SNDFILE *sndfile, double *ptr, sf_count_t frames) ;
-sf_count_t     sf_writef_double        (SNDFILE *sndfile, const double *ptr, sf_count_t frames) ;
-
-/* Functions for reading and writing the data chunk in terms of items.
-** Otherwise similar to above.
-** All of these read/write function return number of items read/written.
-*/
-
-sf_count_t     sf_read_short   (SNDFILE *sndfile, short *ptr, sf_count_t items) ;
-sf_count_t     sf_write_short  (SNDFILE *sndfile, const short *ptr, sf_count_t items) ;
-
-sf_count_t     sf_read_int             (SNDFILE *sndfile, int *ptr, sf_count_t items) ;
-sf_count_t     sf_write_int    (SNDFILE *sndfile, const int *ptr, sf_count_t items) ;
-
-sf_count_t     sf_read_float   (SNDFILE *sndfile, float *ptr, sf_count_t items) ;
-sf_count_t     sf_write_float  (SNDFILE *sndfile, const float *ptr, sf_count_t items) ;
-
-sf_count_t     sf_read_double  (SNDFILE *sndfile, double *ptr, sf_count_t items) ;
-sf_count_t     sf_write_double (SNDFILE *sndfile, const double *ptr, sf_count_t items) ;
-
-/* Close the SNDFILE and clean up all memory allocations associated with this
-** file.
-** Returns 0 on success, or an error number.
-*/
-
-int            sf_close                (SNDFILE *sndfile) ;
-
-/* If the file is opened SFM_WRITE or SFM_RDWR, call fsync() on the file
-** to force the writing of data to disk. If the file is opened SFM_READ
-** no action is taken.
-*/
-
-void   sf_write_sync   (SNDFILE *sndfile) ;
-
-#ifdef __cplusplus
-}              /* extern "C" */
-#endif /* __cplusplus */
-
-#endif /* SNDFILE_H */
diff --git a/dependencies64/sfml/extlibs/libs-vc2005/OpenAL32.lib b/dependencies64/sfml/extlibs/libs-vc2005/OpenAL32.lib
deleted file mode 100644 (file)
index 855c94d..0000000
Binary files a/dependencies64/sfml/extlibs/libs-vc2005/OpenAL32.lib and /dev/null differ
diff --git a/dependencies64/sfml/extlibs/libs-vc2005/freetype.lib b/dependencies64/sfml/extlibs/libs-vc2005/freetype.lib
deleted file mode 100644 (file)
index a6d344a..0000000
Binary files a/dependencies64/sfml/extlibs/libs-vc2005/freetype.lib and /dev/null differ
diff --git a/dependencies64/sfml/extlibs/libs-vc2005/sndfile.lib b/dependencies64/sfml/extlibs/libs-vc2005/sndfile.lib
deleted file mode 100644 (file)
index be79d73..0000000
Binary files a/dependencies64/sfml/extlibs/libs-vc2005/sndfile.lib and /dev/null differ
diff --git a/dependencies64/sfml/include/SFML/Audio.hpp b/dependencies64/sfml/include/SFML/Audio.hpp
deleted file mode 100644 (file)
index 9a83a73..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_AUDIO_HPP\r
-#define SFML_AUDIO_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-\r
-#include <SFML/System.hpp>\r
-#include <SFML/Audio/Listener.hpp>\r
-#include <SFML/Audio/Music.hpp>\r
-#include <SFML/Audio/Sound.hpp>\r
-#include <SFML/Audio/SoundBuffer.hpp>\r
-#include <SFML/Audio/SoundBufferRecorder.hpp>\r
-#include <SFML/Audio/SoundRecorder.hpp>\r
-#include <SFML/Audio/SoundStream.hpp>\r
-\r
-\r
-#endif // SFML_AUDIO_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Audio/AudioResource.hpp b/dependencies64/sfml/include/SFML/Audio/AudioResource.hpp
deleted file mode 100644 (file)
index 410466d..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_AUDIORESOURCE_HPP\r
-#define SFML_AUDIORESOURCE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Abstract base class for every class that owns a\r
-/// device-dependant resource -- allow them to initialize / shutdown\r
-/// even when the audio context is not created\r
-////////////////////////////////////////////////////////////\r
-class SFML_API AudioResource\r
-{\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    AudioResource();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Copy constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    AudioResource(const AudioResource&);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~AudioResource();\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_AUDIORESOURCE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Audio/Listener.hpp b/dependencies64/sfml/include/SFML/Audio/Listener.hpp
deleted file mode 100644 (file)
index 95227ca..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_LISTENER_HPP\r
-#define SFML_LISTENER_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <SFML/System/Vector3.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Listener is a global interface for defining the audio\r
-/// listener properties ; the audio listener is the point in\r
-/// the scene from where all the sounds are heard\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Listener\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the global volume of all the sounds.\r
-    /// The default volume is 100\r
-    ///\r
-    /// \param Volume : New global volume, in the range [0, 100]\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static void SetGlobalVolume(float Volume);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current value of the global volume of all the sounds\r
-    ///\r
-    /// \return Current global volume, in the range [0, 100]\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static float GetGlobalVolume();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the position of the listener (take 3 values).\r
-    /// The default position is (0, 0, 0)\r
-    ///\r
-    /// \param X, Y, Z : Position of the listener in the world\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static void SetPosition(float X, float Y, float Z);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the position of the listener (take a 3D vector).\r
-    /// The default position is (0, 0, 0)\r
-    ///\r
-    /// \param Position : Position of the listener in the world\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static void SetPosition(const Vector3f& Position);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current position of the listener\r
-    ///\r
-    /// \return Position of the listener in the world\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Vector3f GetPosition();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the orientation of the listener (the point\r
-    /// he must look at) (take 3 values).\r
-    /// The default target is (0, 0, -1)\r
-    ///\r
-    /// \param X, Y, Z : Position of the point the listener must look at\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static void SetTarget(float X, float Y, float Z);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the orientation of the listener (the point\r
-    /// he must look at) (take a 3D vector).\r
-    /// The default target is (0, 0, -1)\r
-    ///\r
-    /// \param Target : Position of the point the listener must look at\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static void SetTarget(const Vector3f& Target);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current orientation of the listener (the point\r
-    /// he's looking at)\r
-    ///\r
-    /// \return : Position of the point the listener is looking at\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Vector3f GetTarget();\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_LISTENER_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Audio/Music.hpp b/dependencies64/sfml/include/SFML/Audio/Music.hpp
deleted file mode 100644 (file)
index 0b8f70d..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_MUSIC_HPP\r
-#define SFML_MUSIC_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Audio/SoundStream.hpp>\r
-#include <string>\r
-#include <vector>\r
-\r
-\r
-namespace sf\r
-{\r
-namespace priv\r
-{\r
-    class SoundFile;\r
-}\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Music defines a big sound played using streaming,\r
-/// so usually what we call a music :)\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Music : public SoundStream\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the music with a buffer size\r
-    ///\r
-    /// \param BufferSize : Size of the internal buffer, expressed in number of samples\r
-    ///                     (ie. size taken by the music in memory) (44100 by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    explicit Music(std::size_t BufferSize = 44100);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~Music();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Open a music file (doesn't play it -- call Play() for that)\r
-    ///\r
-    /// \param Filename : Path of the music file to open\r
-    ///\r
-    /// \return True if loading has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool OpenFromFile(const std::string& Filename);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Open a music file from memory (doesn't play it -- call Play() for that)\r
-    ///\r
-    /// \param Data :        Pointer to the file data in memory\r
-    /// \param SizeInBytes : Size of the data to load, in bytes\r
-    ///\r
-    /// \return True if loading has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool OpenFromMemory(const char* Data, std::size_t SizeInBytes);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the music duration\r
-    ///\r
-    /// \return Music duration, in seconds\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetDuration() const;\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see SoundStream::OnStart\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool OnStart();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see SoundStream::OnGetData\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool OnGetData(Chunk& Data);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    priv::SoundFile*   myFile;     ///< Sound file\r
-    float              myDuration; ///< Music duration, in seconds\r
-    std::vector<Int16> mySamples;  ///< Temporary buffer of samples\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_MUSIC_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Audio/Sound.hpp b/dependencies64/sfml/include/SFML/Audio/Sound.hpp
deleted file mode 100644 (file)
index 7cb8002..0000000
+++ /dev/null
@@ -1,314 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOUND_HPP\r
-#define SFML_SOUND_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/Resource.hpp>\r
-#include <SFML/System/Vector3.hpp>\r
-#include <SFML/Audio/AudioResource.hpp>\r
-#include <cstdlib>\r
-\r
-\r
-namespace sf\r
-{\r
-class SoundBuffer;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Sound defines the properties of a sound such as position,\r
-/// volume, pitch, etc.\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Sound : public AudioResource\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Enumeration of the sound states\r
-    ////////////////////////////////////////////////////////////\r
-    enum Status\r
-    {\r
-        Stopped, ///< Sound is not playing\r
-        Paused,  ///< Sound is paused\r
-        Playing  ///< Sound is playing\r
-    };\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Sound();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the sound from its parameters\r
-    ///\r
-    /// \param Buffer :   Sound buffer to play (NULL by default)\r
-    /// \param Loop :     Loop flag (false by default)\r
-    /// \param Pitch :    Value of the pitch (1 by default)\r
-    /// \param Volume :   Volume (100 by default)\r
-    /// \param Position : Position (0, 0, 0 by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    explicit Sound(const SoundBuffer& Buffer, bool Loop = false, float Pitch = 1.f, float Volume = 100.f, const Vector3f& Position = Vector3f(0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Copy constructor\r
-    ///\r
-    /// \param Copy : Instance to copy\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Sound(const Sound& Copy);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~Sound();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Play the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Play();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Pause the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Pause();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Stop the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Stop();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the source buffer\r
-    ///\r
-    /// \param Buffer : New sound buffer to bind to the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetBuffer(const SoundBuffer& Buffer);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the sound loop state.\r
-    /// This parameter is disabled by default\r
-    ///\r
-    /// \param Loop : True to play in loop, false to play once\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetLoop(bool Loop);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the sound pitch.\r
-    /// The default pitch is 1\r
-    ///\r
-    /// \param Pitch : New pitch\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPitch(float Pitch);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the sound volume.\r
-    /// The default volume is 100\r
-    ///\r
-    /// \param Volume : Volume (in range [0, 100])\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetVolume(float Volume);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the sound position (take 3 values).\r
-    /// The default position is (0, 0, 0)\r
-    ///\r
-    /// \param X, Y, Z : Position of the sound in the world\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPosition(float X, float Y, float Z);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the sound position (take a 3D vector).\r
-    /// The default position is (0, 0, 0)\r
-    ///\r
-    /// \param Position : Position of the sound in the world\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPosition(const Vector3f& Position);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Make the sound's position relative to the listener's\r
-    /// position, or absolute.\r
-    /// The default value is false (absolute)\r
-    ///\r
-    /// \param Relative : True to set the position relative, false to set it absolute\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetRelativeToListener(bool Relative);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the minimum distance - closer than this distance,\r
-    /// the listener will hear the sound at its maximum volume.\r
-    /// The default minimum distance is 1.0\r
-    ///\r
-    /// \param MinDistance : New minimum distance for the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetMinDistance(float MinDistance);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the attenuation factor - the higher the attenuation, the\r
-    /// more the sound will be attenuated with distance from listener.\r
-    /// The default attenuation factor 1.0\r
-    ///\r
-    /// \param Attenuation : New attenuation factor for the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetAttenuation(float Attenuation);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the current playing position of the sound\r
-    ///\r
-    /// \param TimeOffset : New playing position, expressed in seconds\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPlayingOffset(float TimeOffset);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the source buffer\r
-    ///\r
-    /// \return Sound buffer bound to the sound (can be NULL)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const SoundBuffer* GetBuffer() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell whether or not the sound is looping\r
-    ///\r
-    /// \return True if the sound is looping, false otherwise\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool GetLoop() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the pitch\r
-    ///\r
-    /// \return Pitch value\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetPitch() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the volume\r
-    ///\r
-    /// \return Volume value (in range [1, 100])\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetVolume() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the sound position\r
-    ///\r
-    /// \return Position of the sound in the world\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Vector3f GetPosition() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell if the sound's position is relative to the listener's\r
-    /// position, or if it's absolute\r
-    ///\r
-    /// \return True if the position is relative, false if it's absolute\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsRelativeToListener() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the minimum distance\r
-    ///\r
-    /// \return Minimum distance for the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetMinDistance() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the attenuation factor\r
-    ///\r
-    /// \return Attenuation factor of the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetAttenuation() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the status of the sound (stopped, paused, playing)\r
-    ///\r
-    /// \return Current status of the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Status GetStatus() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current playing position of the sound\r
-    ///\r
-    /// \return Current playing position, expressed in seconds\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetPlayingOffset() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Assignment operator\r
-    ///\r
-    /// \param Other : Instance to assign\r
-    ///\r
-    /// \return Reference to the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Sound& operator =(const Sound& Other);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Reset the internal buffer\r
-    ///\r
-    /// This function is for internal use only, you don't have\r
-    /// to use it.\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void ResetBuffer();\r
-\r
-private :\r
-\r
-    friend class SoundStream;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int             mySource; ///< OpenAL source identifier\r
-    ResourcePtr<SoundBuffer> myBuffer; ///< Sound buffer bound to the source\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SOUND_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Audio/SoundBuffer.hpp b/dependencies64/sfml/include/SFML/Audio/SoundBuffer.hpp
deleted file mode 100644 (file)
index 023e5aa..0000000
+++ /dev/null
@@ -1,213 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOUNDBUFFER_HPP\r
-#define SFML_SOUNDBUFFER_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/Resource.hpp>\r
-#include <SFML/Audio/AudioResource.hpp>\r
-#include <string>\r
-#include <vector>\r
-#include <set>\r
-\r
-\r
-namespace sf\r
-{\r
-class Sound;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// SoundBuffer is the low-level for loading and manipulating\r
-/// sound buffers\r
-////////////////////////////////////////////////////////////\r
-class SFML_API SoundBuffer : public AudioResource, public Resource<SoundBuffer>\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SoundBuffer();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Copy constructor\r
-    ///\r
-    /// \param Copy : Instance to copy\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SoundBuffer(const SoundBuffer& Copy);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~SoundBuffer();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the sound buffer from a file\r
-    ///\r
-    /// \param Filename : Path of the sound file to load\r
-    ///\r
-    /// \return True if loading has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromFile(const std::string& Filename);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the sound buffer from a file in memory\r
-    ///\r
-    /// \param Data :        Pointer to the file data in memory\r
-    /// \param SizeInBytes : Size of the data to load, in bytes\r
-    ///\r
-    /// \return True if loading has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromMemory(const char* Data, std::size_t SizeInBytes);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the sound buffer from an array of samples - assumed format for\r
-    /// samples is 16 bits signed integer\r
-    ///\r
-    /// \param Samples :       Pointer to the samples in memory\r
-    /// \param SamplesCount :  Number of samples pointed by Samples\r
-    /// \param ChannelsCount : Number of channels (1 = mono, 2 = stereo, ...)\r
-    /// \param SampleRate :    Frequency (number of samples to play per second)\r
-    ///\r
-    /// \return True if loading has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromSamples(const Int16* Samples, std::size_t SamplesCount, unsigned int ChannelsCount, unsigned int SampleRate);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Save the sound buffer to a file\r
-    ///\r
-    /// \param Filename : Path of the sound file to write\r
-    ///\r
-    /// \return True if saving has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool SaveToFile(const std::string& Filename) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the sound samples\r
-    ///\r
-    /// \return Pointer to the array of sound samples, in 16 bits signed integer format\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Int16* GetSamples() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the samples count\r
-    ///\r
-    /// \return Number of samples\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    std::size_t GetSamplesCount() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the sample rate\r
-    ///\r
-    /// \return Sound frequency (number of samples per second)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetSampleRate() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the number of channels (1 = mono, 2 = stereo, ...)\r
-    ///\r
-    /// \return Number of channels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetChannelsCount() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the sound duration\r
-    ///\r
-    /// \return Sound duration, in seconds\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetDuration() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Assignment operator\r
-    ///\r
-    /// \param Other : Instance to assign\r
-    ///\r
-    /// \return Reference to the sound buffer\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SoundBuffer& operator =(const SoundBuffer& Other);\r
-\r
-private :\r
-\r
-    friend class Sound;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Update the internal buffer with the audio samples\r
-    ///\r
-    /// \param ChannelsCount : Number of channels\r
-    /// \param SampleRate :    Sample rate\r
-    ///\r
-    /// \return True on success\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool Update(unsigned int ChannelsCount, unsigned int SampleRate);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Add a sound to the list of sounds that use this buffer\r
-    ///\r
-    /// \param Instance : Sound object to attach\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void AttachSound(Sound* Instance) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Remove a sound from the list of sounds that use this buffer\r
-    ///\r
-    /// \param Instance : Sound object to detach\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void DetachSound(Sound* Instance) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Types\r
-    ////////////////////////////////////////////////////////////\r
-    typedef std::set<Sound*> SoundList; ///< Set of unique sound instances\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int       myBuffer;   ///< OpenAL buffer identifier\r
-    std::vector<Int16> mySamples;  ///< Samples buffer\r
-    float              myDuration; ///< Sound duration, in seconds\r
-    mutable SoundList  mySounds;   ///< List of sounds that are using this buffer\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SOUNDBUFFER_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Audio/SoundBufferRecorder.hpp b/dependencies64/sfml/include/SFML/Audio/SoundBufferRecorder.hpp
deleted file mode 100644 (file)
index e949a1c..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOUNDBUFFERRECORDER_HPP\r
-#define SFML_SOUNDBUFFERRECORDER_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Audio/SoundBuffer.hpp>\r
-#include <SFML/Audio/SoundRecorder.hpp>\r
-#include <vector>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Specialized SoundRecorder which saves the captured\r
-/// audio data into a sound buffer\r
-////////////////////////////////////////////////////////////\r
-class SFML_API SoundBufferRecorder : public SoundRecorder\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the sound buffer containing the captured audio data\r
-    ///\r
-    /// \return Constant reference to the sound buffer\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const SoundBuffer& GetBuffer() const;\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see SoundBuffer::OnStart\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool OnStart();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see SoundBuffer::OnProcessSamples\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool OnProcessSamples(const Int16* Samples, std::size_t SamplesCount);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see SoundBuffer::OnStop\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void OnStop();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    std::vector<Int16> mySamples; ///< Temporary sample buffer to hold the recorded data\r
-    SoundBuffer        myBuffer;  ///< Sound buffer that will contain the recorded data\r
-};\r
-\r
-} // namespace sf\r
-\r
-#endif // SFML_SOUNDBUFFERRECORDER_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Audio/SoundRecorder.hpp b/dependencies64/sfml/include/SFML/Audio/SoundRecorder.hpp
deleted file mode 100644 (file)
index 551a4b9..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOUNDRECORDER_HPP\r
-#define SFML_SOUNDRECORDER_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/Thread.hpp>\r
-#include <vector>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// SoundRecorder is an interface for capturing sound data,\r
-/// it is meant to be used as a base class\r
-////////////////////////////////////////////////////////////\r
-class SFML_API SoundRecorder : private Thread\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Virtual destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~SoundRecorder();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Start the capture.\r
-    /// Warning : only one capture can happen at the same time\r
-    ///\r
-    /// \param SampleRate : Sound frequency (the more samples, the higher the quality)\r
-    ///                    (44100 by default = CD quality)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Start(unsigned int SampleRate = 44100);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Stop the capture\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Stop();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the sample rate\r
-    ///\r
-    /// \return Frequency, in samples per second\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetSampleRate() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell if the system supports sound capture.\r
-    /// If not, this class won't be usable\r
-    ///\r
-    /// \return True if audio capture is supported\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static bool CanCapture();\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SoundRecorder();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Start recording audio data\r
-    ///\r
-    /// \return False to abort recording audio data, true to start\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool OnStart();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Process a new chunk of recorded samples\r
-    ///\r
-    /// \param Samples :      Pointer to the new chunk of recorded samples\r
-    /// \param SamplesCount : Number of samples pointed by Samples\r
-    ///\r
-    /// \return False to stop recording audio data, true to continue\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool OnProcessSamples(const Int16* Samples, std::size_t SamplesCount) = 0;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Stop recording audio data\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void OnStop();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see Thread::Run\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Run();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the available captured samples and process them\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void ProcessCapturedSamples();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Clean up the recorder internal resources\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void CleanUp();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    std::vector<Int16> mySamples;     ///< Buffer to store captured samples\r
-    unsigned int       mySampleRate;  ///< Sample rate\r
-    bool               myIsCapturing; ///< Capturing state\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SOUNDRECORDER_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Audio/SoundStream.hpp b/dependencies64/sfml/include/SFML/Audio/SoundStream.hpp
deleted file mode 100644 (file)
index 67b2bab..0000000
+++ /dev/null
@@ -1,228 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOUNDSTREAM_HPP\r
-#define SFML_SOUNDSTREAM_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Audio/Sound.hpp>\r
-#include <SFML/System/Thread.hpp>\r
-#include <cstdlib>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// SoundStream is a streamed sound, ie samples are acquired\r
-/// while the sound is playing. Use it for big sounds that would\r
-/// require hundreds of MB in memory (see Music),\r
-/// or for streaming sound from the network\r
-////////////////////////////////////////////////////////////\r
-class SFML_API SoundStream : private Thread, private Sound\r
-{\r
-public :\r
-\r
-    using Sound::Status;\r
-    using Sound::Stopped;\r
-    using Sound::Paused;\r
-    using Sound::Playing;\r
-    using Sound::Pause;\r
-    using Sound::SetPitch;\r
-    using Sound::SetVolume;\r
-    using Sound::SetPosition;\r
-    using Sound::SetRelativeToListener;\r
-    using Sound::SetMinDistance;\r
-    using Sound::SetAttenuation;\r
-    using Sound::GetPitch;\r
-    using Sound::GetVolume;\r
-    using Sound::GetPosition;\r
-    using Sound::IsRelativeToListener;\r
-    using Sound::GetMinDistance;\r
-    using Sound::GetAttenuation;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Structure defining a chunk of audio data to stream\r
-    ////////////////////////////////////////////////////////////\r
-    struct Chunk\r
-    {\r
-        const Int16* Samples;   ///< Pointer to the audio samples\r
-        std::size_t  NbSamples; ///< Number of samples pointed by Samples\r
-    };\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Virtual destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~SoundStream();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Start playing the audio stream\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Play();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Stop playing the audio stream\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Stop();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the number of channels (1 = mono, 2 = stereo)\r
-    ///\r
-    /// \return Number of channels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetChannelsCount() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the stream sample rate\r
-    ///\r
-    /// \return Stream frequency (number of samples per second)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetSampleRate() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the status of the stream (stopped, paused, playing)\r
-    ///\r
-    /// \return Current status of the sound\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Status GetStatus() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current playing position of the stream\r
-    ///\r
-    /// \return Current playing position, expressed in seconds\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetPlayingOffset() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the stream loop state.\r
-    /// This parameter is disabled by default\r
-    ///\r
-    /// \param Loop : True to play in loop, false to play once\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetLoop(bool Loop);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell whether or not the stream is looping\r
-    ///\r
-    /// \return True if the music is looping, false otherwise\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool GetLoop() const;\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SoundStream();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the audio stream parameters, you must call it before Play()\r
-    ///\r
-    /// \param ChannelsCount : Number of channels\r
-    /// \param SampleRate :    Sample rate\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Initialize(unsigned int ChannelsCount, unsigned int SampleRate);\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see Thread::Run\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Run();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Called when the sound restarts\r
-    ///\r
-    /// \return If false is returned, the playback is aborted\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool OnStart();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Called each time new audio data is needed to feed the stream\r
-    ///\r
-    /// \param Data : New chunk of data to stream\r
-    ///\r
-    /// \return True to continue playback, false to stop\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool OnGetData(Chunk& Data) = 0;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Fill a new buffer with audio data, and push it to the\r
-    /// playing queue\r
-    ///\r
-    /// \param Buffer : Number of the buffer to fill (in [0, BuffersCount])\r
-    ///\r
-    /// \return True if the derived class has requested to stop\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool FillAndPushBuffer(unsigned int BufferNum);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Fill the buffers queue with all available buffers\r
-    ///\r
-    /// \return True if the derived class has requested to stop\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool FillQueue();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Clear the queue of any remaining buffers\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void ClearQueue();\r
-\r
-    enum {BuffersCount = 3};\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    bool          myIsStreaming;              ///< Streaming state (true = playing, false = stopped)\r
-    unsigned int  myBuffers[BuffersCount];    ///< Sound buffers used to store temporary audio data\r
-    unsigned int  myChannelsCount;            ///< Number of channels (1 = mono, 2 = stereo, ...)\r
-    unsigned int  mySampleRate;               ///< Frequency (samples / second)\r
-    unsigned long myFormat;                   ///< Format of the internal sound buffers\r
-    bool          myLoop;                     ///< Loop flag (true to loop, false to play once)\r
-    unsigned int  mySamplesProcessed;         ///< Number of buffers processed since beginning of the stream\r
-    bool          myEndBuffers[BuffersCount]; ///< Each buffer is marked as "end buffer" or not, for proper duration calculation\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SOUNDSTREAM_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Config.hpp b/dependencies64/sfml/include/SFML/Config.hpp
deleted file mode 100644 (file)
index 84ec60f..0000000
+++ /dev/null
@@ -1,165 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_CONFIG_HPP\r
-#define SFML_CONFIG_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Identify the operating system\r
-////////////////////////////////////////////////////////////\r
-#if defined(_WIN32) || defined(__WIN32__)\r
-\r
-    // Windows\r
-    #define SFML_SYSTEM_WINDOWS\r
-    #ifndef WIN32_LEAN_AND_MEAN\r
-        #define WIN32_LEAN_AND_MEAN\r
-    #endif\r
-    #ifndef NOMINMAX\r
-        #define NOMINMAX\r
-    #endif\r
-\r
-#elif defined(linux) || defined(__linux)\r
-\r
-    // Linux\r
-    #define SFML_SYSTEM_LINUX\r
-\r
-#elif defined(__APPLE__) || defined(MACOSX) || defined(macintosh) || defined(Macintosh)\r
-\r
-    // MacOS\r
-    #define SFML_SYSTEM_MACOS\r
-\r
-#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)\r
-\r
-    // FreeBSD\r
-    #define SFML_SYSTEM_FREEBSD\r
-\r
-#else\r
-\r
-    // Unsupported system\r
-    #error This operating system is not supported by SFML library\r
-\r
-#endif\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-// Define a portable debug macro\r
-////////////////////////////////////////////////////////////\r
-#if !defined(NDEBUG)\r
-\r
-    #define SFML_DEBUG\r
-\r
-#endif\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-// Define portable import / export macros\r
-////////////////////////////////////////////////////////////\r
-#if defined(SFML_SYSTEM_WINDOWS)\r
-\r
-    #ifdef SFML_DYNAMIC\r
-\r
-        // Windows platforms\r
-        #ifdef SFML_EXPORTS\r
-\r
-            // From DLL side, we must export\r
-            #define SFML_API __declspec(dllexport)\r
-\r
-        #else\r
-\r
-            // From client application side, we must import\r
-            #define SFML_API __declspec(dllimport)\r
-\r
-        #endif\r
-\r
-        // For Visual C++ compilers, we also need to turn off this annoying C4251 warning.\r
-        // You can read lots ot different things about it, but the point is the code will\r
-        // just work fine, and so the simplest way to get rid of this warning is to disable it\r
-        #ifdef _MSC_VER\r
-\r
-            #pragma warning(disable : 4251)\r
-\r
-        #endif\r
-\r
-    #else\r
-\r
-        // No specific directive needed for static build\r
-        #define SFML_API\r
-\r
-    #endif\r
-\r
-#else\r
-\r
-    // Other platforms don't need to define anything\r
-    #define SFML_API\r
-\r
-#endif\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-// Define portable fixed-size types\r
-////////////////////////////////////////////////////////////\r
-#include <climits>\r
-\r
-namespace sf\r
-{\r
-    // 8 bits integer types\r
-    #if UCHAR_MAX == 0xFF\r
-        typedef signed   char Int8;\r
-        typedef unsigned char Uint8;\r
-    #else\r
-        #error No 8 bits integer type for this platform\r
-    #endif\r
-\r
-    // 16 bits integer types\r
-    #if USHRT_MAX == 0xFFFF\r
-        typedef signed   short Int16;\r
-        typedef unsigned short Uint16;\r
-    #elif UINT_MAX == 0xFFFF\r
-        typedef signed   int Int16;\r
-        typedef unsigned int Uint16;\r
-    #elif ULONG_MAX == 0xFFFF\r
-        typedef signed   long Int16;\r
-        typedef unsigned long Uint16;\r
-    #else\r
-        #error No 16 bits integer type for this platform\r
-    #endif\r
-\r
-    // 32 bits integer types\r
-    #if USHRT_MAX == 0xFFFFFFFF\r
-        typedef signed   short Int32;\r
-        typedef unsigned short Uint32;\r
-    #elif UINT_MAX == 0xFFFFFFFF\r
-        typedef signed   int Int32;\r
-        typedef unsigned int Uint32;\r
-    #elif ULONG_MAX == 0xFFFFFFFF\r
-        typedef signed   long Int32;\r
-        typedef unsigned long Uint32;\r
-    #else\r
-        #error No 32 bits integer type for this platform\r
-    #endif\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_CONFIG_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics.hpp b/dependencies64/sfml/include/SFML/Graphics.hpp
deleted file mode 100644 (file)
index ea4d846..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_GRAPHICS_HPP\r
-#define SFML_GRAPHICS_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-\r
-#include <SFML/Window.hpp>\r
-#include <SFML/Graphics/Color.hpp>\r
-#include <SFML/Graphics/Font.hpp>\r
-#include <SFML/Graphics/Glyph.hpp>\r
-#include <SFML/Graphics/Image.hpp>\r
-#include <SFML/Graphics/PostFX.hpp>\r
-#include <SFML/Graphics/RenderWindow.hpp>\r
-#include <SFML/Graphics/Shape.hpp>\r
-#include <SFML/Graphics/Sprite.hpp>\r
-#include <SFML/Graphics/String.hpp>\r
-#include <SFML/Graphics/View.hpp>\r
-\r
-\r
-#endif // SFML_GRAPHICS_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Color.hpp b/dependencies64/sfml/include/SFML/Graphics/Color.hpp
deleted file mode 100644 (file)
index 5f4d4d7..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_COLOR_HPP\r
-#define SFML_COLOR_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Color is an utility class for manipulating\r
-/// 32-bits RGBA colors\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Color\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Color();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the color from its 4 RGBA components\r
-    ///\r
-    /// \param R : Red component   (0 .. 255)\r
-    /// \param G : Green component (0 .. 255)\r
-    /// \param B : Blue component  (0 .. 255)\r
-    /// \param A : Alpha component (0 .. 255) (255 by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Color(Uint8 R, Uint8 G, Uint8 B, Uint8 A = 255);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Operator += overload to add a color\r
-    ///\r
-    /// \param Other : Color to add\r
-    ///\r
-    /// \return Component-wise saturated addition of the two colors\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Color& operator +=(const Color& Other);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Operator *= overload to modulate a color\r
-    ///\r
-    /// \param Other : Color to modulate\r
-    ///\r
-    /// \return Component-wise multiplication of the two colors\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Color& operator *=(const Color& Other);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Compare two colors (for equality)\r
-    ///\r
-    /// \param Other : Color to compare\r
-    ///\r
-    /// \return True if colors are equal\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator ==(const Color& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Compare two colors (for difference)\r
-    ///\r
-    /// \param Other : Color to compare\r
-    ///\r
-    /// \return True if colors are different\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator !=(const Color& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Static member data\r
-    ////////////////////////////////////////////////////////////\r
-    static const Color Black;   ///< Black predefined color\r
-    static const Color White;   ///< White predefined color\r
-    static const Color Red;     ///< Red predefined color\r
-    static const Color Green;   ///< Green predefined color\r
-    static const Color Blue;    ///< Blue predefined color\r
-    static const Color Yellow;  ///< Yellow predefined color\r
-    static const Color Magenta; ///< Magenta predefined color\r
-    static const Color Cyan;    ///< Cyan predefined color\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    Uint8 r; ///< Red component\r
-    Uint8 g; ///< Green component\r
-    Uint8 b; ///< Blue component\r
-    Uint8 a; ///< Alpha (transparency) component\r
-};\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator + overload to add two colors\r
-///\r
-/// \param Color1 : First color\r
-/// \param Color2 : Second color\r
-///\r
-/// \return Component-wise saturated addition of the two colors\r
-///\r
-////////////////////////////////////////////////////////////\r
-SFML_API Color operator +(const Color& Color1, const Color& Color2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload to modulate two colors\r
-///\r
-/// \param Color1 : First color\r
-/// \param Color2 : Second color\r
-///\r
-/// \return Component-wise multiplication of the two colors\r
-///\r
-////////////////////////////////////////////////////////////\r
-SFML_API Color operator *(const Color& Color1, const Color& Color2);\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_COLOR_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Drawable.hpp b/dependencies64/sfml/include/SFML/Graphics/Drawable.hpp
deleted file mode 100644 (file)
index a93ec57..0000000
+++ /dev/null
@@ -1,361 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_DRAWABLE_HPP\r
-#define SFML_DRAWABLE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/Vector2.hpp>\r
-#include <SFML/Graphics/Color.hpp>\r
-#include <SFML/Graphics/Matrix3.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-class RenderTarget;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Enumerate the blending modes for drawable objects\r
-////////////////////////////////////////////////////////////\r
-namespace Blend\r
-{\r
-    enum Mode\r
-    {\r
-        Alpha,    ///< Pixel = Src * a + Dest * (1 - a)\r
-        Add,      ///< Pixel = Src + Dest\r
-        Multiply, ///< Pixel = Src * Dest\r
-        None      ///< No blending\r
-    };\r
-}\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Abstract base class for every object that can be drawn\r
-/// into a render window\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Drawable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    /// \param Position : Position of the object (0, 0 by default)\r
-    /// \param Scale :    Scale factor (1, 1 by default)\r
-    /// \param Rotation : Orientation, in degrees (0 by default)\r
-    /// \param Col :      Color of the object (white by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Drawable(const Vector2f& Position = Vector2f(0, 0), const Vector2f& Scale = Vector2f(1, 1), float Rotation = 0.f, const Color& Col = Color(255, 255, 255, 255));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Virtual destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~Drawable();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the position of the object (take 2 values)\r
-    ///\r
-    /// \param X : New X coordinate\r
-    /// \param Y : New Y coordinate\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPosition(float X, float Y);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the position of the object (take a 2D vector)\r
-    ///\r
-    /// \param Position : New position\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPosition(const Vector2f& Position);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the X position of the object\r
-    ///\r
-    /// \param X : New X coordinate\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetX(float X);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the Y position of the object\r
-    ///\r
-    /// \param Y : New Y coordinate\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetY(float Y);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the scale of the object (take 2 values)\r
-    ///\r
-    /// \param ScaleX : New horizontal scale (must be strictly positive)\r
-    /// \param ScaleY : New vertical scale (must be strictly positive)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetScale(float ScaleX, float ScaleY);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the scale of the object (take a 2D vector)\r
-    ///\r
-    /// \param Scale : New scale (both values must be strictly positive)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetScale(const Vector2f& Scale);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the X scale factor of the object\r
-    ///\r
-    /// \param X : New X scale factor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetScaleX(float FactorX);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the Y scale factor of the object\r
-    ///\r
-    /// \param Y : New Y scale factor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetScaleY(float FactorY);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the center of the object, in coordinates relative to the\r
-    /// top-left of the object (take 2 values).\r
-    /// The default center is (0, 0)\r
-    ///\r
-    /// \param CenterX : X coordinate of the center\r
-    /// \param CenterY : Y coordinate of the center\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetCenter(float CenterX, float CenterY);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the center of the object, in coordinates relative to the\r
-    /// top-left of the object (take a 2D vector).\r
-    /// The default center is (0, 0)\r
-    ///\r
-    /// \param Center : New center\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetCenter(const Vector2f& Center);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the orientation of the object\r
-    ///\r
-    /// \param Rotation : Angle of rotation, in degrees\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetRotation(float Rotation);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the color of the object.\r
-    /// The default color is white\r
-    ///\r
-    /// \param Col : New color\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetColor(const Color& Col);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the blending mode for the object.\r
-    /// The default blend mode is Blend::Alpha\r
-    ///\r
-    /// \param Mode : New blending mode\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetBlendMode(Blend::Mode Mode);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the position of the object\r
-    ///\r
-    /// \return Current position\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Vector2f& GetPosition() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current scale of the object\r
-    ///\r
-    /// \return Current scale factor (always positive)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Vector2f& GetScale() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the center of the object\r
-    ///\r
-    /// \return Current position of the center\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Vector2f& GetCenter() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the orientation of the object.\r
-    /// Rotation is always in the range [0, 360]\r
-    ///\r
-    /// \return Current rotation, in degrees\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetRotation() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the color of the object\r
-    ///\r
-    /// \return Current color\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Color& GetColor() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current blending mode\r
-    ///\r
-    /// \return Current blending mode\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Blend::Mode GetBlendMode() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Move the object of a given offset (take 2 values)\r
-    ///\r
-    /// \param OffsetX : X offset\r
-    /// \param OffsetY : Y offset\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Move(float OffsetX, float OffsetY);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Move the object of a given offset (take a 2D vector)\r
-    ///\r
-    /// \param Offset : Amount of units to move the object of\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Move(const Vector2f& Offset);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Scale the object (take 2 values)\r
-    ///\r
-    /// \param FactorX : Scaling factor on X (must be strictly positive)\r
-    /// \param FactorY : Scaling factor on Y (must be strictly positive)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Scale(float FactorX, float FactorY);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Scale the object (take a 2D vector)\r
-    ///\r
-    /// \param Factor : Scaling factors (both values must be strictly positive)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Scale(const Vector2f& Factor);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Rotate the object\r
-    ///\r
-    /// \param Angle : Angle of rotation, in degrees\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Rotate(float Angle);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Transform a point from global coordinates into local coordinates\r
-    /// (ie it applies the inverse of object's center, translation, rotation and scale to the point)\r
-    ///\r
-    /// \param Point : Point to transform\r
-    ///\r
-    /// \return Transformed point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    sf::Vector2f TransformToLocal(const sf::Vector2f& Point) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Transform a point from local coordinates into global coordinates\r
-    /// (ie it applies the object's center, translation, rotation and scale to the point)\r
-    ///\r
-    /// \param Point : Point to transform\r
-    ///\r
-    /// \return Transformed point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    sf::Vector2f TransformToGlobal(const sf::Vector2f& Point) const;\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the transform matrix of the drawable\r
-    ///\r
-    /// \return Transform matrix\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Matrix3& GetMatrix() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the inverse transform matrix of the drawable\r
-    ///\r
-    /// \return Inverse transform matrix\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Matrix3& GetInverseMatrix() const;\r
-\r
-private :\r
-\r
-    friend class RenderTarget;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Draw the object into the specified window\r
-    ///\r
-    /// \param Target : Target into which render the object\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Draw(RenderTarget& Target) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Render the specific geometry of the object\r
-    ///\r
-    /// \param Target : Target into which render the object\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Render(RenderTarget& Target) const = 0;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    Vector2f        myPosition;      ///< Position of the object on screen\r
-    Vector2f        myScale;         ///< Scale of the object\r
-    Vector2f        myCenter;        ///< Origin of translation / rotation / scaling of the object\r
-    float           myRotation;      ///< Orientation of the object, in degrees\r
-    Color           myColor;         ///< Overlay color of the object\r
-    Blend::Mode     myBlendMode;     ///< Blending mode\r
-    mutable bool    myNeedUpdate;    ///< Do we need to recompute the transform matrix ?\r
-    mutable bool    myInvNeedUpdate; ///< Do we need to recompute the inverse transform matrix ?\r
-    mutable Matrix3 myMatrix;        ///< Precomputed transform matrix gathering the translation / rotation / scale / center\r
-    mutable Matrix3 myInvMatrix;     ///< Precomputed inverse transform matrix gathering the translation / rotation / scale / center\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_DRAWABLE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Font.hpp b/dependencies64/sfml/include/SFML/Graphics/Font.hpp
deleted file mode 100644 (file)
index 866b974..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_FONT_HPP\r
-#define SFML_FONT_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/Resource.hpp>\r
-#include <SFML/System/Vector2.hpp>\r
-#include <SFML/System/Unicode.hpp>\r
-#include <SFML/Graphics/Glyph.hpp>\r
-#include <SFML/Graphics/Image.hpp>\r
-#include <SFML/Graphics/Rect.hpp>\r
-#include <map>\r
-#include <string>\r
-\r
-\r
-namespace sf\r
-{\r
-class String;\r
-\r
-namespace priv\r
-{\r
-class FontLoader;\r
-}\r
-////////////////////////////////////////////////////////////\r
-/// Font is the low-level class for loading and\r
-/// manipulating character fonts. This class is meant to\r
-/// be used by sf::String\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Font : public Resource<Font>\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Font();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the font from a file\r
-    ///\r
-    /// \param Filename : Font file to load\r
-    /// \param CharSize : Size of characters in bitmap - the bigger, the higher quality (30 by default)\r
-    /// \param Charset :  Characters set to generate (by default, contains the ISO-8859-1 printable characters)\r
-    ///\r
-    /// \return True if loading was successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromFile(const std::string& Filename, unsigned int CharSize = 30, const Unicode::Text& Charset = ourDefaultCharset);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the font from a file in memory\r
-    ///\r
-    /// \param Data :        Pointer to the data to load\r
-    /// \param SizeInBytes : Size of the data, in bytes\r
-    /// \param CharSize :    Size of characters in bitmap - the bigger, the higher quality (30 by default)\r
-    /// \param Charset :     Characters set to generate (by default, contains the ISO-8859-1 printable characters)\r
-    ///\r
-    /// \return True if loading was successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromMemory(const char* Data, std::size_t SizeInBytes, unsigned int CharSize = 30, const Unicode::Text& Charset = ourDefaultCharset);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the base size of characters in the font;\r
-    /// All glyphs dimensions are based on this value\r
-    ///\r
-    /// \return Base size of characters\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetCharacterSize() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the description of a glyph (character)\r
-    /// given by its unicode value\r
-    ///\r
-    /// \param CodePoint : Unicode value of the character to get\r
-    ///\r
-    /// \return Glyph's visual settings, or an invalid glyph if character not found\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Glyph& GetGlyph(Uint32 CodePoint) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the image containing the rendered characters (glyphs)\r
-    ///\r
-    /// \return Image containing glyphs\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Image& GetImage() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the SFML default built-in font (Arial)\r
-    ///\r
-    /// \return Instance of the default font\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static const Font& GetDefaultFont();\r
-\r
-private :\r
-\r
-    friend class priv::FontLoader;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Static member data\r
-    ////////////////////////////////////////////////////////////\r
-    static Uint32 ourDefaultCharset[]; ///< The default charset (all printable ISO-8859-1 characters)\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    Image                   myTexture;  ///< Texture holding the bitmap font\r
-    unsigned int            myCharSize; ///< Size of characters in the bitmap font\r
-    std::map<Uint32, Glyph> myGlyphs;   ///< Rendering settings of each character (glyph)\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_FONT_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Glyph.hpp b/dependencies64/sfml/include/SFML/Graphics/Glyph.hpp
deleted file mode 100644 (file)
index ec1b886..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_GLYPH_HPP\r
-#define SFML_GLYPH_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <SFML/Graphics/Rect.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Structure describing a glyph (a visual character)\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Glyph\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Glyph() : Advance(0) {}\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    int       Advance;   ///< Offset to move horizontically to the next character\r
-    IntRect   Rectangle; ///< Bounding rectangle of the glyph, in relative coordinates\r
-    FloatRect TexCoords; ///< Texture coordinates of the glyph inside the bitmap font\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_GLYPH_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Image.hpp b/dependencies64/sfml/include/SFML/Graphics/Image.hpp
deleted file mode 100644 (file)
index c2f5c89..0000000
+++ /dev/null
@@ -1,332 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_IMAGE_HPP\r
-#define SFML_IMAGE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/Resource.hpp>\r
-#include <SFML/Graphics/Color.hpp>\r
-#include <SFML/Graphics/Rect.hpp>\r
-#include <string>\r
-#include <vector>\r
-\r
-\r
-namespace sf\r
-{\r
-class RenderWindow;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Image is the low-level class for loading and\r
-/// manipulating images\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Image : public Resource<Image>\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Image();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Copy constructor\r
-    ///\r
-    /// \param Copy : instance to copy\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Image(const Image& Copy);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct an empty image\r
-    ///\r
-    /// \param Width :  Image width\r
-    /// \param Height : Image height\r
-    /// \param Col :    Image color (black by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Image(unsigned int Width, unsigned int Height, const Color& Col = Color(0, 0, 0, 255));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the image from pixels in memory\r
-    ///\r
-    /// \param Width :  Image width\r
-    /// \param Height : Image height\r
-    /// \param Data :   Pointer to the pixels in memory (assumed format is RGBA)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Image(unsigned int Width, unsigned int Height, const Uint8* Data);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~Image();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the image from a file\r
-    ///\r
-    /// \param Filename : Path of the image file to load\r
-    ///\r
-    /// \return True if loading was successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromFile(const std::string& Filename);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the image from a file in memory\r
-    ///\r
-    /// \param Data :        Pointer to the file data in memory\r
-    /// \param SizeInBytes : Size of the data to load, in bytes\r
-    ///\r
-    /// \return True if loading was successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromMemory(const char* Data, std::size_t SizeInBytes);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the image directly from an array of pixels\r
-    ///\r
-    /// \param Width :  Image width\r
-    /// \param Height : Image height\r
-    /// \param Data :   Pointer to the pixels in memory (assumed format is RGBA)\r
-    ///\r
-    /// \return True if loading was successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromPixels(unsigned int Width, unsigned int Height, const Uint8* Data);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Save the content of the image to a file\r
-    ///\r
-    /// \param Filename : Path of the file to save (overwritten if already exist)\r
-    ///\r
-    /// \return True if saving was successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool SaveToFile(const std::string& Filename) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create an empty image\r
-    ///\r
-    /// \param Width :  Image width\r
-    /// \param Height : Image height\r
-    /// \param Col :    Image color (black by default)\r
-    ///\r
-    /// \return True if creation was successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool Create(unsigned int Width, unsigned int Height, Color Col = Color(0, 0, 0, 255));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create transparency mask from a specified colorkey\r
-    ///\r
-    /// \param ColorKey : Color to become transparent\r
-    /// \param Alpha :    Alpha value to use for transparent pixels (0 by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void CreateMaskFromColor(Color ColorKey, Uint8 Alpha = 0);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Copy pixels from another image onto this one.\r
-    /// This function does a slow pixel copy and should only\r
-    /// be used at initialization time\r
-    ///\r
-    /// \param Source :     Source image to copy\r
-    /// \param DestX :      X coordinate of the destination position\r
-    /// \param DestY :      Y coordinate of the destination position\r
-    /// \param SourceRect : Sub-rectangle of the source image to copy (empty by default - entire image)\r
-    /// \param ApplyAlpha : Should the copy take in account the source transparency? (false by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Copy(const Image& Source, unsigned int DestX, unsigned int DestY, const IntRect& SourceRect = IntRect(0, 0, 0, 0), bool ApplyAlpha = false);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create the image from the current contents of the\r
-    /// given window\r
-    ///\r
-    /// \param Window :     Window to capture\r
-    /// \param SourceRect : Sub-rectangle of the screen to copy (empty by default - entire image)\r
-    ///\r
-    /// \return True if copy was successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool CopyScreen(RenderWindow& Window, const IntRect& SourceRect = IntRect(0, 0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the color of a pixel\r
-    ///\r
-    /// \param X :   X coordinate of pixel in the image\r
-    /// \param Y :   Y coordinate of pixel in the image\r
-    /// \param Col : New color for pixel (X, Y)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPixel(unsigned int X, unsigned int Y, const Color& Col);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get a pixel from the image\r
-    ///\r
-    /// \param X : X coordinate of pixel in the image\r
-    /// \param Y : Y coordinate of pixel in the image\r
-    ///\r
-    /// \return Color of pixel (X, Y)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Color& GetPixel(unsigned int X, unsigned int Y) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get a read-only pointer to the array of pixels (RGBA 8 bits integers components)\r
-    /// Array size is GetWidth() x GetHeight() x 4\r
-    /// This pointer becomes invalid if you reload or resize the image\r
-    ///\r
-    /// \return Const pointer to the array of pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Uint8* GetPixelsPtr() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Bind the image for rendering\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Bind() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Enable or disable image smooth filter.\r
-    /// This parameter is enabled by default\r
-    ///\r
-    /// \param Smooth : True to enable smoothing filter, false to disable it\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetSmooth(bool Smooth);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the width of the image\r
-    ///\r
-    /// \return Width in pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetWidth() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the height of the image\r
-    ///\r
-    /// \return Height in pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetHeight() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tells whether the smooth filtering is enabled or not\r
-    ///\r
-    /// \return True if image smoothing is enabled\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsSmooth() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Convert a subrect expressed in pixels, into float\r
-    /// texture coordinates\r
-    ///\r
-    /// \param Rect : Sub-rectangle of image to convert\r
-    ///\r
-    /// \return Texture coordinates corresponding to the sub-rectangle\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    FloatRect GetTexCoords(const IntRect& Rect) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get a valid texture size according to hardware support\r
-    ///\r
-    /// \param Size : Size to convert\r
-    ///\r
-    /// \return Valid nearest size (greater than or equal to specified size)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static unsigned int GetValidTextureSize(unsigned int Size);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Assignment operator\r
-    ///\r
-    /// \param Other : instance to assign\r
-    ///\r
-    /// \return Reference to the image\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Image& operator =(const Image& Other);\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create the OpenGL texture\r
-    ///\r
-    /// \return True if texture has been successfully created\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool CreateTexture();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Make sure the texture in video memory is updated with the\r
-    /// array of pixels\r
-    ////////////////////////////////////////////////////////////\r
-    void EnsureTextureUpdate() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Make sure the array of pixels is updated with the\r
-    /// texture in video memory\r
-    ////////////////////////////////////////////////////////////\r
-    void EnsureArrayUpdate() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Reset the image attributes\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Reset();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destroy the OpenGL texture\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void DestroyTexture();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int               myWidth;             ///< Image width\r
-    unsigned int               myHeight;            ///< Image Height\r
-    unsigned int               myTextureWidth;      ///< Actual texture width (can be greater than image width because of padding)\r
-    unsigned int               myTextureHeight;     ///< Actual texture height (can be greater than image height because of padding)\r
-    unsigned int               myTexture;           ///< Internal texture identifier\r
-    bool                       myIsSmooth;          ///< Status of the smooth filter\r
-    mutable std::vector<Color> myPixels;            ///< Pixels of the image\r
-    mutable bool               myNeedTextureUpdate; ///< Status of synchronization between pixels in central memory and the internal texture un video memory\r
-    mutable bool               myNeedArrayUpdate;   ///< Status of synchronization between pixels in central memory and the internal texture un video memory\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_IMAGE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Matrix3.hpp b/dependencies64/sfml/include/SFML/Graphics/Matrix3.hpp
deleted file mode 100644 (file)
index eeea1b0..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_MATRIX3_HPP\r
-#define SFML_MATRIX3_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <SFML/System/Vector2.hpp>\r
-#include <math.h>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Utility class to manipulate 3x3 matrices representing\r
-/// 2D transformations\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Matrix3\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor (builds an identity matrix)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Matrix3();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct a matrix from its 9 elements\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Matrix3(float a00, float a01, float a02,\r
-            float a10, float a11, float a12,\r
-            float a20, float a21, float a22);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Build a matrix from a set of transformations\r
-    ///\r
-    /// \param Center :      Origin for the transformations\r
-    /// \param Translation : Translation offset\r
-    /// \param Rotation :    Rotation angle in degrees\r
-    /// \param Scale :       Scaling factors\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetFromTransformations(const Vector2f& Center, const Vector2f& Translation, float Rotation, const Vector2f& Scale);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Transform a point by the matrix\r
-    ///\r
-    /// \param Point : Point to transform\r
-    ///\r
-    /// \return Transformed point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Vector2f Transform(const Vector2f& Point) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the inverse of the matrix\r
-    ///\r
-    /// \return A new matrix which is the inverse of this\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Matrix3 GetInverse() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the elements of the matrix as a 4x4,\r
-    /// in an array of 16 floats\r
-    ///\r
-    /// \return Pointer to the 4x4 matrix elements\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const float* Get4x4Elements() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Operator () overloads to access the matrix elements\r
-    ///\r
-    /// \param Row : Element row (0 based)\r
-    /// \param Col : Element column (0 based)\r
-    ///\r
-    /// \return Matrix element (Row, Col)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float  operator ()(unsigned int Row, unsigned int Col) const;\r
-    float& operator ()(unsigned int Row, unsigned int Col);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Operator * overload to multiply two matrices\r
-    ///\r
-    /// \param Mat : Matrix to multiply\r
-    ///\r
-    /// \return this * Mat\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Matrix3 operator *(const Matrix3& Mat) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Operator *= overload to multiply-assign two matrices\r
-    ///\r
-    /// \param Mat : Matrix to multiply\r
-    ///\r
-    /// \return this * Mat\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Matrix3& operator *=(const Matrix3& Mat);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Static member data\r
-    ////////////////////////////////////////////////////////////\r
-    static const Matrix3 Identity; ///< Identity matrix\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    float myData[16]; /// Matrix elements (we directly store it as a 4x4 matrix for optimization purpose)\r
-};\r
-\r
-#include <SFML/Graphics/Matrix3.inl>\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_MATRIX3_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Matrix3.inl b/dependencies64/sfml/include/SFML/Graphics/Matrix3.inl
deleted file mode 100644 (file)
index 4499415..0000000
+++ /dev/null
@@ -1,186 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFGE - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Default constructor (builds an identity matrix)\r
-////////////////////////////////////////////////////////////\r
-inline Matrix3::Matrix3()\r
-{\r
-    myData[0] = 1.f; myData[4] = 0.f; myData[8]  = 0.f; myData[12] = 0.f;\r
-    myData[1] = 0.f; myData[5] = 1.f; myData[9]  = 0.f; myData[13] = 0.f;\r
-    myData[2] = 0.f; myData[6] = 0.f; myData[10] = 1.f; myData[14] = 0.f;\r
-    myData[3] = 0.f; myData[7] = 0.f; myData[11] = 0.f; myData[15] = 1.f;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Construct a matrix from its 9 elements\r
-////////////////////////////////////////////////////////////\r
-inline Matrix3::Matrix3(float a00, float a01, float a02,\r
-                        float a10, float a11, float a12,\r
-                        float a20, float a21, float a22)\r
-{\r
-    myData[0] = a00; myData[4] = a01; myData[8]  = 0.f; myData[12] = a02;\r
-    myData[1] = a10; myData[5] = a11; myData[9]  = 0.f; myData[13] = a12;\r
-    myData[2] = 0.f; myData[6] = 0.f; myData[10] = 1.f; myData[14] = 0.f;\r
-    myData[3] = a20; myData[7] = a21; myData[11] = 0.f; myData[15] = a22;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Build a matrix from a set of transformations\r
-////////////////////////////////////////////////////////////\r
-inline void Matrix3::SetFromTransformations(const Vector2f& Center, const Vector2f& Translation, float Rotation, const Vector2f& Scale)\r
-{\r
-    float Angle = Rotation * 3.141592654f / 180.f;\r
-    float Cos   = static_cast<float>(cos(Angle));\r
-    float Sin   = static_cast<float>(sin(Angle));\r
-    float SxCos = Scale.x * Cos;\r
-    float SyCos = Scale.y * Cos;\r
-    float SxSin = Scale.x * Sin;\r
-    float SySin = Scale.y * Sin;\r
-    float Tx    = -Center.x * SxCos - Center.y * SySin + Translation.x;\r
-    float Ty    =  Center.x * SxSin - Center.y * SyCos + Translation.y;\r
-\r
-    myData[0] =  SxCos; myData[4] = SySin; myData[8]  = 0.f; myData[12] = Tx;\r
-    myData[1] = -SxSin; myData[5] = SyCos; myData[9]  = 0.f; myData[13] = Ty;\r
-    myData[2] =  0.f;   myData[6] = 0.f;   myData[10] = 1.f; myData[14] = 0.f;\r
-    myData[3] =  0.f;   myData[7] = 0.f;   myData[11] = 0.f; myData[15] = 1.f;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Transform a point by the matrix\r
-////////////////////////////////////////////////////////////\r
-inline Vector2f Matrix3::Transform(const Vector2f& Point) const\r
-{\r
-    return Vector2f(myData[0] * Point.x + myData[4] * Point.y + myData[12],\r
-                    myData[1] * Point.x + myData[5] * Point.y + myData[13]);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Return the inverse of the matrix\r
-////////////////////////////////////////////////////////////\r
-inline Matrix3 Matrix3::GetInverse() const\r
-{\r
-    // Compute the determinant\r
-    float Det = myData[0] * (myData[15] * myData[5] - myData[7] * myData[13]) -\r
-                myData[1] * (myData[15] * myData[4] - myData[7] * myData[12]) +\r
-                myData[3] * (myData[13] * myData[4] - myData[5] * myData[12]);\r
-\r
-    // Compute the inverse if determinant is not zero\r
-    if ((Det < -1E-7f) || (Det > 1E-7f))\r
-    {\r
-        return Matrix3( (myData[15] * myData[5] - myData[7] * myData[13]) / Det,\r
-                       -(myData[15] * myData[4] - myData[7] * myData[12]) / Det,\r
-                        (myData[13] * myData[4] - myData[5] * myData[12]) / Det,\r
-                       -(myData[15] * myData[1] - myData[3] * myData[13]) / Det,\r
-                        (myData[15] * myData[0] - myData[3] * myData[12]) / Det,\r
-                       -(myData[13] * myData[0] - myData[1] * myData[12]) / Det,\r
-                        (myData[7]  * myData[1] - myData[3] * myData[5])  / Det,\r
-                       -(myData[7]  * myData[0] - myData[3] * myData[4])  / Det,\r
-                        (myData[5]  * myData[0] - myData[1] * myData[4])  / Det);\r
-    }\r
-    else\r
-    {\r
-        return Identity;\r
-    }\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Return the elements of the matrix as a 4x4,\r
-/// in an array of 16 floats\r
-////////////////////////////////////////////////////////////\r
-inline const float* Matrix3::Get4x4Elements() const\r
-{\r
-    return myData;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator () overloads to access the matrix elements\r
-////////////////////////////////////////////////////////////\r
-inline float Matrix3::operator ()(unsigned int Row, unsigned int Col) const\r
-{\r
-    switch (Row + Col * 3)\r
-    {\r
-        case 0 : return myData[0];\r
-        case 1 : return myData[1];\r
-        case 2 : return myData[3];\r
-        case 3 : return myData[4];\r
-        case 4 : return myData[5];\r
-        case 5 : return myData[7];\r
-        case 6 : return myData[12];\r
-        case 7 : return myData[13];\r
-        case 8 : return myData[15];\r
-\r
-        default : return myData[0];\r
-    }\r
-}\r
-inline float& Matrix3::operator ()(unsigned int Row, unsigned int Col)\r
-{\r
-    switch (Row + Col * 3)\r
-    {\r
-        case 0 : return myData[0];\r
-        case 1 : return myData[1];\r
-        case 2 : return myData[3];\r
-        case 3 : return myData[4];\r
-        case 4 : return myData[5];\r
-        case 5 : return myData[7];\r
-        case 6 : return myData[12];\r
-        case 7 : return myData[13];\r
-        case 8 : return myData[15];\r
-\r
-        default : return myData[0];\r
-    }\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload to multiply two matrices\r
-////////////////////////////////////////////////////////////\r
-inline Matrix3 Matrix3::operator *(const Matrix3& Mat) const\r
-{\r
-    return Matrix3(myData[0] * Mat.myData[0]  + myData[4] * Mat.myData[1]  + myData[12] * Mat.myData[3],\r
-                   myData[0] * Mat.myData[4]  + myData[4] * Mat.myData[5]  + myData[12] * Mat.myData[7],\r
-                   myData[0] * Mat.myData[12] + myData[4] * Mat.myData[13] + myData[12] * Mat.myData[15],\r
-                   myData[1] * Mat.myData[0]  + myData[5] * Mat.myData[1]  + myData[13] * Mat.myData[3],\r
-                   myData[1] * Mat.myData[4]  + myData[5] * Mat.myData[5]  + myData[13] * Mat.myData[7],\r
-                   myData[1] * Mat.myData[12] + myData[5] * Mat.myData[13] + myData[13] * Mat.myData[15],\r
-                   myData[3] * Mat.myData[0]  + myData[7] * Mat.myData[1]  + myData[15] * Mat.myData[3],\r
-                   myData[3] * Mat.myData[4]  + myData[7] * Mat.myData[5]  + myData[15] * Mat.myData[7],\r
-                   myData[3] * Mat.myData[12] + myData[7] * Mat.myData[13] + myData[15] * Mat.myData[15]);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator *= overload to multiply-assign two matrices\r
-////////////////////////////////////////////////////////////\r
-inline Matrix3& Matrix3::operator *=(const Matrix3& Mat)\r
-{\r
-    return *this = *this * Mat;\r
-}\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/PostFX.hpp b/dependencies64/sfml/include/SFML/Graphics/PostFX.hpp
deleted file mode 100644 (file)
index c875377..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_POSTFX_HPP\r
-#define SFML_POSTFX_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Graphics/Drawable.hpp>\r
-#include <SFML/Graphics/Image.hpp>\r
-#include <istream>\r
-#include <map>\r
-#include <string>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// PostFX is used to apply a post effect to a window\r
-////////////////////////////////////////////////////////////\r
-class SFML_API PostFX : public Drawable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    PostFX();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Copy constructor\r
-    ///\r
-    /// \param Copy : Instance to copy\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    PostFX(const PostFX& Copy);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~PostFX();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the effect from a file\r
-    ///\r
-    /// \param Filename : Path of the effect file to load\r
-    ///\r
-    /// \return True on success\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromFile(const std::string& Filename);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Load the effect from a text in memory\r
-    ///\r
-    /// \param Effect : String containing the effect code\r
-    ///\r
-    /// \return True on success\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool LoadFromMemory(const std::string& Effect);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change a parameter of the effect (1 float)\r
-    ///\r
-    /// \param Name : Parameter name in the effect\r
-    /// \param X :    Value to assign\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetParameter(const std::string& Name, float X);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change a parameter of the effect (2 floats)\r
-    ///\r
-    /// \param Name : Parameter name in the effect\r
-    /// \param X, Y : Values to assign\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetParameter(const std::string& Name, float X, float Y);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change a parameter of the effect (3 floats)\r
-    ///\r
-    /// \param Name :    Parameter name in the effect\r
-    /// \param X, Y, Z : Values to assign\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetParameter(const std::string& Name, float X, float Y, float Z);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change a parameter of the effect (4 floats)\r
-    ///\r
-    /// \param Name :       Parameter name in the effect\r
-    /// \param X, Y, Z, W : Values to assign\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetParameter(const std::string& Name, float X, float Y, float Z, float W);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set a texture parameter\r
-    ///\r
-    /// \param Name :    Texture name in the effect\r
-    /// \param Texture : Image to set (pass NULL to use content of current framebuffer)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetTexture(const std::string& Name, Image* Texture);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Assignment operator\r
-    ///\r
-    /// \param Other : Instance to assign\r
-    ///\r
-    /// \return Reference to the post-effect\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    PostFX& operator =(const PostFX& Other);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell whether or not the system supports post-effects\r
-    ///\r
-    /// \return True if the system can use post-effects\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static bool CanUsePostFX();\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see Drawable::Render\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Render(RenderTarget& Target) const;\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Preprocess a SFML effect file\r
-    /// to convert it to a valid GLSL fragment shader\r
-    ///\r
-    /// \param File : Stream containing the code to process\r
-    ///\r
-    /// \return Valid fragment shader source code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static std::string PreprocessEffect(std::istream& File);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create the program and attach the shaders\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void CreateProgram();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Types\r
-    ////////////////////////////////////////////////////////////\r
-    typedef std::map<std::string, const Image*> TextureTable;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int  myShaderProgram;  ///< OpenGL identifier for the program\r
-    TextureTable  myTextures;       ///< Texture variables in the effect\r
-    std::string   myFragmentShader; ///< Fragment shader source code\r
-    mutable Image myFrameBuffer;    ///< Texture containing the current frame buffer\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_POSTFX_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Rect.hpp b/dependencies64/sfml/include/SFML/Graphics/Rect.hpp
deleted file mode 100644 (file)
index 5decd3c..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_RECT_HPP\r
-#define SFML_RECT_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <algorithm>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Rect is an utility class for manipulating rectangles.\r
-/// Template parameter defines the type of coordinates (integer, float, ...)\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-class Rect\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Rect();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the rectangle from its coordinates\r
-    ///\r
-    /// \param LeftCoord :   Left coordinate of the rectangle\r
-    /// \param TopCoord :    Top coordinate of the rectangle\r
-    /// \param RightCoord :  Right coordinate of the rectangle\r
-    /// \param BottomCoord : Bottom coordinate of the rectangle\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Rect(T LeftCoord, T TopCoord, T RightCoord, T BottomCoord);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the width of the rectangle\r
-    ///\r
-    /// \return Width of rectangle\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    T GetWidth() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the height of the rectangle\r
-    ///\r
-    /// \return Height of rectangle\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    T GetHeight() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Move the whole rectangle by the given offset\r
-    ///\r
-    /// \param OffsetX : Horizontal offset\r
-    /// \param OffsetY : Vertical offset\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Offset(T OffsetX, T OffsetY);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Check if a point is inside the rectangle's area\r
-    ///\r
-    /// \param X : X coordinate of the point to test\r
-    /// \param Y : Y coordinate of the point to test\r
-    ///\r
-    /// \return True if the point is inside\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool Contains(T X, T Y) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Check intersection between two rectangles\r
-    ///\r
-    /// \param Rectangle :       Rectangle to test\r
-    /// \param OverlappingRect : Rectangle to be filled with overlapping rect (NULL by default)\r
-    ///\r
-    /// \return True if rectangles overlap\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool Intersects(const Rect<T>& Rectangle, Rect<T>* OverlappingRect = NULL) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    T Left;   ///< Left coordinate of the rectangle\r
-    T Top;    ///< Top coordinate of the rectangle\r
-    T Right;  ///< Right coordinate of the rectangle\r
-    T Bottom; ///< Bottom coordinate of the rectangle\r
-};\r
-\r
-#include <SFML/Graphics/Rect.inl>\r
-\r
-// Define the most common types\r
-typedef Rect<int>   IntRect;\r
-typedef Rect<float> FloatRect;\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_RECT_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Rect.inl b/dependencies64/sfml/include/SFML/Graphics/Rect.inl
deleted file mode 100644 (file)
index 6c5962d..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Default constructor\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Rect<T>::Rect() :\r
-Left  (0),\r
-Top   (0),\r
-Right (0),\r
-Bottom(0)\r
-{\r
-\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Construct the color from its coordinates\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Rect<T>::Rect(T LeftCoord, T TopCoord, T RightCoord, T BottomCoord) :\r
-Left  (LeftCoord),\r
-Top   (TopCoord),\r
-Right (RightCoord),\r
-Bottom(BottomCoord)\r
-{\r
-\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Get the width of the rectangle\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-T Rect<T>::GetWidth() const\r
-{\r
-    return Right - Left;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Get the height of the rectangle\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-T Rect<T>::GetHeight() const\r
-{\r
-    return Bottom - Top;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Move the whole rectangle by the given offset\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-void Rect<T>::Offset(T OffsetX, T OffsetY)\r
-{\r
-    Left   += OffsetX;\r
-    Right  += OffsetX;\r
-    Top    += OffsetY;\r
-    Bottom += OffsetY;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Check if a point is inside the rectangle's area\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool Rect<T>::Contains(T X, T Y) const\r
-{\r
-    return (X >= Left) && (X <= Right) && (Y >= Top) && (Y <= Bottom);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Check intersection between two rectangles\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool Rect<T>::Intersects(const Rect<T>& Rectangle, Rect<T>* OverlappingRect) const\r
-{\r
-    // Compute overlapping rect\r
-    Rect Overlapping(std::max(Left,   Rectangle.Left),\r
-                     std::max(Top,    Rectangle.Top),\r
-                     std::min(Right,  Rectangle.Right),\r
-                     std::min(Bottom, Rectangle.Bottom));\r
-\r
-    // If overlapping rect is valid, then there is intersection\r
-    if ((Overlapping.Left < Overlapping.Right) && (Overlapping.Top < Overlapping.Bottom))\r
-    {\r
-        if (OverlappingRect)\r
-            *OverlappingRect = Overlapping;\r
-        return true;\r
-    }\r
-    else\r
-    {\r
-        if (OverlappingRect)\r
-            *OverlappingRect = Rect(0, 0, 0, 0);\r
-        return false;\r
-    }\r
-}\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/RenderTarget.hpp b/dependencies64/sfml/include/SFML/Graphics/RenderTarget.hpp
deleted file mode 100644 (file)
index ea303d9..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_RENDERTARGET_HPP\r
-#define SFML_RENDERTARGET_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Graphics/Color.hpp>\r
-#include <SFML/Graphics/View.hpp>\r
-#include <SFML/Graphics/Rect.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-class Drawable;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Base class for all render targets (window, image, ...)\r
-////////////////////////////////////////////////////////////\r
-class SFML_API RenderTarget\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~RenderTarget();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Clear the entire target with a single color\r
-    ///\r
-    /// \param FillColor : Color to use to clear the render target\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Clear(const Color& FillColor = Color(0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Draw something into the target\r
-    ///\r
-    /// \param Object : Object to draw\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Draw(const Drawable& Object);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the width of the rendering region of the target\r
-    ///\r
-    /// \return Width in pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual unsigned int GetWidth() const = 0;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the height of the rendering region of the target\r
-    ///\r
-    /// \return Height in pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual unsigned int GetHeight() const = 0;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the current active view.\r
-    ///\r
-    /// \param NewView : New view to use (pass GetDefaultView() to set the default view)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetView(const View& NewView);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current view\r
-    ///\r
-    /// \return Current view active in the window\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const View& GetView() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the default view of the window for read / write\r
-    ///\r
-    /// \return Default view\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    View& GetDefaultView();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell SFML to preserve external OpenGL states, at the expense of\r
-    /// more CPU charge. Use this function if you don't want SFML\r
-    /// to mess up your own OpenGL states (if any).\r
-    /// Don't enable state preservation if not needed, as it will allow\r
-    /// SFML to do internal optimizations and improve performances.\r
-    /// This parameter is false by default\r
-    ///\r
-    /// \param Preserve : True to preserve OpenGL states, false to let SFML optimize\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void PreserveOpenGLStates(bool Preserve);\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    RenderTarget();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Called by the derived class when it's ready to be initialized\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Initialize();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Activate the target for rendering\r
-    ///\r
-    /// \param Active : True to activate rendering, false to deactivate\r
-    ///\r
-    /// \return True if activation succeeded\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool Activate(bool Active) = 0;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the OpenGL render states needed for the SFML rendering\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetRenderStates();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    View        myDefaultView;    ///< Default view\r
-    const View* myCurrentView;    ///< Current active view\r
-    bool        myPreserveStates; ///< Should we preserve external OpenGL states ?\r
-    bool        myIsDrawing;      ///< True when Draw is called from inside, to allow some renderstates optimizations\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_RENDERTARGET_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/RenderWindow.hpp b/dependencies64/sfml/include/SFML/Graphics/RenderWindow.hpp
deleted file mode 100644 (file)
index 088e368..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_RENDERWINDOW_HPP\r
-#define SFML_RENDERWINDOW_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Graphics/Image.hpp>\r
-#include <SFML/Graphics/RenderTarget.hpp>\r
-#include <SFML/Window/Window.hpp>\r
-#include <string>\r
-\r
-\r
-namespace sf\r
-{\r
-class Drawable;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Simple wrapper for sf::Window that allows easy\r
-/// 2D rendering\r
-////////////////////////////////////////////////////////////\r
-class SFML_API RenderWindow : public Window, public RenderTarget\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    RenderWindow();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the window\r
-    ///\r
-    /// \param Mode :        Video mode to use\r
-    /// \param Title :       Title of the window\r
-    /// \param WindowStyle : Window style, see sf::Style (Resize | Close by default)\r
-    /// \param Params :      Creation parameters (see default constructor for default values)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    RenderWindow(VideoMode Mode, const std::string& Title, unsigned long WindowStyle = Style::Resize | Style::Close, const WindowSettings& Params = WindowSettings());\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the window from an existing control\r
-    ///\r
-    /// \param Handle : Platform-specific handle of the control\r
-    /// \param Params : Creation parameters (see default constructor for default values)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    RenderWindow(WindowHandle Handle, const WindowSettings& Params = WindowSettings());\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~RenderWindow();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the width of the rendering region of the window\r
-    ///\r
-    /// \return Width in pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual unsigned int GetWidth() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the height of the rendering region of the window\r
-    ///\r
-    /// \return Height in pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual unsigned int GetHeight() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Save the content of the window to an image\r
-    ///\r
-    /// \return Image instance containing the contents of the screen\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Image Capture() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Convert a point in window coordinates into view coordinates\r
-    ///\r
-    /// \param WindowX :    X coordinate of the point to convert, relative to the window\r
-    /// \param WindowY :    Y coordinate of the point to convert, relative to the window\r
-    /// \param TargetView : Target view to convert the point to (NULL by default -- uses the current view)\r
-    ///\r
-    /// \return Converted point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    sf::Vector2f ConvertCoords(unsigned int WindowX, unsigned int WindowY, const View* TargetView = NULL) const;\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see Window::OnCreate\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void OnCreate();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see RenderTarget::Activate\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual bool Activate(bool Active);\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_RENDERWINDOW_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Shape.hpp b/dependencies64/sfml/include/SFML/Graphics/Shape.hpp
deleted file mode 100644 (file)
index 37fb3c4..0000000
+++ /dev/null
@@ -1,310 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SHAPE_HPP\r
-#define SFML_SHAPE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Graphics/Drawable.hpp>\r
-#include <SFML/System/Vector2.hpp>\r
-#include <vector>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Shape defines a drawable convex shape ; it also defines\r
-/// helper functions to draw simple shapes like\r
-/// lines, rectangles, circles, etc.\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Shape : public sf::Drawable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Shape();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Add a point to the shape\r
-    ///\r
-    /// \param X, Y :       Position of the point\r
-    /// \param Col :        Color of the point (white by default)\r
-    /// \param OutlineCol : Outline color of the point (black by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void AddPoint(float X, float Y, const Color& Col = Color(255, 255, 255), const Color& OutlineCol = Color(0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Add a point to the shape\r
-    ///\r
-    /// \param Position :   Position of the point\r
-    /// \param Col :        Color of the point (white by default)\r
-    /// \param OutlineCol : Outline color of the point (black by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void AddPoint(const Vector2f& Position, const Color& Col = Color(255, 255, 255), const Color& OutlineCol = Color(0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the number of points composing the shape\r
-    ///\r
-    /// \param Total number of points\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetNbPoints() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Enable or disable filling the shape.\r
-    /// Fill is enabled by default\r
-    ///\r
-    /// \param Enable : True to enable, false to disable\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void EnableFill(bool Enable);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Enable or disable drawing the shape outline.\r
-    /// Outline is enabled by default\r
-    ///\r
-    /// \param Enable : True to enable, false to disable\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void EnableOutline(bool Enable);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the position of a point\r
-    ///\r
-    /// \param Index :    Index of the point, in range [0, GetNbPoints() - 1]\r
-    /// \param Position : New position of the Index-th point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPointPosition(unsigned int Index, const Vector2f& Position);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the position of a point\r
-    ///\r
-    /// \param Index : Index of the point, in range [0, GetNbPoints() - 1]\r
-    /// \param X :     New X coordinate of the Index-th point\r
-    /// \param Y :     New Y coordinate of the Index-th point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPointPosition(unsigned int Index, float X, float Y);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the color of a point\r
-    ///\r
-    /// \param Index : Index of the point, in range [0, GetNbPoints() - 1]\r
-    /// \param Col :   New color of the Index-th point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPointColor(unsigned int Index, const Color& Col);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the outline color of a point\r
-    ///\r
-    /// \param Index :      Index of the point, in range [0, GetNbPoints() - 1]\r
-    /// \param OutlineCol : New outline color of the Index-th point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPointOutlineColor(unsigned int Index, const Color& OutlineCol);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the width of the shape outline\r
-    ///\r
-    /// \param Width : New width\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetOutlineWidth(float Width);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the position of a point\r
-    ///\r
-    /// \param Index : Index of the point, in range [0, GetNbPoints() - 1]\r
-    ///\r
-    /// \return Position of the Index-th point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Vector2f& GetPointPosition(unsigned int Index) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the color of a point\r
-    ///\r
-    /// \param Index : Index of the point, in range [0, GetNbPoints() - 1]\r
-    ///\r
-    /// \return Color of the Index-th point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Color& GetPointColor(unsigned int Index) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the outline color of a point\r
-    ///\r
-    /// \param Index : Index of the point, in range [0, GetNbPoints() - 1]\r
-    ///\r
-    /// \return Outline color of the Index-th point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Color& GetPointOutlineColor(unsigned int Index) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the width of the shape outline\r
-    ///\r
-    /// \return Current outline width\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetOutlineWidth() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create a shape made of a single line (use floats)\r
-    ///\r
-    /// \param P1X, P1Y :   Position of the first point\r
-    /// \param P2X, P2Y :   Position second point\r
-    /// \param Thickness :  Line thickness\r
-    /// \param Col :        Color used to draw the line\r
-    /// \param Outline :    Outline width (0 by default)\r
-    /// \param OutlineCol : Color used to draw the outline (black by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Shape Line(float P1X, float P1Y, float P2X, float P2Y, float Thickness, const Color& Col, float Outline = 0.f, const Color& OutlineCol = sf::Color(0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create a shape made of a single line (use vectors)\r
-    ///\r
-    /// \param P1X, P1Y :   Position of the first point\r
-    /// \param P2X, P2Y :   Position second point\r
-    /// \param Thickness :  Line thickness\r
-    /// \param Col :        Color used to draw the line\r
-    /// \param Outline :    Outline width (0 by default)\r
-    /// \param OutlineCol : Color used to draw the outline (black by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Shape Line(const Vector2f& P1, const Vector2f& P2, float Thickness, const Color& Col, float Outline = 0.f, const Color& OutlineCol = sf::Color(0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create a shape made of a single rectangle (use floats)\r
-    ///\r
-    /// \param P1X, P1Y :   Position of the first point\r
-    /// \param P2X, P2Y :   Position second point\r
-    /// \param Col :        Color used to fill the rectangle\r
-    /// \param Outline :    Outline width (0 by default)\r
-    /// \param OutlineCol : Color used to draw the outline (black by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Shape Rectangle(float P1X, float P1Y, float P2X, float P2Y, const Color& Col, float Outline = 0.f, const Color& OutlineCol = sf::Color(0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create a shape made of a single rectangle (use vectors)\r
-    ///\r
-    /// \param P1 :         Position of the first point\r
-    /// \param P2 :         Position second point\r
-    /// \param Col :        Color used to fill the rectangle\r
-    /// \param Outline :    Outline width (0 by default)\r
-    /// \param OutlineCol : Color used to draw the outline (black by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Shape Rectangle(const Vector2f& P1, const Vector2f& P2, const Color& Col, float Outline = 0.f, const Color& OutlineCol = sf::Color(0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create a shape made of a single circle (use floats)\r
-    ///\r
-    /// \param X, Y :       Position of the center\r
-    /// \param Radius :     Radius\r
-    /// \param Col :        Color used to fill the circle\r
-    /// \param Outline :    Outline width (0 by default)\r
-    /// \param OutlineCol : Color used to draw the outline (black by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Shape Circle(float X, float Y, float Radius, const Color& Col, float Outline = 0.f, const Color& OutlineCol = sf::Color(0, 0, 0));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create a shape made of a single circle (use vectors)\r
-    ///\r
-    /// \param Center :     Position of the center\r
-    /// \param Radius :     Radius\r
-    /// \param Col :        Color used to fill the circle\r
-    /// \param Outline :    Outline width (0 by default)\r
-    /// \param OutlineCol : Color used to draw the outline (black by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Shape Circle(const Vector2f& Center, float Radius, const Color& Col, float Outline = 0.f, const Color& OutlineCol = sf::Color(0, 0, 0));\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see Drawable::Render\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Render(RenderTarget& Target) const;\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Compile the shape : compute its center and its outline\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Compile();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Compute the normal of a given 2D segment\r
-    ///\r
-    /// \param P1 :     First point of the segment\r
-    /// \param P2 :     Second point of the segment\r
-    /// \param Normal : Calculated normal\r
-    ///\r
-    /// \return False if the normal couldn't be calculated (segment is null)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static bool ComputeNormal(const Vector2f& P1, const Vector2f& P2, Vector2f& Normal);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Defines a simple 2D point\r
-    ////////////////////////////////////////////////////////////\r
-    struct Point\r
-    {\r
-        Point(const Vector2f& Pos = Vector2f(0, 0), const Color& C = Color(255, 255, 255), const Color& OutlineC = Color(255, 255, 255));\r
-\r
-        Vector2f Position;   ///< Position\r
-        Vector2f Normal;     ///< Extruded normal\r
-        Color    Col;        ///< Color of the point\r
-        Color    OutlineCol; ///< Outline color of the point\r
-    };\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    std::vector<Point> myPoints;           ///< Points composing the shape\r
-    float              myOutline;          ///< Outline width\r
-    bool               myIsFillEnabled;    ///< Should we draw the inside if the shape ?\r
-    bool               myIsOutlineEnabled; ///< Should we draw the outline if the shape ?\r
-    bool               myIsCompiled;       ///< Compiled state of the shape\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SHAPE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/Sprite.hpp b/dependencies64/sfml/include/SFML/Graphics/Sprite.hpp
deleted file mode 100644 (file)
index 9d47bb4..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SPRITE_HPP\r
-#define SFML_SPRITE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/Resource.hpp>\r
-#include <SFML/Graphics/Drawable.hpp>\r
-#include <SFML/Graphics/Rect.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-class Image;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Sprite defines a sprite : texture, transformations,\r
-/// color, and draw on screen\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Sprite : public Drawable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Sprite();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the sprite from a source image\r
-    ///\r
-    /// \param Img :      Image of the sprite\r
-    /// \param Position : Position of the sprite (0, 0 by default)\r
-    /// \param Scale :    Scale factor (1, 1 by default)\r
-    /// \param Rotation : Orientation, in degrees (0 by default)\r
-    /// \param Col :      Color of the sprite (white by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    explicit Sprite(const Image& Img, const Vector2f& Position = Vector2f(0, 0), const Vector2f& Scale = Vector2f(1, 1), float Rotation = 0.f, const Color& Col = Color(255, 255, 255, 255));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the image of the sprite\r
-    ///\r
-    /// \param Img : New image\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetImage(const Image& Img);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the sub-rectangle of the sprite inside the source image.\r
-    /// By default, the subrect covers the entire source image\r
-    ///\r
-    /// \param SubRect : New sub-rectangle\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetSubRect(const IntRect& SubRect);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Resize the sprite (by changing its scale factors) (take 2 values).\r
-    /// The default size is defined by the subrect\r
-    ///\r
-    /// \param Width :  New width (must be strictly positive)\r
-    /// \param Height : New height (must be strictly positive)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Resize(float Width, float Height);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Resize the sprite (by changing its scale factors) (take a 2D vector).\r
-    /// The default size is defined by the subrect\r
-    ///\r
-    /// \param Size : New size (both coordinates must be strictly positive)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Resize(const Vector2f& Size);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Flip the sprite horizontally\r
-    ///\r
-    /// \param Flipped : True to flip the sprite\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void FlipX(bool Flipped);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Flip the sprite vertically\r
-    ///\r
-    /// \param Flipped : True to flip the sprite\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void FlipY(bool Flipped);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the source image of the sprite\r
-    ///\r
-    /// \return Pointer to the image (can be NULL)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Image* GetImage() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the sub-rectangle of the sprite inside the source image\r
-    ///\r
-    /// \return Sub-rectangle\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const IntRect& GetSubRect() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the sprite size\r
-    ///\r
-    /// \return Size of the sprite\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Vector2f GetSize() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the color of a given pixel in the sprite\r
-    /// (point is in local coordinates)\r
-    ///\r
-    /// \param X : X coordinate of the pixel to get\r
-    /// \param Y : Y coordinate of the pixel to get\r
-    ///\r
-    /// \return Color of pixel (X, Y)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Color GetPixel(unsigned int X, unsigned int Y) const;\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see Drawable::Render\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Render(RenderTarget& Target) const;\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    ResourcePtr<Image> myImage;      ///< Image used to draw the sprite\r
-    IntRect            mySubRect;    ///< Sub-rectangle of source image to assign to the sprite\r
-    bool               myIsFlippedX; ///< Is the sprite flipped on the X axis ?\r
-    bool               myIsFlippedY; ///< Is the sprite flipped on the Y axis ?\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SPRITE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/String.hpp b/dependencies64/sfml/include/SFML/Graphics/String.hpp
deleted file mode 100644 (file)
index b0ca81b..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_STRING_HPP\r
-#define SFML_STRING_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/Resource.hpp>\r
-#include <SFML/System/Unicode.hpp>\r
-#include <SFML/Graphics/Drawable.hpp>\r
-#include <SFML/Graphics/Font.hpp>\r
-#include <SFML/Graphics/Rect.hpp>\r
-#include <string>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// String defines a graphical 2D text, that can be drawn on screen\r
-////////////////////////////////////////////////////////////\r
-class SFML_API String : public Drawable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Enumerate the string drawing styles\r
-    ////////////////////////////////////////////////////////////\r
-    enum Style\r
-    {\r
-        Regular    = 0,      ///< Regular characters, no style\r
-        Bold       = 1 << 0, ///< Characters are bold\r
-        Italic     = 1 << 1, ///< Characters are in italic\r
-        Underlined = 1 << 2  ///< Characters are underlined\r
-    };\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    String();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the string from any kind of text\r
-    ///\r
-    /// \param Text : Text assigned to the string\r
-    /// \param Font : Font used to draw the string (SFML built-in font by default)\r
-    /// \param Size : Characters size (30 by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    explicit String(const Unicode::Text& Text, const Font& CharFont = Font::GetDefaultFont(), float Size = 30.f);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the text (from any kind of string)\r
-    ///\r
-    /// \param Text : New text\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetText(const Unicode::Text& Text);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the font of the string\r
-    ///\r
-    /// \param Font : Font to use\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetFont(const Font& CharFont);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the size of the string\r
-    /// The default size is 30\r
-    ///\r
-    /// \param Size : New size, in pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetSize(float Size);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the style of the text\r
-    /// The default style is Regular\r
-    ///\r
-    /// \param TextStyle : New text style, (combination of Style enum values)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetStyle(unsigned long TextStyle);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the text (the returned text can be converted implicitely to any kind of string)\r
-    ///\r
-    /// \return String's text\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Unicode::Text& GetText() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the font used by the string\r
-    ///\r
-    /// \return Font used\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Font& GetFont() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the size of the characters\r
-    ///\r
-    /// \return Size of the characters\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetSize() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the style of the text\r
-    ///\r
-    /// \return Current string style (combination of Style enum values)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned long GetStyle() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the visual position of the Index-th character of the string,\r
-    /// in coordinates relative to the string\r
-    /// (note : translation, center, rotation and scale are not applied)\r
-    ///\r
-    /// \param Index : Index of the character\r
-    ///\r
-    /// \return Position of the Index-th character (end of string if Index is out of range)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    sf::Vector2f GetCharacterPos(std::size_t Index) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the string rectangle on screen\r
-    ///\r
-    /// \return Rectangle contaning the string in screen coordinates\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    FloatRect GetRect() const;\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see Drawable::Render\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Render(RenderTarget& Target) const;\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Recompute the bounding rectangle of the text\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void RecomputeRect();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    Unicode::Text     myText;           ///< Text to display\r
-    ResourcePtr<Font> myFont;           ///< Font used to display the string\r
-    float             mySize;           ///< Size of the characters\r
-    unsigned long     myStyle;          ///< Text style (see Style enum)\r
-    FloatRect         myBaseRect;       ///< Bounding rectangle of the text in object coordinates\r
-    bool              myNeedRectUpdate; ///< Does the bounding rect need an update ?\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_STRING_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Graphics/View.hpp b/dependencies64/sfml/include/SFML/Graphics/View.hpp
deleted file mode 100644 (file)
index d5e401a..0000000
+++ /dev/null
@@ -1,188 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_VIEW_HPP\r
-#define SFML_VIEW_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <SFML/Graphics/Rect.hpp>\r
-#include <SFML/Graphics/Matrix3.hpp>\r
-#include <SFML/System/Vector2.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-class RenderTarget;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// This class defines a view (position, size, etc.) ;\r
-/// you can consider it as a 2D camera\r
-////////////////////////////////////////////////////////////\r
-class SFML_API View\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the view from a rectangle\r
-    ///\r
-    /// \param ViewRect : Rectangle defining the position and size of the view (1000x1000 by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    explicit View(const FloatRect& ViewRect = FloatRect(0, 0, 1000, 1000));\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the view from its center and half-size\r
-    ///\r
-    /// \param Center :   Center of the view\r
-    /// \param HalfSize : Half-size of the view (from center to corner)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    View(const sf::Vector2f& Center, const sf::Vector2f& HalfSize);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the center of the view (take 2 values)\r
-    ///\r
-    /// \param X : X coordinate of the new center\r
-    /// \param Y : Y coordinate of the new center\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetCenter(float X, float Y);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the center of the view (take a vector)\r
-    ///\r
-    /// \param Center : New center\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetCenter(const sf::Vector2f& Center);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the half-size of the view (take 2 values)\r
-    ///\r
-    /// \param HalfWidth :  New half-width\r
-    /// \param HalfHeight : New half-height\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetHalfSize(float HalfWidth, float HalfHeight);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the half-size of the view (take a vector)\r
-    ///\r
-    /// \param HalfSize : New half-size\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetHalfSize(const sf::Vector2f& HalfSize);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Rebuild the view from a rectangle\r
-    ///\r
-    /// \param ViewRect : Rectangle defining the position and size of the view\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetFromRect(const FloatRect& ViewRect);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the center of the view\r
-    ///\r
-    /// \return Center of the view\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const sf::Vector2f& GetCenter() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the half-size of the view\r
-    ///\r
-    /// \return Half-size of the view\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const sf::Vector2f& GetHalfSize() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the bounding rectangle of the view\r
-    ///\r
-    /// \return Bounding rectangle of the view\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const sf::FloatRect& GetRect() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Move the view (take 2 values)\r
-    ///\r
-    /// \param OffsetX : Offset to move the view, on X axis\r
-    /// \param OffsetY : Offset to move the view, on Y axis\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Move(float OffsetX, float OffsetY);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Move the view (take a vector)\r
-    ///\r
-    /// \param Offset : Offset to move the view\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Move(const sf::Vector2f& Offset);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Resize the view rectangle to simulate a zoom / unzoom effect\r
-    ///\r
-    /// \param Factor : Zoom factor to apply, relative to the current zoom\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Zoom(float Factor);\r
-\r
-private :\r
-\r
-    friend class RenderTarget;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the projection matrix of the view\r
-    ///\r
-    /// \return Projection matrix containing the view settings\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Matrix3& GetMatrix() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Recompute the view rectangle and the projection matrix\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void RecomputeMatrix();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    sf::Vector2f myCenter;     ///< Center of the view\r
-    sf::Vector2f myHalfSize;   ///< Half-size of the view\r
-    FloatRect    myRect;       ///< Rectangle defining the bounds of the view\r
-    Matrix3      myMatrix;     ///< Precomputed projection matrix corresponding to the view\r
-    bool         myNeedUpdate; ///< Internal state telling if the matrix needs to be updated\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_VIEW_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network.hpp b/dependencies64/sfml/include/SFML/Network.hpp
deleted file mode 100644 (file)
index 6ec13d3..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_NETWORK_HPP\r
-#define SFML_NETWORK_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-\r
-#include <SFML/System.hpp>\r
-#include <SFML/Network/Ftp.hpp>\r
-#include <SFML/Network/Http.hpp>\r
-#include <SFML/Network/IPAddress.hpp>\r
-#include <SFML/Network/Packet.hpp>\r
-#include <SFML/Network/Selector.hpp>\r
-#include <SFML/Network/SocketTCP.hpp>\r
-#include <SFML/Network/SocketUDP.hpp>\r
-\r
-\r
-#endif // SFML_NETWORK_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/Ftp.hpp b/dependencies64/sfml/include/SFML/Network/Ftp.hpp
deleted file mode 100644 (file)
index f2f1bd3..0000000
+++ /dev/null
@@ -1,448 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_FTP_HPP\r
-#define SFML_FTP_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/NonCopyable.hpp>\r
-#include <SFML/Network/SocketTCP.hpp>\r
-#include <string>\r
-#include <vector>\r
-\r
-\r
-namespace sf\r
-{\r
-class IPAddress;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// This class provides methods for manipulating the FTP\r
-/// protocol (described in RFC 959).\r
-/// It provides easy access and transfers to remote\r
-/// directories and files on a FTP server\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Ftp : NonCopyable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Enumeration of transfer modes\r
-    ////////////////////////////////////////////////////////////\r
-    enum TransferMode\r
-    {\r
-        Binary, ///< Binary mode (file is transfered as a sequence of bytes)\r
-        Ascii,  ///< Text mode using ASCII encoding\r
-        Ebcdic  ///< Text mode using EBCDIC encoding\r
-    };\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// This class wraps a FTP response, which is basically :\r
-    /// - a status code\r
-    /// - a message\r
-    ////////////////////////////////////////////////////////////\r
-    class SFML_API Response\r
-    {\r
-    public :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Enumerate all the valid status codes returned in\r
-        /// a FTP response\r
-        ////////////////////////////////////////////////////////////\r
-        enum Status\r
-        {\r
-            // 1xx: the requested action is being initiated,\r
-            // expect another reply before proceeding with a new command\r
-            RestartMarkerReply          = 110, ///< Restart marker reply\r
-            ServiceReadySoon            = 120, ///< Service ready in N minutes\r
-            DataConnectionAlreadyOpened = 125, ///< Data connection already opened, transfer starting\r
-            OpeningDataConnection       = 150, ///< File status ok, about to open data connection\r
-\r
-            // 2xx: the requested action has been successfully completed\r
-            Ok                    = 200, ///< Command ok\r
-            PointlessCommand      = 202, ///< Command not implemented\r
-            SystemStatus          = 211, ///< System status, or system help reply\r
-            DirectoryStatus       = 212, ///< Directory status\r
-            FileStatus            = 213, ///< File status\r
-            HelpMessage           = 214, ///< Help message\r
-            SystemType            = 215, ///< NAME system type, where NAME is an official system name from the list in the Assigned Numbers document\r
-            ServiceReady          = 220, ///< Service ready for new user\r
-            ClosingConnection     = 221, ///< Service closing control connection\r
-            DataConnectionOpened  = 225, ///< Data connection open, no transfer in progress\r
-            ClosingDataConnection = 226, ///< Closing data connection, requested file action successful\r
-            EnteringPassiveMode   = 227, ///< Entering passive mode\r
-            LoggedIn              = 230, ///< User logged in, proceed. Logged out if appropriate\r
-            FileActionOk          = 250, ///< Requested file action ok\r
-            DirectoryOk           = 257, ///< PATHNAME created\r
-\r
-            // 3xx: the command has been accepted, but the requested action\r
-            // is dormant, pending receipt of further information\r
-            NeedPassword       = 331, ///< User name ok, need password\r
-            NeedAccountToLogIn = 332, ///< Need account for login\r
-            NeedInformation    = 350, ///< Requested file action pending further information\r
-\r
-            // 4xx: the command was not accepted and the requested action did not take place,\r
-            // but the error condition is temporary and the action may be requested again\r
-            ServiceUnavailable        = 421, ///< Service not available, closing control connection\r
-            DataConnectionUnavailable = 425, ///< Can't open data connection\r
-            TransferAborted           = 426, ///< Connection closed, transfer aborted\r
-            FileActionAborted         = 450, ///< Requested file action not taken\r
-            LocalError                = 451, ///< Requested action aborted, local error in processing\r
-            InsufficientStorageSpace  = 452, ///< Requested action not taken; insufficient storage space in system, file unavailable\r
-\r
-            // 5xx: the command was not accepted and\r
-            // the requested action did not take place\r
-            CommandUnknown          = 500, ///< Syntax error, command unrecognized\r
-            ParametersUnknown       = 501, ///< Syntax error in parameters or arguments\r
-            CommandNotImplemented   = 502, ///< Command not implemented\r
-            BadCommandSequence      = 503, ///< Bad sequence of commands\r
-            ParameterNotImplemented = 504, ///< Command not implemented for that parameter\r
-            NotLoggedIn             = 530, ///< Not logged in\r
-            NeedAccountToStore      = 532, ///< Need account for storing files\r
-            FileUnavailable         = 550, ///< Requested action not taken, file unavailable\r
-            PageTypeUnknown         = 551, ///< Requested action aborted, page type unknown\r
-            NotEnoughMemory         = 552, ///< Requested file action aborted, exceeded storage allocation\r
-            FilenameNotAllowed      = 553, ///< Requested action not taken, file name not allowed\r
-\r
-            // 10xx: SFML custom codes\r
-            InvalidResponse  = 1000, ///< Response is not a valid FTP one\r
-            ConnectionFailed = 1001, ///< Connection with server failed\r
-            ConnectionClosed = 1002, ///< Connection with server closed\r
-            InvalidFile      = 1003  ///< Invalid file to upload / download\r
-        };\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Default constructor\r
-        ///\r
-        /// \param Code :    Response status code (InvalidResponse by default)\r
-        /// \param Message : Response message (empty by default)\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        Response(Status Code = InvalidResponse, const std::string& Message = "");\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Convenience function to check if the response status code\r
-        /// means a success\r
-        ///\r
-        /// \return True if status is success (code < 400)\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        bool IsOk() const;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the response status code\r
-        ///\r
-        /// \return Status code\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        Status GetStatus() const;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the full message contained in the response\r
-        ///\r
-        /// \return The response message\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        const std::string& GetMessage() const;\r
-\r
-    private :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        // Member data\r
-        ////////////////////////////////////////////////////////////\r
-        Status      myStatus;  ///< Status code returned from the server\r
-        std::string myMessage; ///< Last message received from the server\r
-    };\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Specialization of FTP response returning a directory\r
-    ////////////////////////////////////////////////////////////\r
-    class SFML_API DirectoryResponse : public Response\r
-    {\r
-    public :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Default constructor\r
-        ///\r
-        /// \param Resp : Source response\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        DirectoryResponse(Response Resp);\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the directory returned in the response\r
-        ///\r
-        /// \return Directory name\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        const std::string& GetDirectory() const;\r
-\r
-    private :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        // Member data\r
-        ////////////////////////////////////////////////////////////\r
-        std::string myDirectory; ///< Directory extracted from the response message\r
-    };\r
-\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Specialization of FTP response returning a filename lisiting\r
-    ////////////////////////////////////////////////////////////\r
-    class SFML_API ListingResponse : public Response\r
-    {\r
-    public :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Default constructor\r
-        ///\r
-        /// \param Resp : Source response\r
-        /// \param Data : Data containing the raw listing\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        ListingResponse(Response Resp, const std::vector<char>& Data);\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the number of filenames in the listing\r
-        ///\r
-        /// \return Total number of filenames\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        std::size_t GetCount() const;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the Index-th filename in the directory\r
-        ///\r
-        /// \param Index : Index of the filename to get\r
-        ///\r
-        /// \return Index-th filename\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        const std::string& GetFilename(std::size_t Index) const;\r
-\r
-    private :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        // Member data\r
-        ////////////////////////////////////////////////////////////\r
-        std::vector<std::string> myFilenames; ///< Filenames extracted from the data\r
-    };\r
-\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor -- close the connection with the server\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~Ftp();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Connect to the specified FTP server\r
-    ///\r
-    /// \param Server :  FTP server to connect to\r
-    /// \param Port :    Port used for connection (21 by default, standard FTP port)\r
-    /// \param Timeout : Maximum time to wait, in seconds (0 by default, means no timeout)\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response Connect(const IPAddress& Server, unsigned short Port = 21, float Timeout = 0.f);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Log in using anonymous account\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response Login();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Log in using a username and a password\r
-    ///\r
-    /// \param UserName : User name\r
-    /// \param Password : Password\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response Login(const std::string& UserName, const std::string& Password);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Close the connection with FTP server\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response Disconnect();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Send a null command just to prevent from being disconnected\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response KeepAlive();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current working directory\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    DirectoryResponse GetWorkingDirectory();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the contents of the given directory\r
-    /// (subdirectories and files)\r
-    ///\r
-    /// \param Directory : Directory to list ("" by default, the current one)\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ListingResponse GetDirectoryListing(const std::string& Directory = "");\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the current working directory\r
-    ///\r
-    /// \param Directory : New directory, relative to the current one\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response ChangeDirectory(const std::string& Directory);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Go to the parent directory of the current one\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response ParentDirectory();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create a new directory\r
-    ///\r
-    /// \param Name : Name of the directory to create\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response MakeDirectory(const std::string& Name);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Remove an existing directory\r
-    ///\r
-    /// \param Name : Name of the directory to remove\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response DeleteDirectory(const std::string& Name);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Rename a file\r
-    ///\r
-    /// \param File :    File to rename\r
-    /// \param NewName : New name\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response RenameFile(const std::string& File, const std::string& NewName);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Remove an existing file\r
-    ///\r
-    /// \param Name : File to remove\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response DeleteFile(const std::string& Name);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Download a file from the server\r
-    ///\r
-    /// \param DistantFile : Path of the distant file to download\r
-    /// \param DestPath :    Where to put to file on the local computer\r
-    /// \param Mode :        Transfer mode (binary by default)\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response Download(const std::string& DistantFile, const std::string& DestPath, TransferMode Mode = Binary);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Upload a file to the server\r
-    ///\r
-    /// \param LocalFile : Path of the local file to upload\r
-    /// \param DestPath :  Where to put to file on the server\r
-    /// \param Mode :      Transfer mode (binary by default)\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response Upload(const std::string& LocalFile, const std::string& DestPath, TransferMode Mode = Binary);\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Send a command to the FTP server\r
-    ///\r
-    /// \param Command :   Command to send\r
-    /// \param Parameter : Command parameter ("" by default)\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response SendCommand(const std::string& Command, const std::string& Parameter = "");\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Receive a response from the server\r
-    /// (usually after a command has been sent)\r
-    ///\r
-    /// \return Server response to the request\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response GetResponse();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Utility class for exchanging datas with the server\r
-    /// on the data channel\r
-    ////////////////////////////////////////////////////////////\r
-    class DataChannel;\r
-\r
-    friend class DataChannel;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    SocketTCP myCommandSocket; ///< Socket holding the control connection with the server\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_FTP_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/Http.hpp b/dependencies64/sfml/include/SFML/Network/Http.hpp
deleted file mode 100644 (file)
index 54e5c1f..0000000
+++ /dev/null
@@ -1,340 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_HTTP_HPP\r
-#define SFML_HTTP_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/NonCopyable.hpp>\r
-#include <SFML/Network/IPAddress.hpp>\r
-#include <SFML/Network/SocketTCP.hpp>\r
-#include <map>\r
-#include <string>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// This class provides methods for manipulating the HTTP\r
-/// protocol (described in RFC 1945).\r
-/// It can connect to a website, get its files, send requests, etc.\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Http : NonCopyable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// This class wraps an HTTP request, which is basically :\r
-    /// - a header with a method, a target URI, and a set of field/value pairs\r
-    /// - an optional body (for POST requests)\r
-    ////////////////////////////////////////////////////////////\r
-    class SFML_API Request\r
-    {\r
-    public :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Enumerate the available HTTP methods for a request\r
-        ////////////////////////////////////////////////////////////\r
-        enum Method\r
-        {\r
-            Get,  ///< Request in get mode, standard method to retrieve a page\r
-            Post, ///< Request in post mode, usually to send data to a page\r
-            Head  ///< Request a page's header only\r
-        };\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Default constructor\r
-        ///\r
-        /// \param RequestMethod : Method to use for the request (Get by default)\r
-        /// \param URI :           Target URI ("/" by default -- index page)\r
-        /// \param Body :          Content of the request's body (empty by default)\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        Request(Method RequestMethod = Get, const std::string& URI = "/", const std::string& Body = "");\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Set the value of a field; the field is added if it doesn't exist\r
-        ///\r
-        /// \param Field : Name of the field to set (case-insensitive)\r
-        /// \param Value : Value of the field\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        void SetField(const std::string& Field, const std::string& Value);\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Set the request method.\r
-        /// This parameter is Http::Request::Get by default\r
-        ///\r
-        /// \param RequestMethod : Method to use for the request\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        void SetMethod(Method RequestMethod);\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Set the target URI of the request.\r
-        /// This parameter is "/" by default\r
-        ///\r
-        /// \param URI : URI to request, local to the host\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        void SetURI(const std::string& URI);\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Set the HTTP version of the request.\r
-        /// This parameter is 1.0 by default\r
-        ///\r
-        /// \param Major : Major version number\r
-        /// \param Minor : Minor version number\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        void SetHttpVersion(unsigned int Major, unsigned int Minor);\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Set the body of the request. This parameter is optional and\r
-        /// makes sense only for POST requests.\r
-        /// This parameter is empty by default\r
-        ///\r
-        /// \param Body : Content of the request body\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        void SetBody(const std::string& Body);\r
-\r
-    private :\r
-\r
-        friend class Http;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the string representation of the request header\r
-        ///\r
-        /// \return String containing the request\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        std::string ToString() const;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Check if the given field has been defined\r
-        ///\r
-        /// \param Field : Name of the field to check (case-insensitive)\r
-        ///\r
-        /// \return True if the field exists\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        bool HasField(const std::string& Field) const;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        // Types\r
-        ////////////////////////////////////////////////////////////\r
-        typedef std::map<std::string, std::string> FieldTable;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        // Member data\r
-        ////////////////////////////////////////////////////////////\r
-        FieldTable   myFields;       ///< Fields of the header\r
-        Method       myMethod;       ///< Method to use for the request\r
-        std::string  myURI;          ///< Target URI of the request\r
-        unsigned int myMajorVersion; ///< Major HTTP version\r
-        unsigned int myMinorVersion; ///< Minor HTTP version\r
-        std::string  myBody;         ///< Body of the request\r
-    };\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// This class wraps an HTTP response, which is basically :\r
-    /// - a header with a status code and a set of field/value pairs\r
-    /// - a body (the content of the requested resource)\r
-    ////////////////////////////////////////////////////////////\r
-    class SFML_API Response\r
-    {\r
-    public :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Enumerate all the valid status codes returned in\r
-        /// a HTTP response\r
-        ////////////////////////////////////////////////////////////\r
-        enum Status\r
-        {\r
-            // 2xx: success\r
-            Ok        = 200, ///< Most common code returned when operation was successful\r
-            Created   = 201, ///< The resource has successfully been created\r
-            Accepted  = 202, ///< The request has been accepted, but will be processed later by the server\r
-            NoContent = 204, ///< Sent when the server didn't send any data in return\r
-\r
-            // 3xx: redirection\r
-            MultipleChoices  = 300, ///< The requested page can be accessed from several locations\r
-            MovedPermanently = 301, ///< The requested page has permanently moved to a new location\r
-            MovedTemporarily = 302, ///< The requested page has temporarily moved to a new location\r
-            NotModified      = 304, ///< For conditionnal requests, means the requested page hasn't changed and doesn't need to be refreshed\r
-\r
-            // 4xx: client error\r
-            BadRequest   = 400, ///< The server couldn't understand the request (syntax error)\r
-            Unauthorized = 401, ///< The requested page needs an authentification to be accessed\r
-            Forbidden    = 403, ///< The requested page cannot be accessed at all, even with authentification\r
-            NotFound     = 404, ///< The requested page doesn't exist\r
-\r
-            // 5xx: server error\r
-            InternalServerError = 500, ///< The server encountered an unexpected error\r
-            NotImplemented      = 501, ///< The server doesn't implement a requested feature\r
-            BadGateway          = 502, ///< The gateway server has received an error from the source server\r
-            ServiceNotAvailable = 503, ///< The server is temporarily unavailable (overloaded, in maintenance, ...)\r
-\r
-            // 10xx: SFML custom codes\r
-            InvalidResponse  = 1000, ///< Response is not a valid HTTP one\r
-            ConnectionFailed = 1001  ///< Connection with server failed\r
-        };\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Default constructor\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        Response();\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the value of a field\r
-        ///\r
-        /// \param Field : Name of the field to get (case-insensitive)\r
-        ///\r
-        /// \return Value of the field, or empty string if not found\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        const std::string& GetField(const std::string& Field) const;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the header's status code\r
-        ///\r
-        /// \return Header's status code\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        Status GetStatus() const;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the major HTTP version number of the response\r
-        ///\r
-        /// \return Major version number\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        unsigned int GetMajorHttpVersion() const;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the major HTTP version number of the response\r
-        ///\r
-        /// \return Major version number\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        unsigned int GetMinorHttpVersion() const;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Get the body of the response. The body can contain :\r
-        /// - the requested page (for GET requests)\r
-        /// - a response from the server (for POST requests)\r
-        /// - nothing (for HEAD requests)\r
-        /// - an error message (in case of an error)\r
-        ///\r
-        /// \return The response body\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        const std::string& GetBody() const;\r
-\r
-    private :\r
-\r
-        friend class Http;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Construct the header from a response string\r
-        ///\r
-        /// \param Data : Content of the response's header to parse\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        void FromString(const std::string& Data);\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        // Types\r
-        ////////////////////////////////////////////////////////////\r
-        typedef std::map<std::string, std::string> FieldTable;\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        // Member data\r
-        ////////////////////////////////////////////////////////////\r
-        FieldTable   myFields;       ///< Fields of the header\r
-        Status       myStatus;       ///< Status code\r
-        unsigned int myMajorVersion; ///< Major HTTP version\r
-        unsigned int myMinorVersion; ///< Minor HTTP version\r
-        std::string  myBody;         ///< Body of the response\r
-    };\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Http();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the Http instance with the target host\r
-    ///\r
-    /// \param Host : Web server to connect to\r
-    /// \param Port : Port to use for connection (0 by default -- use the standard port of the protocol used)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Http(const std::string& Host, unsigned short Port = 0);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the target host\r
-    ///\r
-    /// \param Host : Web server to connect to\r
-    /// \param Port : Port to use for connection (0 by default -- use the standard port of the protocol used)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetHost(const std::string& Host, unsigned short Port = 0);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Send a HTTP request and return the server's response.\r
-    /// You must be connected to a host before sending requests.\r
-    /// Any missing mandatory header field will be added with an appropriate value.\r
-    /// Warning : this function waits for the server's response and may\r
-    /// not return instantly; use a thread if you don't want to block your\r
-    /// application.\r
-    ///\r
-    /// \param Req :     Request to send\r
-    /// \param Timeout : Maximum time to wait, in seconds (0 by default, means no timeout)\r
-    ///\r
-    /// \return Server's response\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Response SendRequest(const Request& Req, float Timeout = 0.f);\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    SocketTCP      myConnection; ///< Connection to the host\r
-    IPAddress      myHost;       ///< Web host address\r
-    std::string    myHostName;   ///< Web host name\r
-    unsigned short myPort;       ///< Port used for connection with host\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_HTTP_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/IPAddress.hpp b/dependencies64/sfml/include/SFML/Network/IPAddress.hpp
deleted file mode 100644 (file)
index 638dc47..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_IPADDRESS_HPP\r
-#define SFML_IPADDRESS_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <istream>\r
-#include <ostream>\r
-#include <string>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// IPAddress provides easy manipulation of IP v4 addresses\r
-////////////////////////////////////////////////////////////\r
-class SFML_API IPAddress\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor -- constructs an invalid address\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    IPAddress();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the address from a string\r
-    ///\r
-    /// \param Address : IP address ("xxx.xxx.xxx.xxx") or network name\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    IPAddress(const std::string& Address);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the address from a C-style string ;\r
-    /// Needed for implicit conversions from literal strings to IPAddress to work\r
-    ///\r
-    /// \param Address : IP address ("xxx.xxx.xxx.xxx") or network name\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    IPAddress(const char* Address);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the address from 4 bytes\r
-    ///\r
-    /// \param Byte0 : First byte of the address\r
-    /// \param Byte1 : Second byte of the address\r
-    /// \param Byte2 : Third byte of the address\r
-    /// \param Byte3 : Fourth byte of the address\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    IPAddress(Uint8 Byte0, Uint8 Byte1, Uint8 Byte2, Uint8 Byte3);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the address from a 32-bits integer\r
-    ///\r
-    /// \param Address : 4 bytes of the address packed into a 32-bits integer\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    IPAddress(Uint32 Address);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell if the address is a valid one\r
-    ///\r
-    /// \return True if address has a valid syntax\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsValid() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get a string representation of the address\r
-    ///\r
-    /// \return String representation of the IP address ("xxx.xxx.xxx.xxx")\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    std::string ToString() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get an integer representation of the address\r
-    ///\r
-    /// \return 32-bits integer containing the 4 bytes of the address, in system endianness\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Uint32 ToInteger() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the computer's local IP address (from the LAN point of view)\r
-    ///\r
-    /// \return Local IP address\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static IPAddress GetLocalAddress();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the computer's public IP address (from the web point of view).\r
-    /// The only way to get a public address is to ask it to a\r
-    /// distant website ; as a consequence, this function may be\r
-    /// very slow -- use it as few as possible !\r
-    ///\r
-    /// \param Timeout : Maximum time to wait, in seconds (0 by default : no timeout)\r
-    ///\r
-    /// \return Public IP address\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static IPAddress GetPublicAddress(float Timeout = 0.f);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator ==\r
-    ///\r
-    /// \param Other : Address to compare\r
-    ///\r
-    /// \return True if *this == Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator ==(const IPAddress& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator !=\r
-    ///\r
-    /// \param Other : Address to compare\r
-    ///\r
-    /// \return True if *this != Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator !=(const IPAddress& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator <\r
-    ///\r
-    /// \param Other : Address to compare\r
-    ///\r
-    /// \return True if *this < Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator <(const IPAddress& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator >\r
-    ///\r
-    /// \param Other : Address to compare\r
-    ///\r
-    /// \return True if *this > Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator >(const IPAddress& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator <=\r
-    ///\r
-    /// \param Other : Address to compare\r
-    ///\r
-    /// \return True if *this <= Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator <=(const IPAddress& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator >=\r
-    ///\r
-    /// \param Other : Address to compare\r
-    ///\r
-    /// \return True if *this >= Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator >=(const IPAddress& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Static member data\r
-    ////////////////////////////////////////////////////////////\r
-    static const IPAddress LocalHost; ///< Local host address (to connect to the same computer)\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    Uint32 myAddress; ///< Address stored as an unsigned 32 bits integer\r
-};\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator >> overload to extract an address from an input stream\r
-///\r
-/// \param Stream :  Input stream\r
-/// \param Address : Address to extract\r
-///\r
-/// \return Reference to the input stream\r
-///\r
-////////////////////////////////////////////////////////////\r
-SFML_API std::istream& operator >>(std::istream& Stream, IPAddress& Address);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator << overload to print an address to an output stream\r
-///\r
-/// \param Stream :  Output stream\r
-/// \param Address : Address to print\r
-///\r
-/// \return Reference to the output stream\r
-///\r
-////////////////////////////////////////////////////////////\r
-SFML_API std::ostream& operator <<(std::ostream& Stream, const IPAddress& Address);\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_IPADDRESS_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/Packet.hpp b/dependencies64/sfml/include/SFML/Network/Packet.hpp
deleted file mode 100644 (file)
index 9c5463f..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_PACKET_HPP\r
-#define SFML_PACKET_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <string>\r
-#include <vector>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Packet wraps data to send / to receive through the network\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Packet\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Packet();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Virtual destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~Packet();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Append data to the end of the packet\r
-    ///\r
-    /// \param Data :        Pointer to the bytes to append\r
-    /// \param SizeInBytes : Number of bytes to append\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Append(const void* Data, std::size_t SizeInBytes);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Clear the packet data\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Clear();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get a pointer to the data contained in the packet\r
-    /// Warning : the returned pointer may be invalid after you\r
-    /// append data to the packet\r
-    ///\r
-    /// \return Pointer to the data\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const char* GetData() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the size of the data contained in the packet\r
-    ///\r
-    /// \return Data size, in bytes\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    std::size_t GetDataSize() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell if the reading position has reached the end of the packet\r
-    ///\r
-    /// \return True if all data have been read into the packet\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool EndOfPacket() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the validity of packet\r
-    ///\r
-    /// \return True if last data extraction from packet was successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    operator bool() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Operator >> overloads to extract data from the packet\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Packet& operator >>(bool&         Data);\r
-    Packet& operator >>(Int8&         Data);\r
-    Packet& operator >>(Uint8&        Data);\r
-    Packet& operator >>(Int16&        Data);\r
-    Packet& operator >>(Uint16&       Data);\r
-    Packet& operator >>(Int32&        Data);\r
-    Packet& operator >>(Uint32&       Data);\r
-    Packet& operator >>(float&        Data);\r
-    Packet& operator >>(double&       Data);\r
-    Packet& operator >>(char*         Data);\r
-    Packet& operator >>(std::string&  Data);\r
-    Packet& operator >>(wchar_t*      Data);\r
-    Packet& operator >>(std::wstring& Data);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Operator << overloads to put data into the packet\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Packet& operator <<(bool                Data);\r
-    Packet& operator <<(Int8                Data);\r
-    Packet& operator <<(Uint8               Data);\r
-    Packet& operator <<(Int16               Data);\r
-    Packet& operator <<(Uint16              Data);\r
-    Packet& operator <<(Int32               Data);\r
-    Packet& operator <<(Uint32              Data);\r
-    Packet& operator <<(float               Data);\r
-    Packet& operator <<(double              Data);\r
-    Packet& operator <<(const char*         Data);\r
-    Packet& operator <<(const std::string&  Data);\r
-    Packet& operator <<(const wchar_t*      Data);\r
-    Packet& operator <<(const std::wstring& Data);\r
-\r
-private :\r
-\r
-    friend class SocketTCP;\r
-    friend class SocketUDP;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Check if the packet can extract a given size of bytes\r
-    ///\r
-    /// \param Size : Size to check\r
-    ///\r
-    /// \return True if Size bytes can be read from the packet's data\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool CheckSize(std::size_t Size);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Called before the packet is sent to the network\r
-    ///\r
-    /// \param DataSize : Variable to fill with the size of data to send\r
-    ///\r
-    /// \return Pointer to the array of bytes to send\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual const char* OnSend(std::size_t& DataSize);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Called after the packet has been received from the network\r
-    ///\r
-    /// \param Data :     Pointer to the array of received bytes\r
-    /// \param DataSize : Size of the array of bytes\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void OnReceive(const char* Data, std::size_t DataSize);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    std::vector<char> myData;    ///< Data stored in the packet\r
-    std::size_t       myReadPos; ///< Current reading position in the packet\r
-    bool              myIsValid; ///< Reading state of the packet\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_PACKET_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/Selector.hpp b/dependencies64/sfml/include/SFML/Network/Selector.hpp
deleted file mode 100644 (file)
index 588a72c..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SELECTOR_HPP\r
-#define SFML_SELECTOR_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Network/SocketUDP.hpp>\r
-#include <SFML/Network/SocketTCP.hpp>\r
-#include <SFML/Network/SelectorBase.hpp>\r
-#include <map>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Selector allow reading from multiple sockets\r
-/// without blocking. It's a kind of multiplexer\r
-////////////////////////////////////////////////////////////\r
-template <typename Type>\r
-class Selector : private SelectorBase\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Add a socket to watch\r
-    ///\r
-    /// \param Socket : Socket to add\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Add(Type Socket);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Remove a socket\r
-    ///\r
-    /// \param Socket : Socket to remove\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Remove(Type Socket);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Remove all sockets\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Clear();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Wait and collect sockets which are ready for reading.\r
-    /// This functions will return either when at least one socket\r
-    /// is ready, or when the given time is out\r
-    ///\r
-    /// \param Timeout : Timeout, in seconds (0 by default : no timeout)\r
-    ///\r
-    /// \return Number of sockets ready to be read\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int Wait(float Timeout = 0.f);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// After a call to Wait(), get the Index-th socket which is\r
-    /// ready for reading. The total number of sockets ready\r
-    /// is the integer returned by the previous call to Wait()\r
-    ///\r
-    /// \param Index : Index of the socket to get\r
-    ///\r
-    /// \return The Index-th socket\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Type GetSocketReady(unsigned int Index);\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Types\r
-    ////////////////////////////////////////////////////////////\r
-    typedef std::map<SocketHelper::SocketType, Type> SocketTable;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    SocketTable mySockets; ///< Table matching the SFML socket instances with their low-level handles\r
-};\r
-\r
-#include <SFML/Network/Selector.inl>\r
-\r
-// Let's define the two only valid types of Selector\r
-typedef Selector<SocketUDP> SelectorUDP;\r
-typedef Selector<SocketTCP> SelectorTCP;\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SELECTOR_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/Selector.inl b/dependencies64/sfml/include/SFML/Network/Selector.inl
deleted file mode 100644 (file)
index 40ac948..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Add a socket to watch\r
-////////////////////////////////////////////////////////////\r
-template <typename Type>\r
-void Selector<Type>::Add(Type Socket)\r
-{\r
-    if (Socket.IsValid())\r
-    {\r
-        SelectorBase::Add(Socket.mySocket);\r
-        mySockets[Socket.mySocket] = Socket;\r
-    }\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Remove a socket\r
-////////////////////////////////////////////////////////////\r
-template <typename Type>\r
-void Selector<Type>::Remove(Type Socket)\r
-{\r
-    typename SocketTable::iterator It = mySockets.find(Socket.mySocket);\r
-    if (It != mySockets.end())\r
-    {\r
-        SelectorBase::Remove(Socket.mySocket);\r
-        mySockets.erase(It);\r
-    }\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Remove all sockets\r
-////////////////////////////////////////////////////////////\r
-template <typename Type>\r
-void Selector<Type>::Clear()\r
-{\r
-    SelectorBase::Clear();\r
-    mySockets.clear();\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Wait and collect sockets which are ready for reading.\r
-/// This functions will return either when at least one socket\r
-/// is ready, or when the given time is out\r
-////////////////////////////////////////////////////////////\r
-template <typename Type>\r
-unsigned int Selector<Type>::Wait(float Timeout)\r
-{\r
-    // No socket in the selector : return 0\r
-    if (mySockets.empty())\r
-        return 0;\r
-\r
-    return SelectorBase::Wait(Timeout);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// After a call to Wait(), get the Index-th socket which is\r
-/// ready for reading. The total number of sockets ready\r
-/// is the integer returned by the previous call to Wait()\r
-////////////////////////////////////////////////////////////\r
-template <typename Type>\r
-Type Selector<Type>::GetSocketReady(unsigned int Index)\r
-{\r
-    SocketHelper::SocketType Socket = SelectorBase::GetSocketReady(Index);\r
-\r
-    typename SocketTable::const_iterator It = mySockets.find(Socket);\r
-    if (It != mySockets.end())\r
-        return It->second;\r
-    else\r
-        return Type(Socket);\r
-}\r
diff --git a/dependencies64/sfml/include/SFML/Network/SelectorBase.hpp b/dependencies64/sfml/include/SFML/Network/SelectorBase.hpp
deleted file mode 100644 (file)
index 4b9e915..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SELECTORBASE_HPP\r
-#define SFML_SELECTORBASE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <SFML/Network/SocketHelper.hpp>\r
-#include <map>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Private base class for selectors.\r
-/// As Selector is a template class, this base is needed so that\r
-/// every system call get compiled in SFML (not inlined)\r
-////////////////////////////////////////////////////////////\r
-class SFML_API SelectorBase\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SelectorBase();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Add a socket to watch\r
-    ///\r
-    /// \param Socket : Socket to add\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Add(SocketHelper::SocketType Socket);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Remove a socket\r
-    ///\r
-    /// \param Socket : Socket to remove\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Remove(SocketHelper::SocketType Socket);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Remove all sockets\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Clear();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Wait and collect sockets which are ready for reading.\r
-    /// This functions will return either when at least one socket\r
-    /// is ready, or when the given time is out\r
-    ///\r
-    /// \param Timeout : Timeout, in seconds (0 by default : no timeout)\r
-    ///\r
-    /// \return Number of sockets ready to be read\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int Wait(float Timeout = 0.f);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// After a call to Wait(), get the Index-th socket which is\r
-    /// ready for reading. The total number of sockets ready\r
-    /// is the integer returned by the previous call to Wait()\r
-    ///\r
-    /// \param Index : Index of the socket to get\r
-    ///\r
-    /// \return The Index-th socket\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SocketHelper::SocketType GetSocketReady(unsigned int Index);\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    fd_set mySet;       ///< Set of socket to watch\r
-    fd_set mySetReady;  ///< Set of socket which are ready for reading\r
-    int    myMaxSocket; ///< Maximum socket index\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SELECTORBASE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/SocketHelper.hpp b/dependencies64/sfml/include/SFML/Network/SocketHelper.hpp
deleted file mode 100644 (file)
index 166ce60..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOCKETHELPER_HPP\r
-#define SFML_SOCKETHELPER_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-namespace Socket\r
-{\r
-    ////////////////////////////////////////////////////////////\r
-    /// Enumeration of status returned by socket functions\r
-    ////////////////////////////////////////////////////////////\r
-    enum Status\r
-    {\r
-        Done,         ///< The socket has sent / received the data\r
-        NotReady,     ///< The socket is not ready to send / receive data yet\r
-        Disconnected, ///< The TCP socket has been disconnected\r
-        Error         ///< An unexpected error happened\r
-    };\r
-}\r
-\r
-} // namespace sf\r
-\r
-\r
-#ifdef SFML_SYSTEM_WINDOWS\r
-\r
-    #include <SFML/Network/Win32/SocketHelper.hpp>\r
-\r
-#else\r
-\r
-    #include <SFML/Network/Unix/SocketHelper.hpp>\r
-\r
-#endif\r
-\r
-\r
-#endif // SFML_SOCKETHELPER_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/SocketTCP.hpp b/dependencies64/sfml/include/SFML/Network/SocketTCP.hpp
deleted file mode 100644 (file)
index 8929dc9..0000000
+++ /dev/null
@@ -1,227 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOCKETTCP_HPP\r
-#define SFML_SOCKETTCP_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Network/SocketHelper.hpp>\r
-#include <vector>\r
-\r
-\r
-namespace sf\r
-{\r
-class Packet;\r
-class IPAddress;\r
-template <typename> class Selector;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// SocketTCP wraps a socket using TCP protocol to\r
-/// send data safely (but a bit slower)\r
-////////////////////////////////////////////////////////////\r
-class SFML_API SocketTCP\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SocketTCP();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the blocking state of the socket.\r
-    /// The default behaviour of a socket is blocking\r
-    ///\r
-    /// \param Blocking : Pass true to set the socket as blocking, or false for non-blocking\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetBlocking(bool Blocking);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Connect to another computer on a specified port\r
-    ///\r
-    /// \param Port :        Port to use for transfers (warning : ports < 1024 are reserved)\r
-    /// \param HostAddress : IP Address of the host to connect to\r
-    /// \param Timeout :     Maximum time to wait, in seconds (0 by default : no timeout) (this parameter is ignored for non-blocking sockets)\r
-    ///\r
-    /// \return True if operation has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Connect(unsigned short Port, const IPAddress& HostAddress, float Timeout = 0.f);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Listen to a specified port for incoming data or connections\r
-    ///\r
-    /// \param Port : Port to listen to\r
-    ///\r
-    /// \return True if operation has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool Listen(unsigned short Port);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Wait for a connection (must be listening to a port).\r
-    /// This function will block if the socket is blocking\r
-    ///\r
-    /// \param Connected : Socket containing the connection with the connected client\r
-    /// \param Address :   Pointer to an address to fill with client infos (NULL by default)\r
-    ///\r
-    /// \return Status code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Accept(SocketTCP& Connected, IPAddress* Address = NULL);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Send an array of bytes to the host (must be connected first)\r
-    ///\r
-    /// \param Data : Pointer to the bytes to send\r
-    /// \param Size : Number of bytes to send\r
-    ///\r
-    /// \return Status code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Send(const char* Data, std::size_t Size);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Receive an array of bytes from the host (must be connected first).\r
-    /// This function will block if the socket is blocking\r
-    ///\r
-    /// \param Data :         Pointer to a byte array to fill (make sure it is big enough)\r
-    /// \param MaxSize :      Maximum number of bytes to read\r
-    /// \param SizeReceived : Number of bytes received\r
-    ///\r
-    /// \return Status code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Receive(char* Data, std::size_t MaxSize, std::size_t& SizeReceived);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Send a packet of data to the host (must be connected first)\r
-    ///\r
-    /// \param PacketToSend : Packet to send\r
-    ///\r
-    /// \return Status code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Send(Packet& PacketToSend);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Receive a packet from the host (must be connected first).\r
-    /// This function will block if the socket is blocking\r
-    ///\r
-    /// \param PacketToReceive : Packet to fill with received data\r
-    ///\r
-    /// \return Status code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Receive(Packet& PacketToReceive);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Close the socket\r
-    ///\r
-    /// \return True if operation has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool Close();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Check if the socket is in a valid state ; this function\r
-    /// can be called any time to check if the socket is OK\r
-    ///\r
-    /// \return True if the socket is valid\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsValid() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator ==\r
-    ///\r
-    /// \param Other : Socket to compare\r
-    ///\r
-    /// \return True if *this == Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator ==(const SocketTCP& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator !=\r
-    ///\r
-    /// \param Other : Socket to compare\r
-    ///\r
-    /// \return True if *this != Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator !=(const SocketTCP& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator <.\r
-    /// Provided for compatibility with standard containers, as\r
-    /// comparing two sockets doesn't make much sense...\r
-    ///\r
-    /// \param Other : Socket to compare\r
-    ///\r
-    /// \return True if *this < Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator <(const SocketTCP& Other) const;\r
-\r
-private :\r
-\r
-    friend class Selector<SocketTCP>;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the socket from a socket descriptor\r
-    /// (for internal use only)\r
-    ///\r
-    /// \param Descriptor : Socket descriptor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SocketTCP(SocketHelper::SocketType Descriptor);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create the socket\r
-    ///\r
-    /// \param Descriptor : System socket descriptor to use (0 by default -- create a new socket)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Create(SocketHelper::SocketType Descriptor = 0);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    SocketHelper::SocketType mySocket;            ///< Socket descriptor\r
-    Uint32                   myPendingHeader;     ///< Data of the current pending packet header, if any\r
-    Uint32                   myPendingHeaderSize; ///< Size of the current pending packet header, if any\r
-    std::vector<char>        myPendingPacket;     ///< Data of the current pending packet, if any\r
-    Int32                    myPendingPacketSize; ///< Size of the current pending packet, if any\r
-    bool                     myIsBlocking;        ///< Is the socket blocking or non-blocking ?\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SOCKETTCP_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/SocketUDP.hpp b/dependencies64/sfml/include/SFML/Network/SocketUDP.hpp
deleted file mode 100644 (file)
index 7cb6b19..0000000
+++ /dev/null
@@ -1,228 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOCKETUDP_HPP\r
-#define SFML_SOCKETUDP_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Network/SocketHelper.hpp>\r
-#include <vector>\r
-\r
-\r
-namespace sf\r
-{\r
-class Packet;\r
-class IPAddress;\r
-template <typename> class Selector;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// SocketUDP wraps a socket using UDP protocol to\r
-/// send data fastly (but with less safety)\r
-////////////////////////////////////////////////////////////\r
-class SFML_API SocketUDP\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SocketUDP();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the blocking state of the socket.\r
-    /// The default behaviour of a socket is blocking\r
-    ///\r
-    /// \param Blocking : Pass true to set the socket as blocking, or false for non-blocking\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetBlocking(bool Blocking);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Bind the socket to a specific port\r
-    ///\r
-    /// \param Port : Port to bind the socket to\r
-    ///\r
-    /// \return True if operation has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool Bind(unsigned short Port);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Unbind the socket from its previous port, if any\r
-    ///\r
-    /// \return True if operation has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool Unbind();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Send an array of bytes\r
-    ///\r
-    /// \param Data :    Pointer to the bytes to send\r
-    /// \param Size :    Number of bytes to send\r
-    /// \param Address : Address of the computer to send the packet to\r
-    /// \param Port :    Port to send the data to\r
-    ///\r
-    /// \return Status code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Send(const char* Data, std::size_t Size, const IPAddress& Address, unsigned short Port);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Receive an array of bytes.\r
-    /// This function will block if the socket is blocking\r
-    ///\r
-    /// \param Data :         Pointer to a byte array to fill (make sure it is big enough)\r
-    /// \param MaxSize :      Maximum number of bytes to read\r
-    /// \param SizeReceived : Number of bytes received\r
-    /// \param Address :      Address of the computer which sent the data\r
-    /// \param Port :         Port on which the remote computer sent the data\r
-    ///\r
-    /// \return Status code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Receive(char* Data, std::size_t MaxSize, std::size_t& SizeReceived, IPAddress& Address, unsigned short& Port);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Send a packet of data\r
-    ///\r
-    /// \param PacketToSend : Packet to send\r
-    /// \param Address :      Address of the computer to send the packet to\r
-    /// \param Port :         Port to send the data to\r
-    ///\r
-    /// \return Status code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Send(Packet& PacketToSend, const IPAddress& Address, unsigned short Port);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Receive a packet.\r
-    /// This function will block if the socket is blocking\r
-    ///\r
-    /// \param PacketToReceive : Packet to fill with received data\r
-    /// \param Address :         Address of the computer which sent the packet\r
-    /// \param Port :            Port on which the remote computer sent the data\r
-    ///\r
-    /// \return Status code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Socket::Status Receive(Packet& PacketToReceive, IPAddress& Address, unsigned short& Port);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Close the socket\r
-    ///\r
-    /// \return True if operation has been successful\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool Close();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Check if the socket is in a valid state ; this function\r
-    /// can be called any time to check if the socket is OK\r
-    ///\r
-    /// \return True if the socket is valid\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsValid() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the port the socket is currently bound to\r
-    ///\r
-    /// \return Current port (0 means the socket is not bound)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned short GetPort() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator ==\r
-    ///\r
-    /// \param Other : Socket to compare\r
-    ///\r
-    /// \return True if *this == Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator ==(const SocketUDP& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator !=\r
-    ///\r
-    /// \param Other : Socket to compare\r
-    ///\r
-    /// \return True if *this != Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator !=(const SocketUDP& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator <.\r
-    /// Provided for compatibility with standard containers, as\r
-    /// comparing two sockets doesn't make much sense...\r
-    ///\r
-    /// \param Other : Socket to compare\r
-    ///\r
-    /// \return True if *this < Other\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator <(const SocketUDP& Other) const;\r
-\r
-private :\r
-\r
-    friend class Selector<SocketUDP>;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the socket from a socket descriptor\r
-    /// (for internal use only)\r
-    ///\r
-    /// \param Descriptor : Socket descriptor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    SocketUDP(SocketHelper::SocketType Descriptor);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create the socket\r
-    ///\r
-    /// \param Descriptor : System socket descriptor to use (0 by default -- create a new socket)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Create(SocketHelper::SocketType Descriptor = 0);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    SocketHelper::SocketType mySocket;            ///< Socket identifier\r
-    unsigned short           myPort;              ///< Port to which the socket is bound\r
-    Uint32                   myPendingHeader;     ///< Data of the current pending packet header, if any\r
-    Uint32                   myPendingHeaderSize; ///< Size of the current pending packet header, if any\r
-    std::vector<char>        myPendingPacket;     ///< Data of the current pending packet, if any\r
-    Int32                    myPendingPacketSize; ///< Size of the current pending packet, if any\r
-    bool                     myIsBlocking;        ///< Is the socket blocking or non-blocking ?\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SOCKETUDP_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/Sockets.hpp b/dependencies64/sfml/include/SFML/Network/Sockets.hpp
deleted file mode 100644 (file)
index 1359cb9..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOCKETS_HPP\r
-#define SFML_SOCKETS_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-#ifdef SFML_SYSTEM_WINDOWS\r
-\r
-    #include <SFML/Network/Win32/Sockets.hpp>\r
-\r
-#else\r
-\r
-    #include <SFML/Network/Unix/Sockets.hpp>\r
-\r
-#endif\r
-\r
-\r
-#endif // SFML_SOCKETS_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/Unix/SocketHelper.hpp b/dependencies64/sfml/include/SFML/Network/Unix/SocketHelper.hpp
deleted file mode 100644 (file)
index 1068cd8..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOCKETHELPERUNIX_HPP\r
-#define SFML_SOCKETHELPERUNIX_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <sys/types.h>\r
-#include <sys/socket.h>\r
-#include <netinet/in.h>\r
-#include <netinet/tcp.h>\r
-#include <arpa/inet.h>\r
-#include <netdb.h>\r
-#include <unistd.h>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// This class defines helper functions to do all the\r
-/// non-portable socket stuff. This class is meant for internal\r
-/// use only\r
-////////////////////////////////////////////////////////////\r
-class SFML_API SocketHelper\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Define some socket types\r
-    ////////////////////////////////////////////////////////////\r
-    typedef int       SocketType;\r
-    typedef socklen_t LengthType;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the value of the invalid socket\r
-    ///\r
-    /// \return Unique value of the invalid socket\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static SocketType InvalidSocket();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Close / destroy a socket\r
-    ///\r
-    /// \param Socket : Socket to close\r
-    ///\r
-    /// \return True on success\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static bool Close(SocketType Socket);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set a socket as blocking or non-blocking\r
-    ///\r
-    /// \param Socket : Socket to modify\r
-    /// \param Block :  New blocking state of the socket\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static void SetBlocking(SocketType Socket, bool Block);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the last socket error status\r
-    ///\r
-    /// \return Status corresponding to the last socket error\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Socket::Status GetErrorStatus();\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SOCKETHELPERUNIX_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Network/Win32/SocketHelper.hpp b/dependencies64/sfml/include/SFML/Network/Win32/SocketHelper.hpp
deleted file mode 100644 (file)
index 6199c0a..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SOCKETHELPERWIN32_HPP\r
-#define SFML_SOCKETHELPERWIN32_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <winsock2.h>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// This class defines helper functions to do all the\r
-/// non-portable socket stuff. This class is meant for internal\r
-/// use only\r
-////////////////////////////////////////////////////////////\r
-class SFML_API SocketHelper\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Define some socket types\r
-    ////////////////////////////////////////////////////////////\r
-    typedef SOCKET SocketType;\r
-    typedef int    LengthType;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Return the value of the invalid socket\r
-    ///\r
-    /// \return Unique value of the invalid socket\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static SocketType InvalidSocket();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Close / destroy a socket\r
-    ///\r
-    /// \param Socket : Socket to close\r
-    ///\r
-    /// \return True on success\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static bool Close(SocketType Socket);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set a socket as blocking or non-blocking\r
-    ///\r
-    /// \param Socket : Socket to modify\r
-    /// \param Block :  New blocking state of the socket\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static void SetBlocking(SocketType Socket, bool Block);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the last socket error status\r
-    ///\r
-    /// \return Status corresponding to the last socket error\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Socket::Status GetErrorStatus();\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SOCKETHELPERWIN32_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System.hpp b/dependencies64/sfml/include/SFML/System.hpp
deleted file mode 100644 (file)
index f2b6844..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SYSTEM_HPP\r
-#define SFML_SYSTEM_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-\r
-#include <SFML/Config.hpp>\r
-#include <SFML/System/Clock.hpp>\r
-#include <SFML/System/Lock.hpp>\r
-#include <SFML/System/Mutex.hpp>\r
-#include <SFML/System/Randomizer.hpp>\r
-#include <SFML/System/Sleep.hpp>\r
-#include <SFML/System/Thread.hpp>\r
-#include <SFML/System/Unicode.hpp>\r
-#include <SFML/System/Vector2.hpp>\r
-#include <SFML/System/Vector3.hpp>\r
-\r
-#endif // SFML_SYSTEM_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Clock.hpp b/dependencies64/sfml/include/SFML/System/Clock.hpp
deleted file mode 100644 (file)
index 76c0055..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_CLOCK_HPP\r
-#define SFML_CLOCK_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Clock is an utility class for manipulating time\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Clock\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Clock();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the time elapsed since last reset\r
-    ///\r
-    /// \return Time elapsed, in seconds\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetElapsedTime() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Restart the timer\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Reset();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    double myStartTime; ///< Time of last reset\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_CLOCK_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Lock.hpp b/dependencies64/sfml/include/SFML/System/Lock.hpp
deleted file mode 100644 (file)
index 6f84f73..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_LOCK_HPP\r
-#define SFML_LOCK_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/NonCopyable.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-class Mutex;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Lock is an exception-safe automatic wrapper for\r
-/// locking and unlocking mutexes\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Lock : NonCopyable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the lock with a target mutex (lock it)\r
-    ///\r
-    /// @param Mutex : Mutex to lock\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Lock(Mutex& Mutex);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor (unlocks the mutex)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~Lock();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    Mutex& myMutex; ///< Mutex to lock / unlock\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_LOCK_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Mutex.hpp b/dependencies64/sfml/include/SFML/System/Mutex.hpp
deleted file mode 100644 (file)
index 536c537..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_MUTEX_HPP\r
-#define SFML_MUTEX_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-#ifdef SFML_SYSTEM_WINDOWS\r
-\r
-    #include <SFML/System/Win32/Mutex.hpp>\r
-\r
-#else\r
-\r
-    #include <SFML/System/Unix/Mutex.hpp>\r
-\r
-#endif\r
-\r
-\r
-#endif // SFML_MUTEX_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/NonCopyable.hpp b/dependencies64/sfml/include/SFML/System/NonCopyable.hpp
deleted file mode 100644 (file)
index 3ac6719..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_NONCOPYABLE_HPP\r
-#define SFML_NONCOPYABLE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Utility base class to easily declare non-copyable classes.\r
-/// Just inherit from NonCopyable to get a non-copyable class\r
-////////////////////////////////////////////////////////////\r
-struct SFML_API NonCopyable\r
-{\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// The default constructor won't be generated, so provide it\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    NonCopyable() {}\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Copy constructor : declare it private and don't implement\r
-    /// it to prevent from calling it\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    NonCopyable(const NonCopyable&);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Assignment operator : declare it private and don't implement\r
-    /// it to prevent from calling it\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    NonCopyable& operator =(const NonCopyable&);\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_NONCOPYABLE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Randomizer.hpp b/dependencies64/sfml/include/SFML/System/Randomizer.hpp
deleted file mode 100644 (file)
index 8ed27cd..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_RANDOMIZER_HPP\r
-#define SFML_RANDOMIZER_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Randomizer is an utility class for generating pseudo-random\r
-/// numbers\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Randomizer\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Set the seed for the generator. Using a known seed\r
-    /// allows you to reproduce the same sequence of random number\r
-    ///\r
-    /// \param Seed : Number to use as the seed\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static void SetSeed(unsigned int Seed);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the seed used to generate random numbers the generator.\r
-    ///\r
-    /// \return Current seed\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static unsigned int GetSeed();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get a random float number in a given range\r
-    ///\r
-    /// \return Start : Start of the range\r
-    /// \return End :   End of the range\r
-    ///\r
-    /// \return Random number in [Begin, End]\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static float Random(float Begin, float End);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get a random integer number in a given range\r
-    ///\r
-    /// \return Start : Start of the range\r
-    /// \return End :   End of the range\r
-    ///\r
-    /// \return Random number in [Begin, End]\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static int Random(int Begin, int End);\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Static member variables\r
-    ////////////////////////////////////////////////////////////\r
-    static unsigned int ourSeed;\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_RANDOMIZER_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Resource.hpp b/dependencies64/sfml/include/SFML/System/Resource.hpp
deleted file mode 100644 (file)
index 8f5088d..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_RESOURCE_HPP\r
-#define SFML_RESOURCE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <set>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-// These two classes are defined in the same header because\r
-// they depend on each other. And as they're template classes,\r
-// they must be entirely defined in header files, which\r
-// prevents from proper separate compiling\r
-////////////////////////////////////////////////////////////\r
-\r
-template <typename> class ResourcePtr;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Base class for every resource that needs to notify\r
-/// dependent classes about its destruction\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-class Resource\r
-{\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Resource();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Copy constructor\r
-    ///\r
-    /// \param Copy : Resource to copy\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Resource(const Resource<T>& Copy);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~Resource();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Assignment operator\r
-    ///\r
-    /// \param Other : Resource to copy\r
-    ///\r
-    /// \return Reference to this\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Resource<T>& operator =(const Resource<T>& Other);\r
-\r
-private :\r
-\r
-    friend class ResourcePtr<T>;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Connect a ResourcePtr to this resource\r
-    ///\r
-    /// \param Observer : Observer to add\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Connect(ResourcePtr<T>& Observer) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Disconnect a ResourcePtr from this resource\r
-    ///\r
-    /// \param Observer : Observer to remove\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Disconnect(ResourcePtr<T>& Observer) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    mutable std::set<ResourcePtr<T>*> myObservers;\r
-};\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Safe pointer to a T resource (inheriting from sf::Resource<T>),\r
-/// its pointer is automatically reseted when the resource is destroyed\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-class ResourcePtr\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ResourcePtr();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct from a raw resource\r
-    ///\r
-    /// \param Resource : Internal resource\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ResourcePtr(const T* Resource);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Copy constructor\r
-    ///\r
-    /// \param Copy : Instance to copy\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ResourcePtr(const ResourcePtr<T>& Copy);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~ResourcePtr();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Assignment operator from another ResourcePtr\r
-    ///\r
-    /// \param Other : Resource pointer to assign\r
-    ///\r
-    /// \return Reference to this\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ResourcePtr<T>& operator =(const ResourcePtr<T>& Other);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Assignment operator from a raw resource\r
-    ///\r
-    /// \param Resource : Resource to assign\r
-    ///\r
-    /// \return Reference to this\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ResourcePtr<T>& operator =(const T* Resource);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Cast operator to implicitely convert the resource pointer to\r
-    /// its raw pointer type.\r
-    /// This might be dangerous in the general case, but in this context\r
-    /// it is safe enough to define this operator\r
-    ///\r
-    /// \return Pointer to the actual resource\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    operator const T*() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Operator * overload to return a reference to the actual resource\r
-    ///\r
-    /// \return Reference to the internal resource\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const T& operator *() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Operator -> overload to return a pointer to the actual resource\r
-    ///\r
-    /// \return Pointer to the internal resource\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const T* operator ->() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Function called when the observed resource is about to be\r
-    /// destroyed\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void OnResourceDestroyed();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    const T* myResource; /// Pointer to the actual resource\r
-};\r
-\r
-#include <SFML/System/Resource.inl>\r
-#include <SFML/System/ResourcePtr.inl>\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_RESOURCE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Resource.inl b/dependencies64/sfml/include/SFML/System/Resource.inl
deleted file mode 100644 (file)
index c4276a1..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Default constructor\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Resource<T>::Resource()\r
-{\r
-    // Nothing to do\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Copy constructor\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Resource<T>::Resource(const Resource<T>&)\r
-{\r
-    // Nothing to do, we don't want to copy observers\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Destructor\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Resource<T>::~Resource()\r
-{\r
-    // Notify all observers\r
-    for (typename std::set<ResourcePtr<T>*>::iterator i = myObservers.begin(); i != myObservers.end(); ++i)\r
-    {\r
-        (*i)->OnResourceDestroyed();\r
-    }\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Assignment operator\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Resource<T>& Resource<T>::operator =(const Resource<T>&)\r
-{\r
-    // Nothing to do, we don't want to copy observers\r
-    return *this;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Connect a ResourcePtr to this resource\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-void Resource<T>::Connect(ResourcePtr<T>& Observer) const\r
-{\r
-    myObservers.insert(&Observer);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Disconnect a ResourcePtr from this resource\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-void Resource<T>::Disconnect(ResourcePtr<T>& Observer) const\r
-{\r
-    myObservers.erase(&Observer);\r
-}\r
diff --git a/dependencies64/sfml/include/SFML/System/ResourcePtr.inl b/dependencies64/sfml/include/SFML/System/ResourcePtr.inl
deleted file mode 100644 (file)
index dbfcd0d..0000000
+++ /dev/null
@@ -1,149 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Default constructor\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-ResourcePtr<T>::ResourcePtr() :\r
-myResource(NULL)\r
-{\r
-\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Construct from a raw resource\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-ResourcePtr<T>::ResourcePtr(const T* Resource) :\r
-myResource(Resource)\r
-{\r
-    if (myResource)\r
-        myResource->Connect(*this);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Copy constructor\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-ResourcePtr<T>::ResourcePtr(const ResourcePtr<T>& Copy) :\r
-myResource(Copy.myResource)\r
-{\r
-    if (myResource)\r
-        myResource->Connect(*this);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Destructor\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-ResourcePtr<T>::~ResourcePtr()\r
-{\r
-    if (myResource)\r
-        myResource->Disconnect(*this);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Assignment operator from another ResourcePtr\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-ResourcePtr<T>& ResourcePtr<T>::operator =(const ResourcePtr<T>& Other)\r
-{\r
-    if (myResource)\r
-        myResource->Disconnect(*this);\r
-\r
-    myResource = Other.myResource;\r
-\r
-    if (myResource)\r
-        myResource->Connect(*this);\r
-\r
-    return *this;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Assignment operator from a raw resource\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-ResourcePtr<T>& ResourcePtr<T>::operator =(const T* Resource)\r
-{\r
-    if (myResource)\r
-        myResource->Disconnect(*this);\r
-\r
-    myResource = Resource;\r
-\r
-    if (myResource)\r
-        myResource->Connect(*this);\r
-\r
-    return *this;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Cast operator to implicitely convert the resource pointer to\r
-/// its raw pointer type.\r
-/// This might be dangerous in the general case, but in this context\r
-/// it is safe enough to define this operator\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-ResourcePtr<T>::operator const T*() const\r
-{\r
-    return myResource;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload to return a reference to the actual resource\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-const T& ResourcePtr<T>::operator *() const\r
-{\r
-    return *myResource;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator -> overload to return a pointer to the actual resource\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-const T* ResourcePtr<T>::operator ->() const\r
-{\r
-    return myResource;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Function called when the observed resource is about to be\r
-/// destroyed\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-void ResourcePtr<T>::OnResourceDestroyed()\r
-{\r
-    myResource = NULL;\r
-}\r
diff --git a/dependencies64/sfml/include/SFML/System/Sleep.hpp b/dependencies64/sfml/include/SFML/System/Sleep.hpp
deleted file mode 100644 (file)
index 2d0ebca..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SLEEP_HPP\r
-#define SFML_SLEEP_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-    ////////////////////////////////////////////////////////////\r
-    /// Make the current thread sleep for a given time\r
-    ///\r
-    /// \param Duration : Time to sleep, in seconds (must be >= 0)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SFML_API Sleep(float Duration);\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_SLEEP_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Thread.hpp b/dependencies64/sfml/include/SFML/System/Thread.hpp
deleted file mode 100644 (file)
index 1cfe1e6..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_THREAD_HPP\r
-#define SFML_THREAD_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-#ifdef SFML_SYSTEM_WINDOWS\r
-\r
-    #include <SFML/System/Win32/Thread.hpp>\r
-\r
-#else\r
-\r
-    #include <SFML/System/Unix/Thread.hpp>\r
-\r
-#endif\r
-\r
-\r
-#endif // SFML_THREAD_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Unicode.hpp b/dependencies64/sfml/include/SFML/System/Unicode.hpp
deleted file mode 100644 (file)
index f807fb3..0000000
+++ /dev/null
@@ -1,290 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_UNICODE_HPP\r
-#define SFML_UNICODE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <iterator>\r
-#include <locale>\r
-#include <string>\r
-#include <stdlib.h>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Provides utility functions to convert from and to\r
-/// any unicode and ASCII encoding\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Unicode\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Define a string type for each encoding\r
-    /// Warning : in UTF8 and UTF16 strings, one element doesn't\r
-    /// necessarily maps to one character ; only an UTF32 element\r
-    /// is wide enough to hold all possible unicode values\r
-    ////////////////////////////////////////////////////////////\r
-    typedef std::basic_string<Uint8>  UTF8String;\r
-    typedef std::basic_string<Uint16> UTF16String;\r
-    typedef std::basic_string<Uint32> UTF32String;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// This class is an abstract definition of a unicode text,\r
-    /// it can be converted from and to any kind of string\r
-    /// and encoding\r
-    ////////////////////////////////////////////////////////////\r
-    class SFML_API Text\r
-    {\r
-    public :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Default constructor (empty text)\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        Text();\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Construct the unicode text from any type of string\r
-        ///\r
-        /// \param Str : String to convert\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        Text(const char*                 Str);\r
-        Text(const wchar_t*              Str);\r
-        Text(const Uint8*                Str);\r
-        Text(const Uint16*               Str);\r
-        Text(const Uint32*               Str);\r
-        Text(const std::string&          Str);\r
-        Text(const std::wstring&         Str);\r
-        Text(const Unicode::UTF8String&  Str);\r
-        Text(const Unicode::UTF16String& Str);\r
-        Text(const Unicode::UTF32String& Str);\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        /// Operator to cast the text to any type of string\r
-        ///\r
-        /// \return Converted string\r
-        ///\r
-        ////////////////////////////////////////////////////////////\r
-        operator       std::string          () const;\r
-        operator       std::wstring         () const;\r
-        operator       Unicode::UTF8String  () const;\r
-        operator       Unicode::UTF16String () const;\r
-        operator const Unicode::UTF32String&() const;\r
-\r
-    private :\r
-\r
-        ////////////////////////////////////////////////////////////\r
-        // Data member\r
-        ////////////////////////////////////////////////////////////\r
-        sf::Unicode::UTF32String myUTF32String; ///< UTF-32 unicode text\r
-    };\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Generic function to convert an UTF-32 characters range\r
-    /// to an ANSI characters range, using the given locale\r
-    ///\r
-    /// \param Begin :       Iterator pointing to the beginning of the input sequence\r
-    /// \param End :         Iterator pointing to the end of the input sequence\r
-    /// \param Output :      Iterator pointing to the beginning of the output sequence\r
-    /// \param Replacement : Replacement character for characters not convertible to output encoding ('?' by default -- use 0 to use no replacement character)\r
-    /// \param Locale :      Locale to use for conversion (uses the current one by default)\r
-    ///\r
-    /// \return Iterator to the end of the output sequence which has been written\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In, typename Out>\r
-    static Out UTF32ToANSI(In Begin, In End, Out Output, char Replacement = '?', const std::locale& Locale = GetDefaultLocale());\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Generic function to convert an ANSI characters range\r
-    /// to an UTF-32 characters range, using the given locale\r
-    ///\r
-    /// \param Begin :  Iterator pointing to the beginning of the input sequence\r
-    /// \param End :    Iterator pointing to the end of the input sequence\r
-    /// \param Output : Iterator pointing to the beginning of the output sequence\r
-    /// \param Locale : Locale to use for conversion (uses the current one by default)\r
-    ///\r
-    /// \return Iterator to the end of the output sequence which has been written\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In, typename Out>\r
-    static Out ANSIToUTF32(In Begin, In End, Out Output, const std::locale& Locale = GetDefaultLocale());\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Generic function to convert an UTF-8 characters range\r
-    /// to an UTF-16 characters range, using the given locale\r
-    ///\r
-    /// \param Begin :       Iterator pointing to the beginning of the input sequence\r
-    /// \param End :         Iterator pointing to the end of the input sequence\r
-    /// \param Output :      Iterator pointing to the beginning of the output sequence\r
-    /// \param Replacement : Replacement character for characters not convertible to output encoding ('?' by default -- use 0 to use no replacement character)\r
-    ///\r
-    /// \return Iterator to the end of the output sequence which has been written\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In, typename Out>\r
-    static Out UTF8ToUTF16(In Begin, In End, Out Output, Uint16 Replacement = '?');\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Generic function to convert an UTF-8 characters range\r
-    /// to an UTF-32 characters range, using the given locale\r
-    ///\r
-    /// \param Begin :       Iterator pointing to the beginning of the input sequence\r
-    /// \param End :         Iterator pointing to the end of the input sequence\r
-    /// \param Output :      Iterator pointing to the beginning of the output sequence\r
-    /// \param Replacement : Replacement character for characters not convertible to output encoding ('?' by default -- use 0 to use no replacement character)\r
-    ///\r
-    /// \return Iterator to the end of the output sequence which has been written\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In, typename Out>\r
-    static Out UTF8ToUTF32(In Begin, In End, Out Output, Uint32 Replacement = '?');\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Generic function to convert an UTF-16 characters range\r
-    /// to an UTF-8 characters range, using the given locale\r
-    ///\r
-    /// \param Begin :       Iterator pointing to the beginning of the input sequence\r
-    /// \param End :         Iterator pointing to the end of the input sequence\r
-    /// \param Output :      Iterator pointing to the beginning of the output sequence\r
-    /// \param Replacement : Replacement character for characters not convertible to output encoding ('?' by default -- use 0 to use no replacement character)\r
-    ///\r
-    /// \return Iterator to the end of the output sequence which has been written\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In, typename Out>\r
-    static Out UTF16ToUTF8(In Begin, In End, Out Output, Uint8 Replacement = '?');\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Generic function to convert an UTF-16 characters range\r
-    /// to an UTF-32 characters range, using the given locale\r
-    ///\r
-    /// \param Begin :       Iterator pointing to the beginning of the input sequence\r
-    /// \param End :         Iterator pointing to the end of the input sequence\r
-    /// \param Output :      Iterator pointing to the beginning of the output sequence\r
-    /// \param Replacement : Replacement character for characters not convertible to output encoding ('?' by default -- use 0 to use no replacement character)\r
-    ///\r
-    /// \return Iterator to the end of the output sequence which has been written\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In, typename Out>\r
-    static Out UTF16ToUTF32(In Begin, In End, Out Output, Uint32 Replacement = '?');\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Generic function to convert an UTF-32 characters range\r
-    /// to an UTF-8 characters range, using the given locale\r
-    ///\r
-    /// \param Begin :       Iterator pointing to the beginning of the input sequence\r
-    /// \param End :         Iterator pointing to the end of the input sequence\r
-    /// \param Output :      Iterator pointing to the beginning of the output sequence\r
-    /// \param Replacement : Replacement character for characters not convertible to output encoding ('?' by default -- use 0 to use no replacement character)\r
-    ///\r
-    /// \return Iterator to the end of the output sequence which has been written\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In, typename Out>\r
-    static Out UTF32ToUTF8(In Begin, In End, Out Output, Uint8 Replacement = '?');\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Generic function to convert an UTF-32 characters range\r
-    /// to an UTF-16 characters range, using the given locale\r
-    ///\r
-    /// \param Begin :       Iterator pointing to the beginning of the input sequence\r
-    /// \param End :         Iterator pointing to the end of the input sequence\r
-    /// \param Output :      Iterator pointing to the beginning of the output sequence\r
-    /// \param Replacement : Replacement character for characters not convertible to output encoding ('?' by default -- use 0 to use no replacement character)\r
-    ///\r
-    /// \return Iterator to the end of the output sequence which has been written\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In, typename Out>\r
-    static Out UTF32ToUTF16(In Begin, In End, Out Output, Uint16 Replacement = '?');\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the number of characters composing an UTF-8 string\r
-    ///\r
-    /// \param Begin : Iterator pointing to the beginning of the input sequence\r
-    /// \param End :   Iterator pointing to the end of the input sequence\r
-    ///\r
-    /// \return Count of the characters in the string\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In>\r
-    static std::size_t GetUTF8Length(In Begin, In End);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the number of characters composing an UTF-16 string\r
-    ///\r
-    /// \param Begin : Iterator pointing to the beginning of the input sequence\r
-    /// \param End :   Iterator pointing to the end of the input sequence\r
-    ///\r
-    /// \return Count of the characters in the string\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In>\r
-    static std::size_t GetUTF16Length(In Begin, In End);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the number of characters composing an UTF-32 string\r
-    ///\r
-    /// \param Begin : Iterator pointing to the beginning of the input sequence\r
-    /// \param End :   Iterator pointing to the end of the input sequence\r
-    ///\r
-    /// \return Count of the characters in the string\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    template <typename In>\r
-    static std::size_t GetUTF32Length(In Begin, In End);\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the default system locale\r
-    ///\r
-    /// \return Reference to the default system locale\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static const std::locale& GetDefaultLocale();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Static member data\r
-    ////////////////////////////////////////////////////////////\r
-    static const int    UTF8TrailingBytes[256]; ///< Lookup table to find the length of an UTF-8 sequence\r
-    static const Uint32 UTF8Offsets[6];         ///< Magic values to subtract during UTF-8 conversions\r
-    static const Uint8  UTF8FirstBytes[7];      ///< First bytes for UTF-8 sequences\r
-};\r
-\r
-#include <SFML/System/Unicode.inl>\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_UNICODE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Unicode.inl b/dependencies64/sfml/include/SFML/System/Unicode.inl
deleted file mode 100644 (file)
index a169811..0000000
+++ /dev/null
@@ -1,474 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Generic function to convert an UTF-32 characters range\r
-/// to an ANSI characters range, using the given locale\r
-////////////////////////////////////////////////////////////\r
-template <typename In, typename Out>\r
-inline Out Unicode::UTF32ToANSI(In Begin, In End, Out Output, char Replacement, const std::locale& Locale)\r
-{\r
-    #ifdef __MINGW32__\r
-\r
-        // MinGW has a almost no support for unicode stuff\r
-        // As a consequence, the MinGW version of this function can only use the default locale\r
-        // and ignores the one passed as parameter\r
-        while (Begin < End)\r
-        {\r
-            char Char = 0;\r
-            if (wctomb(&Char, static_cast<wchar_t>(*Begin++)) >= 0)\r
-                *Output++ = Char;\r
-            else if (Replacement)\r
-                *Output++ = Replacement;\r
-        }\r
-\r
-    #else\r
-\r
-        // Get the facet of the locale which deals with character conversion\r
-        const std::ctype<wchar_t>& Facet = std::use_facet< std::ctype<wchar_t> >(Locale);\r
-\r
-        // Use the facet to convert each character of the input string\r
-        while (Begin < End)\r
-            *Output++ = Facet.narrow(static_cast<wchar_t>(*Begin++), Replacement);\r
-\r
-    #endif\r
-\r
-    return Output;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Generic function to convert an ANSI characters range\r
-/// to an UTF-32 characters range, using the given locale\r
-////////////////////////////////////////////////////////////\r
-template <typename In, typename Out>\r
-inline Out Unicode::ANSIToUTF32(In Begin, In End, Out Output, const std::locale& Locale)\r
-{\r
-    #ifdef __MINGW32__\r
-\r
-        // MinGW has a almost no support for unicode stuff\r
-        // As a consequence, the MinGW version of this function can only use the default locale\r
-        // and ignores the one passed as parameter\r
-        while (Begin < End)\r
-        {\r
-            wchar_t Char = 0;\r
-            mbtowc(&Char, &*Begin, 1);\r
-            Begin++;\r
-            *Output++ = static_cast<Uint32>(Char);\r
-        }\r
-\r
-    #else\r
-\r
-        // Get the facet of the locale which deals with character conversion\r
-        const std::ctype<wchar_t>& Facet = std::use_facet< std::ctype<wchar_t> >(Locale);\r
-\r
-        // Use the facet to convert each character of the input string\r
-        while (Begin < End)\r
-            *Output++ = static_cast<Uint32>(Facet.widen(*Begin++));\r
-\r
-    #endif\r
-\r
-    return Output;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Generic function to convert an UTF-8 characters range\r
-/// to an UTF-16 characters range, using the given locale\r
-////////////////////////////////////////////////////////////\r
-template <typename In, typename Out>\r
-inline Out Unicode::UTF8ToUTF16(In Begin, In End, Out Output, Uint16 Replacement)\r
-{\r
-    while (Begin < End)\r
-    {\r
-        Uint32 c = 0;\r
-        int TrailingBytes = UTF8TrailingBytes[static_cast<int>(*Begin)];\r
-        if (Begin + TrailingBytes < End)\r
-        {\r
-            // First decode the UTF-8 character\r
-            switch (TrailingBytes)\r
-            {\r
-                case 5 : c += *Begin++; c <<= 6;\r
-                case 4 : c += *Begin++; c <<= 6;\r
-                case 3 : c += *Begin++; c <<= 6;\r
-                case 2 : c += *Begin++; c <<= 6;\r
-                case 1 : c += *Begin++; c <<= 6;\r
-                case 0 : c += *Begin++;\r
-            }\r
-               c -= UTF8Offsets[TrailingBytes];\r
-\r
-            // Then encode it in UTF-16\r
-            if (c < 0xFFFF)\r
-            {\r
-                // Character can be converted directly to 16 bits, just need to check it's in the valid range\r
-                if ((c >= 0xD800) && (c <= 0xDFFF))\r
-                {\r
-                    // Invalid character (this range is reserved)\r
-                    if (Replacement)\r
-                        *Output++ = Replacement;\r
-                }\r
-                else\r
-                {\r
-                    // Valid character directly convertible to 16 bits\r
-                    *Output++ = static_cast<Uint16>(c);\r
-                }\r
-            }\r
-            else if (c > 0x0010FFFF)\r
-            {\r
-                // Invalid character (greater than the maximum unicode value)\r
-                if (Replacement)\r
-                    *Output++ = Replacement;\r
-            }\r
-            else\r
-            {\r
-                // Character will be converted to 2 UTF-16 elements\r
-                c -= 0x0010000;\r
-                *Output++ = static_cast<Uint16>((c >> 10)     + 0xD800);\r
-                *Output++ = static_cast<Uint16>((c & 0x3FFUL) + 0xDC00);\r
-            }\r
-        }\r
-    }\r
-\r
-    return Output;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Generic function to convert an UTF-8 characters range\r
-/// to an UTF-32 characters range, using the given locale\r
-////////////////////////////////////////////////////////////\r
-template <typename In, typename Out>\r
-inline Out Unicode::UTF8ToUTF32(In Begin, In End, Out Output, Uint32 Replacement)\r
-{\r
-    while (Begin < End)\r
-    {\r
-        Uint32 c = 0;\r
-        int TrailingBytes = UTF8TrailingBytes[static_cast<int>(*Begin)];\r
-        if (Begin + TrailingBytes < End)\r
-        {\r
-            // First decode the UTF-8 character\r
-            switch (TrailingBytes)\r
-            {\r
-                case 5 : c += *Begin++; c <<= 6;\r
-                case 4 : c += *Begin++; c <<= 6;\r
-                case 3 : c += *Begin++; c <<= 6;\r
-                case 2 : c += *Begin++; c <<= 6;\r
-                case 1 : c += *Begin++; c <<= 6;\r
-                case 0 : c += *Begin++;\r
-            }\r
-               c -= UTF8Offsets[TrailingBytes];\r
-\r
-            // Then write it if valid\r
-            if ((c < 0xD800) || (c > 0xDFFF))\r
-            {\r
-                // Valid UTF-32 character\r
-                *Output++ = c;\r
-            }\r
-            else\r
-            {\r
-                // Invalid UTF-32 character\r
-                if (Replacement)\r
-                    *Output++ = Replacement;\r
-            }\r
-        }\r
-    }\r
-\r
-    return Output;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Generic function to convert an UTF-16 characters range\r
-/// to an UTF-8 characters range, using the given locale\r
-////////////////////////////////////////////////////////////\r
-template <typename In, typename Out>\r
-inline Out Unicode::UTF16ToUTF8(In Begin, In End, Out Output, Uint8 Replacement)\r
-{\r
-    while (Begin < End)\r
-    {\r
-        Uint32 c = *Begin++;\r
-\r
-        // If it's a surrogate pair, first convert to a single UTF-32 character\r
-        if ((c >= 0xD800) && (c <= 0xDBFF))\r
-        {\r
-            if (Begin < End)\r
-            {\r
-                // The second element is valid : convert the two elements to a UTF-32 character\r
-                Uint32 d = *Begin++;\r
-                if ((d >= 0xDC00) && (d <= 0xDFFF))\r
-                    c = static_cast<Uint32>(((c - 0xD800) << 10) + (d - 0xDC00) + 0x0010000);\r
-            }\r
-            else\r
-            {\r
-                // Invalid second element\r
-                if (Replacement)\r
-                    *Output++ = Replacement;\r
-            }\r
-        }\r
-\r
-        // Then convert to UTF-8\r
-        if (c > 0x0010FFFF)\r
-        {\r
-            // Invalid character (greater than the maximum unicode value)\r
-            if (Replacement)\r
-                *Output++ = Replacement;\r
-        }\r
-        else\r
-        {\r
-            // Valid character\r
-\r
-            // Get number of bytes to write\r
-            int BytesToWrite = 1;\r
-            if      (c <  0x80)       BytesToWrite = 1;\r
-            else if (c <  0x800)      BytesToWrite = 2;\r
-            else if (c <  0x10000)    BytesToWrite = 3;\r
-            else if (c <= 0x0010FFFF) BytesToWrite = 4;\r
-\r
-            // Extract bytes to write\r
-            Uint8 Bytes[4];\r
-            switch (BytesToWrite)\r
-            {\r
-                case 4 : Bytes[3] = static_cast<Uint8>((c | 0x80) & 0xBF); c >>= 6;\r
-                case 3 : Bytes[2] = static_cast<Uint8>((c | 0x80) & 0xBF); c >>= 6;\r
-                case 2 : Bytes[1] = static_cast<Uint8>((c | 0x80) & 0xBF); c >>= 6;\r
-                case 1 : Bytes[0] = static_cast<Uint8> (c | UTF8FirstBytes[BytesToWrite]);\r
-            }\r
-\r
-            // Add them to the output\r
-            const Uint8* CurByte = Bytes;\r
-            switch (BytesToWrite)\r
-            {\r
-                case 4 : *Output++ = *CurByte++;\r
-                case 3 : *Output++ = *CurByte++;\r
-                case 2 : *Output++ = *CurByte++;\r
-                case 1 : *Output++ = *CurByte++;\r
-            }\r
-        }\r
-    }\r
-\r
-    return Output;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Generic function to convert an UTF-16 characters range\r
-/// to an UTF-32 characters range, using the given locale\r
-////////////////////////////////////////////////////////////\r
-template <typename In, typename Out>\r
-inline Out Unicode::UTF16ToUTF32(In Begin, In End, Out Output, Uint32 Replacement)\r
-{\r
-    while (Begin < End)\r
-    {\r
-        Uint16 c = *Begin++;\r
-        if ((c >= 0xD800) && (c <= 0xDBFF))\r
-        {\r
-            // We have a surrogate pair, ie. a character composed of two elements\r
-            if (Begin < End)\r
-            {\r
-                Uint16 d = *Begin++;\r
-                if ((d >= 0xDC00) && (d <= 0xDFFF))\r
-                {\r
-                    // The second element is valid : convert the two elements to a UTF-32 character\r
-                    *Output++ = static_cast<Uint32>(((c - 0xD800) << 10) + (d - 0xDC00) + 0x0010000);\r
-                }\r
-                else\r
-                {\r
-                    // Invalid second element\r
-                    if (Replacement)\r
-                        *Output++ = Replacement;\r
-                }\r
-            }\r
-        }\r
-        else if ((c >= 0xDC00) && (c <= 0xDFFF))\r
-        {\r
-            // Invalid character\r
-            if (Replacement)\r
-                *Output++ = Replacement;\r
-        }\r
-        else\r
-        {\r
-            // Valid character directly convertible to UTF-32\r
-            *Output++ = static_cast<Uint32>(c);\r
-        }\r
-    }\r
-\r
-    return Output;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Generic function to convert an UTF-32 characters range\r
-/// to an UTF-8 characters range, using the given locale\r
-////////////////////////////////////////////////////////////\r
-template <typename In, typename Out>\r
-inline Out Unicode::UTF32ToUTF8(In Begin, In End, Out Output, Uint8 Replacement)\r
-{\r
-    while (Begin < End)\r
-    {\r
-        Uint32 c = *Begin++;\r
-        if (c > 0x0010FFFF)\r
-        {\r
-            // Invalid character (greater than the maximum unicode value)\r
-            if (Replacement)\r
-                *Output++ = Replacement;\r
-        }\r
-        else\r
-        {\r
-            // Valid character\r
-\r
-            // Get number of bytes to write\r
-            int BytesToWrite = 1;\r
-            if      (c <  0x80)       BytesToWrite = 1;\r
-            else if (c <  0x800)      BytesToWrite = 2;\r
-            else if (c <  0x10000)    BytesToWrite = 3;\r
-            else if (c <= 0x0010FFFF) BytesToWrite = 4;\r
-\r
-            // Extract bytes to write\r
-            Uint8 Bytes[4];\r
-            switch (BytesToWrite)\r
-            {\r
-                case 4 : Bytes[3] = static_cast<Uint8>((c | 0x80) & 0xBF); c >>= 6;\r
-                case 3 : Bytes[2] = static_cast<Uint8>((c | 0x80) & 0xBF); c >>= 6;\r
-                case 2 : Bytes[1] = static_cast<Uint8>((c | 0x80) & 0xBF); c >>= 6;\r
-                case 1 : Bytes[0] = static_cast<Uint8> (c | UTF8FirstBytes[BytesToWrite]);\r
-            }\r
-\r
-            // Add them to the output\r
-            const Uint8* CurByte = Bytes;\r
-            switch (BytesToWrite)\r
-            {\r
-                case 4 : *Output++ = *CurByte++;\r
-                case 3 : *Output++ = *CurByte++;\r
-                case 2 : *Output++ = *CurByte++;\r
-                case 1 : *Output++ = *CurByte++;\r
-            }\r
-        }\r
-    }\r
-\r
-    return Output;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Generic function to convert an UTF-32 characters range\r
-/// to an UTF-16 characters range, using the given locale\r
-////////////////////////////////////////////////////////////\r
-template <typename In, typename Out>\r
-inline Out Unicode::UTF32ToUTF16(In Begin, In End, Out Output, Uint16 Replacement)\r
-{\r
-    while (Begin < End)\r
-    {\r
-        Uint32 c = *Begin++;\r
-        if (c < 0xFFFF)\r
-        {\r
-            // Character can be converted directly to 16 bits, just need to check it's in the valid range\r
-            if ((c >= 0xD800) && (c <= 0xDFFF))\r
-            {\r
-                // Invalid character (this range is reserved)\r
-                if (Replacement)\r
-                    *Output++ = Replacement;\r
-            }\r
-            else\r
-            {\r
-                // Valid character directly convertible to 16 bits\r
-                *Output++ = static_cast<Uint16>(c);\r
-            }\r
-        }\r
-        else if (c > 0x0010FFFF)\r
-        {\r
-            // Invalid character (greater than the maximum unicode value)\r
-            if (Replacement)\r
-                *Output++ = Replacement;\r
-        }\r
-        else\r
-        {\r
-            // Character will be converted to 2 UTF-16 elements\r
-            c -= 0x0010000;\r
-            *Output++ = static_cast<Uint16>((c >> 10)     + 0xD800);\r
-            *Output++ = static_cast<Uint16>((c & 0x3FFUL) + 0xDC00);\r
-        }\r
-    }\r
-\r
-    return Output;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Get the number of characters composing an UTF-8 string\r
-////////////////////////////////////////////////////////////\r
-template <typename In>\r
-inline std::size_t Unicode::GetUTF8Length(In Begin, In End)\r
-{\r
-    std::size_t Length = 0;\r
-    while (Begin < End)\r
-    {\r
-        int NbBytes = UTF8TrailingBytes[static_cast<int>(*Begin)];\r
-        if (Begin + NbBytes < End)\r
-            ++Length;\r
-\r
-        Begin += NbBytes + 1;\r
-    }\r
-\r
-    return Length;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Get the number of characters composing an UTF-16 string\r
-////////////////////////////////////////////////////////////\r
-template <typename In>\r
-inline std::size_t Unicode::GetUTF16Length(In Begin, In End)\r
-{\r
-    std::size_t Length = 0;\r
-    while (Begin < End)\r
-    {\r
-        if ((*Begin >= 0xD800) && (*Begin <= 0xDBFF))\r
-        {\r
-            ++Begin;\r
-            if ((Begin < End) && ((*Begin >= 0xDC00) && (*Begin <= 0xDFFF)))\r
-            {\r
-                ++Length;\r
-            }\r
-        }\r
-        else\r
-        {\r
-            ++Length;\r
-        }\r
-\r
-        ++Begin;\r
-    }\r
-\r
-    return Length;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Get the number of characters composing an UTF-32 string\r
-////////////////////////////////////////////////////////////\r
-template <typename In>\r
-inline std::size_t Unicode::GetUTF32Length(In Begin, In End)\r
-{\r
-    return End - Begin;\r
-}\r
diff --git a/dependencies64/sfml/include/SFML/System/Unix/Mutex.hpp b/dependencies64/sfml/include/SFML/System/Unix/Mutex.hpp
deleted file mode 100644 (file)
index f8f24b6..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_MUTEXUNIX_HPP\r
-#define SFML_MUTEXUNIX_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/NonCopyable.hpp>\r
-#include <pthread.h>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Mutex defines a mutex (MUTual EXclusion) object,\r
-/// that allows a thread to lock critical instructions\r
-/// to avoid simultaneous access with other threads.\r
-/// See Lock for an efficient way of using it.\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Mutex : NonCopyable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Mutex();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~Mutex();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Lock the mutex\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Lock();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Unlock the mutex\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Unlock();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    pthread_mutex_t myMutex; ///< pthread instance of the mutex\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_MUTEXUNIX_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Unix/Thread.hpp b/dependencies64/sfml/include/SFML/System/Unix/Thread.hpp
deleted file mode 100644 (file)
index b26d38f..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_THREADUNIX_HPP\r
-#define SFML_THREADUNIX_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/NonCopyable.hpp>\r
-#include <pthread.h>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Thread defines a thread.\r
-/// There is two ways to use Thread :\r
-/// - Inherit from it and override the Run() virtual function\r
-/// - Construct a sfThread instance and pass it a function\r
-/// pointer to call\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Thread : NonCopyable\r
-{\r
-public :\r
-\r
-    typedef void (*FuncType)(void*);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the thread from a function pointer\r
-    ///\r
-    /// \param Function : Entry point of the thread\r
-    /// \param UserData : Data to pass to the thread function (NULL by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Thread(FuncType Function, void* UserData = NULL);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Virtual destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~Thread();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create and run the thread\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Launch();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Wait until the thread finishes\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Wait();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Terminate the thread\r
-    /// Terminating a thread with this function is not safe,\r
-    /// you should rather try to make the thread function\r
-    /// terminate by itself\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Terminate();\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Thread();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Function called as the thread entry point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Run();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Actual thread entry point, dispatches to instances\r
-    ///\r
-    /// \param UserData : Data to pass to the thread function\r
-    ///\r
-    /// \return Error code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static void* ThreadFunc(void* UserData);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    pthread_t myThread;   ///< Unix thread instance\r
-    bool      myIsActive; ///< Thread state (active or inactive)\r
-    FuncType  myFunction; ///< Function to call as the thread entry point\r
-    void*     myUserData; ///< Data to pass to the thread function\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_THREADUNIX_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Vector2.hpp b/dependencies64/sfml/include/SFML/System/Vector2.hpp
deleted file mode 100644 (file)
index 0a5267c..0000000
+++ /dev/null
@@ -1,215 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_VECTOR2_HPP\r
-#define SFML_VECTOR2_HPP\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Vector2 is an utility class for manipulating 2 dimensional\r
-/// vectors. Template parameter defines the type of coordinates\r
-/// (integer, float, ...)\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-class Vector2\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Vector2();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the vector from its coordinates\r
-    ///\r
-    /// \param X : X coordinate\r
-    /// \param Y : Y coordinate\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Vector2(T X, T Y);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    T x; ///< X coordinate of the vector\r
-    T y; ///< Y coordinate of the vector\r
-};\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator - overload ; returns the opposite of a vector\r
-///\r
-/// \param V : Vector to negate\r
-///\r
-/// \return -V\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator -(const Vector2<T>& V);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator += overload ; add two vectors and assign to the first op\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return V1 + V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>& operator +=(Vector2<T>& V1, const Vector2<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator -= overload ; subtract two vectors and assign to the first op\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return V1 - V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>& operator -=(Vector2<T>& V1, const Vector2<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator + overload ; adds two vectors\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return V1 + V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator +(const Vector2<T>& V1, const Vector2<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator - overload ; subtracts two vectors\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return V1 - V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator -(const Vector2<T>& V1, const Vector2<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload ; multiply a vector by a scalar value\r
-///\r
-/// \param V : Vector\r
-/// \param X : Scalar value\r
-///\r
-/// \return V * X\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator *(const Vector2<T>& V, T X);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload ; multiply a scalar value by a vector\r
-///\r
-/// \param X : Scalar value\r
-/// \param V : Vector\r
-///\r
-/// \return X * V\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator *(T X, const Vector2<T>& V);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator *= overload ; multiply-assign a vector by a scalar value\r
-///\r
-/// \param V : Vector\r
-/// \param X : Scalar value\r
-///\r
-/// \return V * X\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>& operator *=(Vector2<T>& V, T X);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator / overload ; divide a vector by a scalar value\r
-///\r
-/// \param V : Vector\r
-/// \param X : Scalar value\r
-///\r
-/// \return V / X\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator /(const Vector2<T>& V, T X);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator /= overload ; divide-assign a vector by a scalar value\r
-///\r
-/// \param V : Vector\r
-/// \param X : Scalar value\r
-///\r
-/// \return V / X\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>& operator /=(Vector2<T>& V, T X);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator == overload ; compares the equality of two vectors\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return True if V1 is equal to V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool operator ==(const Vector2<T>& V1, const Vector2<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator != overload ; compares the difference of two vectors\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return True if V1 is different than V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool operator !=(const Vector2<T>& V1, const Vector2<T>& V2);\r
-\r
-#include <SFML/System/Vector2.inl>\r
-\r
-// Define the most common types\r
-typedef Vector2<int>   Vector2i;\r
-typedef Vector2<float> Vector2f;\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_VECTOR2_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Vector2.inl b/dependencies64/sfml/include/SFML/System/Vector2.inl
deleted file mode 100644 (file)
index febd493..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Default constructor\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>::Vector2() :\r
-x(0),\r
-y(0)\r
-{\r
-\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Construct the color from its coordinates\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>::Vector2(T X, T Y) :\r
-x(X),\r
-y(Y)\r
-{\r
-\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator - overload ; returns the opposite of a vector\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator -(const Vector2<T>& V)\r
-{\r
-    return Vector2<T>(-V.x, -V.y);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator += overload ; add two vectors and assign to the first op\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>& operator +=(Vector2<T>& V1, const Vector2<T>& V2)\r
-{\r
-    V1.x += V2.x;\r
-    V1.y += V2.y;\r
-\r
-    return V1;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator -= overload ; subtract two vectors and assign to the first op\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>& operator -=(Vector2<T>& V1, const Vector2<T>& V2)\r
-{\r
-    V1.x -= V2.x;\r
-    V1.y -= V2.y;\r
-\r
-    return V1;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator + overload ; adds two vectors\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator +(const Vector2<T>& V1, const Vector2<T>& V2)\r
-{\r
-    return Vector2<T>(V1.x + V2.x, V1.y + V2.y);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator - overload ; subtracts two vectors\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator -(const Vector2<T>& V1, const Vector2<T>& V2)\r
-{\r
-    return Vector2<T>(V1.x - V2.x, V1.y - V2.y);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload ; multiply a vector by a scalar value\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator *(const Vector2<T>& V, T X)\r
-{\r
-    return Vector2<T>(V.x * X, V.y * X);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload ; multiply a scalar value by a vector\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator *(T X, const Vector2<T>& V)\r
-{\r
-    return Vector2<T>(V.x * X, V.y * X);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator *= overload ; multiply-assign a vector by a scalar value\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>& operator *=(Vector2<T>& V, T X)\r
-{\r
-    V.x *= X;\r
-    V.y *= X;\r
-\r
-    return V;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator / overload ; divide a vector by a scalar value\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T> operator /(const Vector2<T>& V, T X)\r
-{\r
-    return Vector2<T>(V.x / X, V.y / X);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator /= overload ; divide-assign a vector by a scalar value\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector2<T>& operator /=(Vector2<T>& V, T X)\r
-{\r
-    V.x /= X;\r
-    V.y /= X;\r
-\r
-    return V;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator == overload ; compares the equality of two vectors\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool operator ==(const Vector2<T>& V1, const Vector2<T>& V2)\r
-{\r
-    return (V1.x == V2.x) && (V1.y == V2.y);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator != overload ; compares the difference of two vectors\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool operator !=(const Vector2<T>& V1, const Vector2<T>& V2)\r
-{\r
-    return (V1.x != V2.x) || (V1.y != V2.y);\r
-}\r
diff --git a/dependencies64/sfml/include/SFML/System/Vector3.hpp b/dependencies64/sfml/include/SFML/System/Vector3.hpp
deleted file mode 100644 (file)
index 6ab4b84..0000000
+++ /dev/null
@@ -1,217 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_VECTOR3_HPP\r
-#define SFML_VECTOR3_HPP\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Vector3 is an utility class for manipulating 3 dimensional\r
-/// vectors. Template parameter defines the type of coordinates\r
-/// (integer, float, ...)\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-class Vector3\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Vector3();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the vector from its coordinates\r
-    ///\r
-    /// \param X : X coordinate\r
-    /// \param Y : Y coordinate\r
-    /// \param Z : Z coordinate\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Vector3(T X, T Y, T Z);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    T x; ///< X coordinate of the vector\r
-    T y; ///< Y coordinate of the vector\r
-    T z; ///< Z coordinate of the vector\r
-};\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator - overload ; returns the opposite of a vector\r
-///\r
-/// \param V : Vector to negate\r
-///\r
-/// \return -V\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator -(const Vector3<T>& V);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator += overload ; add two vectors and assign to the first op\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return V1 + V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>& operator +=(Vector3<T>& V1, const Vector3<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator -= overload ; subtract two vectors and assign to the first op\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return V1 - V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>& operator -=(Vector3<T>& V1, const Vector3<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator + overload ; adds two vectors\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return V1 + V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator +(const Vector3<T>& V1, const Vector3<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator - overload ; subtracts two vectors\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return V1 - V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator -(const Vector3<T>& V1, const Vector3<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload ; multiply a vector by a scalar value\r
-///\r
-/// \param V : Vector\r
-/// \param X : Scalar value\r
-///\r
-/// \return V * X\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator *(const Vector3<T>& V, T X);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload ; multiply a scalar value by a vector\r
-///\r
-/// \param X : Scalar value\r
-/// \param V : Vector\r
-///\r
-/// \return X * V\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator *(T X, const Vector3<T>& V);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator *= overload ; multiply-assign a vector by a scalar value\r
-///\r
-/// \param V : Vector\r
-/// \param X : Scalar value\r
-///\r
-/// \return V * X\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>& operator *=(Vector3<T>& V, T X);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator / overload ; divide a vector by a scalar value\r
-///\r
-/// \param V : Vector\r
-/// \param X : Scalar value\r
-///\r
-/// \return V / X\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator /(const Vector3<T>& V, T X);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator /= overload ; divide-assign a vector by a scalar value\r
-///\r
-/// \param V : Vector\r
-/// \param X : Scalar value\r
-///\r
-/// \return V / X\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>& operator /=(Vector3<T>& V, T X);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator == overload ; compares the equality of two vectors\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return True if V1 is equal to V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool operator ==(const Vector3<T>& V1, const Vector3<T>& V2);\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator != overload ; compares the difference of two vectors\r
-///\r
-/// \param V1 : First vector\r
-/// \param V2 : Second vector\r
-///\r
-/// \return True if V1 is different than V2\r
-///\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool operator !=(const Vector3<T>& V1, const Vector3<T>& V2);\r
-\r
-#include <SFML/System/Vector3.inl>\r
-\r
-// Define the most common types\r
-typedef Vector3<int>   Vector3i;\r
-typedef Vector3<float> Vector3f;\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_VECTOR3_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Vector3.inl b/dependencies64/sfml/include/SFML/System/Vector3.inl
deleted file mode 100644 (file)
index 8594601..0000000
+++ /dev/null
@@ -1,185 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Default constructor\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>::Vector3() :\r
-x(0),\r
-y(0),\r
-z(0)\r
-{\r
-\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Construct the color from its coordinates\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>::Vector3(T X, T Y, T Z) :\r
-x(X),\r
-y(Y),\r
-z(Z)\r
-{\r
-\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator - overload ; returns the opposite of a vector\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator -(const Vector3<T>& V)\r
-{\r
-    return Vector3<T>(-V.x, -V.y, -V.z);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator += overload ; add two vectors and assign to the first op\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>& operator +=(Vector3<T>& V1, const Vector3<T>& V2)\r
-{\r
-    V1.x += V2.x;\r
-    V1.y += V2.y;\r
-    V1.z += V2.z;\r
-\r
-    return V1;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator -= overload ; subtract two vectors and assign to the first op\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>& operator -=(Vector3<T>& V1, const Vector3<T>& V2)\r
-{\r
-    V1.x -= V2.x;\r
-    V1.y -= V2.y;\r
-    V1.z -= V2.z;\r
-\r
-    return V1;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator + overload ; adds two vectors\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator +(const Vector3<T>& V1, const Vector3<T>& V2)\r
-{\r
-    return Vector3<T>(V1.x + V2.x, V1.y + V2.y, V1.z + V2.z);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator - overload ; subtracts two vectors\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator -(const Vector3<T>& V1, const Vector3<T>& V2)\r
-{\r
-    return Vector3<T>(V1.x - V2.x, V1.y - V2.y, V1.z - V2.z);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload ; multiply a vector by a scalar value\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator *(const Vector3<T>& V, T X)\r
-{\r
-    return Vector3<T>(V.x * X, V.y * X, V.z * X);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator * overload ; multiply a scalar value by a vector\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator *(T X, const Vector3<T>& V)\r
-{\r
-    return Vector3<T>(V.x * X, V.y * X, V.z * X);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator *= overload ; multiply-assign a vector by a scalar value\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>& operator *=(Vector3<T>& V, T X)\r
-{\r
-    V.x *= X;\r
-    V.y *= X;\r
-    V.z *= X;\r
-\r
-    return V;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator / overload ; divide a vector by a scalar value\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T> operator /(const Vector3<T>& V, T X)\r
-{\r
-    return Vector3<T>(V.x / X, V.y / X, V.z / X);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator /= overload ; divide-assign a vector by a scalar value\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-Vector3<T>& operator /=(Vector3<T>& V, T X)\r
-{\r
-    V.x /= X;\r
-    V.y /= X;\r
-    V.z /= X;\r
-\r
-    return V;\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator == overload ; compares the equality of two vectors\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool operator ==(const Vector3<T>& V1, const Vector3<T>& V2)\r
-{\r
-    return (V1.x == V2.x) && (V1.y == V2.y) && (V1.z == V2.z);\r
-}\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Operator != overload ; compares the difference of two vectors\r
-////////////////////////////////////////////////////////////\r
-template <typename T>\r
-bool operator !=(const Vector3<T>& V1, const Vector3<T>& V2)\r
-{\r
-    return (V1.x != V2.x) || (V1.y != V2.y) || (V1.z != V2.z);\r
-}\r
diff --git a/dependencies64/sfml/include/SFML/System/Win32/Mutex.hpp b/dependencies64/sfml/include/SFML/System/Win32/Mutex.hpp
deleted file mode 100644 (file)
index 3cf5f9d..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_MUTEXWIN32_HPP\r
-#define SFML_MUTEXWIN32_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/NonCopyable.hpp>\r
-#include <windows.h>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Mutex defines a mutex (MUTual EXclusion) object,\r
-/// that allows a thread to lock critical instructions\r
-/// to avoid simultaneous access with other threads.\r
-/// The Win32 version uses critical sections, as it is\r
-/// faster than mutexes.<br/>\r
-/// See Lock for an efficient way of using it.\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Mutex : NonCopyable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Mutex();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~Mutex();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Lock the mutex\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Lock();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Unlock the mutex\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Unlock();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    CRITICAL_SECTION myHandle; ///< Win32 handle of the mutex\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_MUTEXWIN32_HPP\r
diff --git a/dependencies64/sfml/include/SFML/System/Win32/Thread.hpp b/dependencies64/sfml/include/SFML/System/Win32/Thread.hpp
deleted file mode 100644 (file)
index f44dfe1..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_THREADWIN32_HPP\r
-#define SFML_THREADWIN32_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/System/NonCopyable.hpp>\r
-#include <windows.h>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Thread defines an easy way to manipulate a thread.\r
-/// There are two ways to use Thread :\r
-/// - Inherit from it and override the Run() virtual function\r
-/// - Construct a Thread instance and pass it a function\r
-/// pointer to call\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Thread : NonCopyable\r
-{\r
-public :\r
-\r
-    typedef void (*FuncType)(void*);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the thread from a function pointer\r
-    ///\r
-    /// \param Function : Entry point of the thread\r
-    /// \param UserData : Data to pass to the thread function (NULL by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Thread(FuncType Function, void* UserData = NULL);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Virtual destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~Thread();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create and run the thread\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Launch();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Wait until the thread finishes\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Wait();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Terminate the thread\r
-    /// Terminating a thread with this function is not safe,\r
-    /// you should rather try to make the thread function\r
-    /// terminate by itself\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Terminate();\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Thread();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Function called as the thread entry point\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void Run();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Actual thread entry point, dispatches to instances\r
-    ///\r
-    /// \param UserData : Data to pass to the thread function\r
-    ///\r
-    /// \return Error code\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static unsigned int __stdcall ThreadFunc(void* UserData);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    HANDLE   myHandle;   ///< Win32 thread handle\r
-    FuncType myFunction; ///< Function to call as the thread entry point\r
-    void*    myUserData; ///< Data to pass to the thread function\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_THREADWIN32_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Window.hpp b/dependencies64/sfml/include/SFML/Window.hpp
deleted file mode 100644 (file)
index 3a516a0..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_SFML_WINDOW_HPP\r
-#define SFML_SFML_WINDOW_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-\r
-#include <SFML/System.hpp>\r
-#include <SFML/Window/Context.hpp>\r
-#include <SFML/Window/Event.hpp>\r
-#include <SFML/Window/Input.hpp>\r
-#include <SFML/Window/VideoMode.hpp>\r
-#include <SFML/Window/Window.hpp>\r
-#include <SFML/Window/WindowListener.hpp>\r
-#include <SFML/Window/WindowStyle.hpp>\r
-#include <SFML/Window/OpenGL.hpp>\r
-\r
-\r
-#endif // SFML_SFML_WINDOW_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Window/Context.hpp b/dependencies64/sfml/include/SFML/Window/Context.hpp
deleted file mode 100644 (file)
index fede21c..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_CONTEXT_HPP\r
-#define SFML_CONTEXT_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <SFML/System/NonCopyable.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-namespace priv\r
-{\r
-    class WindowImpl;\r
-}\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Class wrapping an OpenGL context.\r
-/// All SFML windows already have their own context, so\r
-/// this class is more a helper for specific issues involving\r
-/// OpenGL and multi-threading.\r
-/// It's meant to be used internally.\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Context : NonCopyable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor, create the context\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Context();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor, destroy the context\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    ~Context();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Activate or deactivate the context\r
-    ///\r
-    /// \param Active : True to activate the context, false to deactivate it\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetActive(bool Active);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Check if there's a context bound to the current thread\r
-    ///\r
-    /// \return True if there's a context bound to the current thread\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static bool IsContextActive();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the global context\r
-    ///\r
-    /// \return Reference to the global context\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static Context& GetGlobal();\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    priv::WindowImpl* myDummyWindow; ///< Dummy window holding the context\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_CONTEXT_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Window/Event.hpp b/dependencies64/sfml/include/SFML/Window/Event.hpp
deleted file mode 100644 (file)
index 35ac575..0000000
+++ /dev/null
@@ -1,321 +0,0 @@
-////////////////////////////////////////////////////////////
-//
-// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)
-//
-// This software is provided 'as-is', without any express or implied warranty.
-// In no event will the authors be held liable for any damages arising from the use of this software.
-//
-// Permission is granted to anyone to use this software for any purpose,
-// including commercial applications, and to alter it and redistribute it freely,
-// subject to the following restrictions:
-//
-// 1. The origin of this software must not be misrepresented;
-//    you must not claim that you wrote the original software.
-//    If you use this software in a product, an acknowledgment
-//    in the product documentation would be appreciated but is not required.
-//
-// 2. Altered source versions must be plainly marked as such,
-//    and must not be misrepresented as being the original software.
-//
-// 3. This notice may not be removed or altered from any source distribution.
-//
-////////////////////////////////////////////////////////////
-
-#ifndef SFML_EVENT_HPP
-#define SFML_EVENT_HPP
-
-////////////////////////////////////////////////////////////
-// Headers
-////////////////////////////////////////////////////////////
-#include <SFML/Config.hpp>
-
-
-namespace sf
-{
-////////////////////////////////////////////////////////////
-/// Definition of key codes for keyboard events
-////////////////////////////////////////////////////////////
-namespace Key
-{
-    enum Code
-    {
-        A = 'a',
-        B = 'b',
-        C = 'c',
-        D = 'd',
-        E = 'e',
-        F = 'f',
-        G = 'g',
-        H = 'h',
-        I = 'i',
-        J = 'j',
-        K = 'k',
-        L = 'l',
-        M = 'm',
-        N = 'n',
-        O = 'o',
-        P = 'p',
-        Q = 'q',
-        R = 'r',
-        S = 's',
-        T = 't',
-        U = 'u',
-        V = 'v',
-        W = 'w',
-        X = 'x',
-        Y = 'y',
-        Z = 'z',
-        Num0 = '0',
-        Num1 = '1',
-        Num2 = '2',
-        Num3 = '3',
-        Num4 = '4',
-        Num5 = '5',
-        Num6 = '6',
-        Num7 = '7',
-        Num8 = '8',
-        Num9 = '9', 
-        Escape = 256,
-        LControl,
-        LShift,
-        LAlt,
-        LSystem,      ///< OS specific key (left side) : windows (Win and Linux), apple (MacOS), ...
-        RControl,
-        RShift,
-        RAlt,
-        RSystem,      ///< OS specific key (right side) : windows (Win and Linux), apple (MacOS), ...
-        Menu,
-        LBracket,     ///< [
-        RBracket,     ///< ]
-        SemiColon,    ///< ;
-        Comma,        ///< ,
-        Period,       ///< .
-        Quote,        ///< '
-        Slash,        ///< /
-        BackSlash,
-        Tilde,        ///< ~
-        Equal,        ///< =
-        Dash,         ///< -
-        Space,
-        Return,
-        Back,
-        Tab,
-        PageUp,
-        PageDown,
-        End,
-        Home,
-        Insert,
-        Delete,
-        Add,          ///< +
-        Subtract,     ///< -
-        Multiply,     ///< *
-        Divide,       ///< /
-        Left,         ///< Left arrow
-        Right,        ///< Right arrow
-        Up,           ///< Up arrow
-        Down,         ///< Down arrow
-        Numpad0,
-        Numpad1,
-        Numpad2,
-        Numpad3,
-        Numpad4,
-        Numpad5,
-        Numpad6,
-        Numpad7,
-        Numpad8,
-        Numpad9,
-        F1,
-        F2,
-        F3,
-        F4,
-        F5,
-        F6,
-        F7,
-        F8,
-        F9,
-        F10,
-        F11,
-        F12,
-        F13,
-        F14,
-        F15,
-        Pause,
-
-        Count // Keep last -- total number of keyboard keys
-    };
-}
-
-
-////////////////////////////////////////////////////////////
-/// Definition of button codes for mouse events
-////////////////////////////////////////////////////////////
-namespace Mouse
-{
-    enum Button
-    {
-        Left,
-        Right,
-        Middle,
-        XButton1,
-        XButton2,
-
-        ButtonCount // Keep last -- total number of mouse buttons
-    };
-}
-
-
-////////////////////////////////////////////////////////////
-/// Definition of joystick axis for joystick events
-////////////////////////////////////////////////////////////
-namespace Joy
-{
-    enum Axis
-    {
-        AxisX,
-        AxisY,
-        AxisZ,
-        AxisR,
-        AxisU,
-        AxisV,
-        AxisPOV,
-
-        AxisCount // Keep last -- total number of joystick axis
-    };
-
-    enum
-    {
-        Count       = 4, ///< Total number of supported joysticks
-        ButtonCount = 32 ///< Total number of supported joystick buttons
-    };
-}
-
-
-////////////////////////////////////////////////////////////
-/// Event defines a system event and its parameters
-////////////////////////////////////////////////////////////
-class Event
-{
-public :
-
-    ////////////////////////////////////////////////////////////
-    /// Keyboard event parameters
-    ////////////////////////////////////////////////////////////
-    struct KeyEvent
-    {
-        Key::Code Code;
-        bool      Alt;
-        bool      Control;
-        bool      Shift;
-    };
-
-    ////////////////////////////////////////////////////////////
-    /// Text event parameters
-    ////////////////////////////////////////////////////////////
-    struct TextEvent
-    {
-        Uint32 Unicode;
-    };
-
-    ////////////////////////////////////////////////////////////
-    /// Mouse move event parameters
-    ////////////////////////////////////////////////////////////
-    struct MouseMoveEvent
-    {
-        int X;
-        int Y;
-    };
-
-    ////////////////////////////////////////////////////////////
-    /// Mouse buttons events parameters
-    ////////////////////////////////////////////////////////////
-    struct MouseButtonEvent
-    {
-        Mouse::Button Button;
-        int           X;
-        int           Y;
-    };
-
-    ////////////////////////////////////////////////////////////
-    /// Mouse wheel events parameters
-    ////////////////////////////////////////////////////////////
-    struct MouseWheelEvent
-    {
-        int Delta;
-    };
-
-    ////////////////////////////////////////////////////////////
-    /// Joystick axis move event parameters
-    ////////////////////////////////////////////////////////////
-    struct JoyMoveEvent
-    {
-        unsigned int JoystickId;
-        Joy::Axis    Axis;
-        float        Position;
-    };
-
-    ////////////////////////////////////////////////////////////
-    /// Joystick buttons events parameters
-    ////////////////////////////////////////////////////////////
-    struct JoyButtonEvent
-    {
-        unsigned int JoystickId;
-        unsigned int Button;
-    };
-
-    ////////////////////////////////////////////////////////////
-    /// Size events parameters
-    ////////////////////////////////////////////////////////////
-    struct SizeEvent
-    {
-        unsigned int Width;
-        unsigned int Height;
-    };
-
-    ////////////////////////////////////////////////////////////
-    /// Enumeration of the different types of events
-    ////////////////////////////////////////////////////////////
-    enum EventType
-    {
-        Closed,
-        Resized,
-        LostFocus,
-        GainedFocus,
-        TextEntered,
-        KeyPressed,
-        KeyReleased,
-        MouseWheelMoved,
-        MouseButtonPressed,
-        MouseButtonReleased,
-        MouseMoved,
-        MouseEntered,
-        MouseLeft,
-        JoyButtonPressed,
-        JoyButtonReleased,
-        JoyMoved,
-
-        Count // Keep last -- total number of event types
-    };
-
-    ////////////////////////////////////////////////////////////
-    // Member data
-    ////////////////////////////////////////////////////////////
-    EventType Type; ///< Type of the event
-
-    union
-    {
-        KeyEvent         Key;
-        TextEvent        Text;
-        MouseMoveEvent   MouseMove;
-        MouseButtonEvent MouseButton;
-        MouseWheelEvent  MouseWheel;
-        JoyMoveEvent     JoyMove;
-        JoyButtonEvent   JoyButton;
-        SizeEvent        Size;
-    };
-};
-
-} // namespace sf
-
-
-#endif // SFML_EVENT_HPP
diff --git a/dependencies64/sfml/include/SFML/Window/Input.hpp b/dependencies64/sfml/include/SFML/Window/Input.hpp
deleted file mode 100644 (file)
index e9e9c5e..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_INPUT_HPP\r
-#define SFML_INPUT_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <SFML/System/NonCopyable.hpp>\r
-#include <SFML/Window/Event.hpp>\r
-#include <SFML/Window/WindowListener.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Input handles real-time input from keyboard and mouse.\r
-/// Use it instead of events to handle continuous moves and more\r
-/// game-friendly inputs\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Input : public WindowListener, NonCopyable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Input();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the state of a key\r
-    ///\r
-    /// \param KeyCode : Key to check\r
-    ///\r
-    /// \return True if key is down, false if key is up\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsKeyDown(Key::Code KeyCode) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the state of a mouse button\r
-    ///\r
-    /// \param Button : Button to check\r
-    ///\r
-    /// \return True if button is down, false if button is up\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsMouseButtonDown(Mouse::Button Button) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the state of a joystick button\r
-    ///\r
-    /// \param JoyId :  Identifier of the joystick to check (0 or 1)\r
-    /// \param Button : Button to check\r
-    ///\r
-    /// \return True if button is down, false if button is up\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsJoystickButtonDown(unsigned int JoyId, unsigned int Button) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the mouse X position\r
-    ///\r
-    /// \return Current mouse left position, relative to owner window\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    int GetMouseX() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the mouse Y position\r
-    ///\r
-    /// \return Current mouse top position, relative to owner window\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    int GetMouseY() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get a joystick axis position\r
-    ///\r
-    /// \param JoyId : Identifier of the joystick to check (0 or 1)\r
-    /// \param Axis :  Axis to get\r
-    ///\r
-    /// \return Current axis position, in the range [-100, 100] (except for POV, which is [0, 360])\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetJoystickAxis(unsigned int JoyId, Joy::Axis Axis) const;\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see WindowListener::OnEvent\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void OnEvent(const Event& EventReceived);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Reset all the states\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void ResetStates();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    bool  myKeys[Key::Count];                              ///< Array containing the state of all keyboard keys\r
-    bool  myMouseButtons[Mouse::ButtonCount];              ///< Array containing the state of all mouse buttons\r
-    int   myMouseX;                                        ///< Mouse position on X\r
-    int   myMouseY;                                        ///< Mouse position on Y\r
-    bool  myJoystickButtons[Joy::Count][Joy::ButtonCount]; ///< Array containing the state of all joysticks buttons\r
-    float myJoystickAxis[Joy::Count][Joy::AxisCount];      ///< Joysticks position on each axis\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_INPUT_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Window/OpenGL.hpp b/dependencies64/sfml/include/SFML/Window/OpenGL.hpp
deleted file mode 100644 (file)
index fcd4868..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_OPENGL_HPP\r
-#define SFML_OPENGL_HPP\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-////////////////////////////////////////////////////////////\r
-/// This file just includes the OpenGL (GL and GLU) headers,\r
-/// which have actually different paths on each system\r
-////////////////////////////////////////////////////////////\r
-#if defined(SFML_SYSTEM_WINDOWS)\r
-\r
-    #include <windows.h>\r
-    #include <GL/gl.h>\r
-    #include <GL/glu.h>\r
-\r
-#elif defined(SFML_SYSTEM_LINUX) || defined(SFML_SYSTEM_FREEBSD)\r
-\r
-    #include <GL/gl.h>\r
-    #include <GL/glu.h>\r
-\r
-#elif defined(SFML_SYSTEM_MACOS)\r
-\r
-    #include <OpenGL/gl.h>\r
-    #include <OpenGL/glu.h>\r
-\r
-#endif\r
-\r
-\r
-#endif // SFML_OPENGL_HPP\r
-\r
diff --git a/dependencies64/sfml/include/SFML/Window/VideoMode.hpp b/dependencies64/sfml/include/SFML/Window/VideoMode.hpp
deleted file mode 100644 (file)
index b439e64..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_VIDEOMODE_HPP\r
-#define SFML_VIDEOMODE_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-#include <cstdlib>\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// VideoMode defines a video mode (width, height, bpp, frequency)\r
-/// and provides static functions for getting modes supported\r
-/// by the display device\r
-////////////////////////////////////////////////////////////\r
-class SFML_API VideoMode\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    VideoMode();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the video mode with its attributes\r
-    ///\r
-    /// \param ModeWidth :  Width in pixels\r
-    /// \param ModeHeight : Height in pixels\r
-    /// \param ModeBpp :    Pixel depths in bits per pixel (32 by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    VideoMode(unsigned int ModeWidth, unsigned int ModeHeight, unsigned int ModeBpp = 32);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the current desktop video mode\r
-    ///\r
-    /// \return Current desktop video mode\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static VideoMode GetDesktopMode();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get a valid video mode\r
-    /// Index must be in range [0, GetModesCount()[\r
-    /// Modes are sorted from best to worst\r
-    ///\r
-    /// \param Index : Index of video mode to get\r
-    ///\r
-    /// \return Corresponding video mode (invalid mode if index is out of range)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static VideoMode GetMode(std::size_t Index);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get valid video modes count\r
-    ///\r
-    /// \return Number of valid video modes available\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    static std::size_t GetModesCount();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell whether or not the video mode is supported\r
-    ///\r
-    /// \return True if video mode is supported, false otherwise\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsValid() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator overload -- tell if two video modes are equal\r
-    ///\r
-    /// \param Other : Video mode to compare\r
-    ///\r
-    /// \return True if modes are equal\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator ==(const VideoMode& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Comparison operator overload -- tell if two video modes are different\r
-    ///\r
-    /// \param Other : Video mode to compare\r
-    ///\r
-    /// \return True if modes are different\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool operator !=(const VideoMode& Other) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int Width;        ///< Video mode width, in pixels\r
-    unsigned int Height;       ///< Video mode height, in pixels\r
-    unsigned int BitsPerPixel; ///< Video mode pixel depth, in bits per pixels\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get and sort valid video modes\r
-    ////////////////////////////////////////////////////////////\r
-    static void InitializeModes();\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_VIDEOMODE_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Window/Window.hpp b/dependencies64/sfml/include/SFML/Window/Window.hpp
deleted file mode 100644 (file)
index 5199021..0000000
+++ /dev/null
@@ -1,326 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_WINDOW_HPP\r
-#define SFML_WINDOW_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Window/Event.hpp>\r
-#include <SFML/Window/Input.hpp>\r
-#include <SFML/Window/VideoMode.hpp>\r
-#include <SFML/Window/WindowHandle.hpp>\r
-#include <SFML/Window/WindowListener.hpp>\r
-#include <SFML/Window/WindowSettings.hpp>\r
-#include <SFML/Window/WindowStyle.hpp>\r
-#include <SFML/System/Clock.hpp>\r
-#include <SFML/System/NonCopyable.hpp>\r
-#include <queue>\r
-#include <string>\r
-\r
-\r
-namespace sf\r
-{\r
-namespace priv\r
-{\r
-    class WindowImpl;\r
-}\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Window is a rendering window ; it can create a new window\r
-/// or connect to an existing one\r
-////////////////////////////////////////////////////////////\r
-class SFML_API Window : public WindowListener, NonCopyable\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Window();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct a new window\r
-    ///\r
-    /// \param Mode :        Video mode to use\r
-    /// \param Title :       Title of the window\r
-    /// \param WindowStyle : Window style, see sf::Style (Resize | Close by default)\r
-    /// \param Params :      Creation parameters (see default constructor for default values)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Window(VideoMode Mode, const std::string& Title, unsigned long WindowStyle = Style::Resize | Style::Close, const WindowSettings& Params = WindowSettings());\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Construct the window from an existing control\r
-    ///\r
-    /// \param Handle : Platform-specific handle of the control\r
-    /// \param Params : Creation parameters (see default constructor for default values)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    Window(WindowHandle Handle, const WindowSettings& Params = WindowSettings());\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~Window();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create (or recreate) the window\r
-    ///\r
-    /// \param Mode :        Video mode to use\r
-    /// \param Title :       Title of the window\r
-    /// \param WindowStyle : Window style, see sf::Style (Resize | Close by default)\r
-    /// \param Params :      Creation parameters (see default constructor for default values)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Create(VideoMode Mode, const std::string& Title, unsigned long WindowStyle = Style::Resize | Style::Close, const WindowSettings& Params = WindowSettings());\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Create (or recreate) the window from an existing control\r
-    ///\r
-    /// \param Handle : Platform-specific handle of the control\r
-    /// \param Params : Creation parameters (see default constructor for default values)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Create(WindowHandle Handle, const WindowSettings& Params = WindowSettings());\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Close (destroy) the window.\r
-    /// The sf::Window instance remains valid and you can call\r
-    /// Create to recreate the window\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Close();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Tell whether or not the window is opened (ie. has been created).\r
-    /// Note that a hidden window (Show(false))\r
-    /// will still return true\r
-    ///\r
-    /// \return True if the window is opened\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool IsOpened() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the width of the rendering region of the window\r
-    ///\r
-    /// \return Width in pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetWidth() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the height of the rendering region of the window\r
-    ///\r
-    /// \return Height in pixels\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int GetHeight() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the creation settings of the window\r
-    ///\r
-    /// \return Structure containing the creation settings\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const WindowSettings& GetSettings() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the event on top of events stack, if any, and pop it\r
-    ///\r
-    /// \param EventReceived : Event to fill, if any\r
-    ///\r
-    /// \return True if an event was returned, false if events stack was empty\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool GetEvent(Event& EventReceived);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Enable / disable vertical synchronization\r
-    ///\r
-    /// \param Enabled : True to enable v-sync, false to deactivate\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void UseVerticalSync(bool Enabled);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Show or hide the mouse cursor\r
-    ///\r
-    /// \param Show : True to show, false to hide\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void ShowMouseCursor(bool Show);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the position of the mouse cursor\r
-    ///\r
-    /// \param Left : Left coordinate of the cursor, relative to the window\r
-    /// \param Top :  Top coordinate of the cursor, relative to the window\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetCursorPosition(unsigned int Left, unsigned int Top);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the position of the window on screen.\r
-    /// Only works for top-level windows\r
-    ///\r
-    /// \param Left : Left position\r
-    /// \param Top :  Top position\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetPosition(int Left, int Top);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the size of the rendering region of the window\r
-    ///\r
-    /// \param Width :  New width\r
-    /// \param Height : New height\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetSize(unsigned int Width, unsigned int Height);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Show or hide the window\r
-    ///\r
-    /// \param State : True to show, false to hide\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Show(bool State);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Enable or disable automatic key-repeat.\r
-    /// Automatic key-repeat is enabled by default\r
-    ///\r
-    /// \param Enabled : True to enable, false to disable\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void EnableKeyRepeat(bool Enabled);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the window's icon\r
-    ///\r
-    /// \param Width :  Icon's width, in pixels\r
-    /// \param Height : Icon's height, in pixels\r
-    /// \param Pixels : Pointer to the pixels in memory, format must be RGBA 32 bits\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetIcon(unsigned int Width, unsigned int Height, const Uint8* Pixels);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Activate of deactivate the window as the current target\r
-    /// for rendering\r
-    ///\r
-    /// \param Active : True to activate, false to deactivate (true by default)\r
-    ///\r
-    /// \return True if operation was successful, false otherwise\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    bool SetActive(bool Active = true) const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Display the window on screen\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Display();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get the input manager of the window\r
-    ///\r
-    /// \return Reference to the input\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    const Input& GetInput() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Limit the framerate to a maximum fixed frequency\r
-    ///\r
-    /// \param Limit : Framerate limit, in frames per seconds (use 0 to disable limit)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetFramerateLimit(unsigned int Limit);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Get time elapsed since last frame\r
-    ///\r
-    /// \return Time elapsed, in seconds\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    float GetFrameTime() const;\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Change the joystick threshold, ie. the value below which\r
-    /// no move event will be generated\r
-    ///\r
-    /// \param Threshold : New threshold, in range [0, 100]\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void SetJoystickThreshold(float Threshold);\r
-\r
-private :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Called after the window has been created\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void OnCreate();\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// /see WindowListener::OnEvent\r
-    ///\r
-    /// \param EventReceived : Event received\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void OnEvent(const Event& EventReceived);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Initialize internal window\r
-    ///\r
-    /// \param Impl : New internal window implementation\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    void Initialize(priv::WindowImpl* Impl);\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    priv::WindowImpl* myWindow;         ///< Platform-specific implementation of window\r
-    std::queue<Event> myEvents;         ///< Queue of received events\r
-    Input             myInput;          ///< Input manager connected to window\r
-    Clock             myClock;          ///< Clock for measuring the elapsed time between frames\r
-    WindowSettings    mySettings;       ///< Creation settings of the window\r
-    float             myLastFrameTime;  ///< Time elapsed since last frame\r
-    bool              myIsExternal;     ///< Tell whether the window is internal or external (created by SFML or not)\r
-    unsigned int      myFramerateLimit; ///< Current framerate limit\r
-    int               mySetCursorPosX;  ///< X coordinate passed to the last call to SetCursorPosition\r
-    int               mySetCursorPosY;  ///< Y coordinate passed to the last call to SetCursorPosition\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_WINDOW_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Window/WindowHandle.hpp b/dependencies64/sfml/include/SFML/Window/WindowHandle.hpp
deleted file mode 100644 (file)
index 852036c..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-////////////////////////////////////////////////////////////
-//
-// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)
-//
-// This software is provided 'as-is', without any express or implied warranty.
-// In no event will the authors be held liable for any damages arising from the use of this software.
-//
-// Permission is granted to anyone to use this software for any purpose,
-// including commercial applications, and to alter it and redistribute it freely,
-// subject to the following restrictions:
-//
-// 1. The origin of this software must not be misrepresented;
-//    you must not claim that you wrote the original software.
-//    If you use this software in a product, an acknowledgment
-//    in the product documentation would be appreciated but is not required.
-//
-// 2. Altered source versions must be plainly marked as such,
-//    and must not be misrepresented as being the original software.
-//
-// 3. This notice may not be removed or altered from any source distribution.
-//
-////////////////////////////////////////////////////////////
-
-#ifndef SFML_WINDOWHANDLE_HPP
-#define SFML_WINDOWHANDLE_HPP
-
-////////////////////////////////////////////////////////////
-// Headers
-////////////////////////////////////////////////////////////
-#include <SFML/Config.hpp>
-
-
-namespace sf
-{
-////////////////////////////////////////////////////////////
-/// Define a low-level window handle type, specific to
-/// each platform
-////////////////////////////////////////////////////////////
-#if defined(SFML_SYSTEM_WINDOWS)
-
-    // Windows defines a void* handle (HWND)
-    typedef void* WindowHandle;
-
-#elif defined(SFML_SYSTEM_LINUX) || defined(SFML_SYSTEM_FREEBSD)
-
-    // Unix - X11 defines an unsigned integer handle (Window)
-    typedef unsigned long WindowHandle;
-
-#elif defined(SFML_SYSTEM_MACOS)
-
-    // Mac OS X defines a void* handle (NSWindow)
-       typedef void* WindowHandle;
-
-#endif
-
-} // namespace sf
-
-
-#endif // SFML_WINDOWHANDLE_HPP
diff --git a/dependencies64/sfml/include/SFML/Window/WindowListener.hpp b/dependencies64/sfml/include/SFML/Window/WindowListener.hpp
deleted file mode 100644 (file)
index e085880..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_WINDOWLISTENER_HPP\r
-#define SFML_WINDOWLISTENER_HPP\r
-\r
-////////////////////////////////////////////////////////////\r
-// Headers\r
-////////////////////////////////////////////////////////////\r
-#include <SFML/Config.hpp>\r
-\r
-\r
-namespace sf\r
-{\r
-class Event;\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Base class for classes that want to receive events\r
-/// from a window (for internal use only)\r
-////////////////////////////////////////////////////////////\r
-class SFML_API WindowListener\r
-{\r
-public :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Called each time an event is received from attached window\r
-    ///\r
-    /// \param EventReceived : Event received\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual void OnEvent(const Event& EventReceived) = 0;\r
-\r
-protected :\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    /// Destructor\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    virtual ~WindowListener() {}\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_WINDOWLISTENER_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Window/WindowSettings.hpp b/dependencies64/sfml/include/SFML/Window/WindowSettings.hpp
deleted file mode 100644 (file)
index 78f9ecd..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_WINDOWSETTINGS_HPP\r
-#define SFML_WINDOWSETTINGS_HPP\r
-\r
-\r
-namespace sf\r
-{\r
-////////////////////////////////////////////////////////////\r
-/// Structure defining the creation settings of windows\r
-////////////////////////////////////////////////////////////\r
-struct WindowSettings\r
-{\r
-    ////////////////////////////////////////////////////////////\r
-    /// Default constructor\r
-    ///\r
-    /// \param Depth :        Depth buffer bits (24 by default)\r
-    /// \param Stencil :      Stencil buffer bits (8 by default)\r
-    /// \param Antialiasing : Antialiasing level (0 by default)\r
-    ///\r
-    ////////////////////////////////////////////////////////////\r
-    explicit WindowSettings(unsigned int Depth = 24, unsigned int Stencil = 8, unsigned int Antialiasing = 0) :\r
-    DepthBits        (Depth),\r
-    StencilBits      (Stencil),\r
-    AntialiasingLevel(Antialiasing)\r
-    {\r
-    }\r
-\r
-    ////////////////////////////////////////////////////////////\r
-    // Member data\r
-    ////////////////////////////////////////////////////////////\r
-    unsigned int DepthBits;         ///< Bits of the depth buffer\r
-    unsigned int StencilBits;       ///< Bits of the stencil buffer\r
-    unsigned int AntialiasingLevel; ///< Level of antialiasing\r
-};\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_WINDOWSETTINGS_HPP\r
diff --git a/dependencies64/sfml/include/SFML/Window/WindowStyle.hpp b/dependencies64/sfml/include/SFML/Window/WindowStyle.hpp
deleted file mode 100644 (file)
index 9fcc2e7..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-////////////////////////////////////////////////////////////\r
-//\r
-// SFML - Simple and Fast Multimedia Library\r
-// Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)\r
-//\r
-// This software is provided 'as-is', without any express or implied warranty.\r
-// In no event will the authors be held liable for any damages arising from the use of this software.\r
-//\r
-// Permission is granted to anyone to use this software for any purpose,\r
-// including commercial applications, and to alter it and redistribute it freely,\r
-// subject to the following restrictions:\r
-//\r
-// 1. The origin of this software must not be misrepresented;\r
-//    you must not claim that you wrote the original software.\r
-//    If you use this software in a product, an acknowledgment\r
-//    in the product documentation would be appreciated but is not required.\r
-//\r
-// 2. Altered source versions must be plainly marked as such,\r
-//    and must not be misrepresented as being the original software.\r
-//\r
-// 3. This notice may not be removed or altered from any source distribution.\r
-//\r
-////////////////////////////////////////////////////////////\r
-\r
-#ifndef SFML_WINDOWSTYLE_HPP\r
-#define SFML_WINDOWSTYLE_HPP\r
-\r
-\r
-namespace sf\r
-{\r
-\r
-////////////////////////////////////////////////////////////\r
-/// Enumeration of window creation styles\r
-////////////////////////////////////////////////////////////\r
-namespace Style\r
-{\r
-    enum\r
-    {\r
-        None       = 0,      ///< No border / title bar (this flag and all others are mutually exclusive)\r
-        Titlebar   = 1 << 0, ///< Title bar + fixed border\r
-        Resize     = 1 << 1, ///< Titlebar + resizable border + maximize button\r
-        Close      = 1 << 2, ///< Titlebar + close button\r
-        Fullscreen = 1 << 3  ///< Fullscreen mode (this flag and all others are mutually exclusive)\r
-    };\r
-}\r
-\r
-\r
-} // namespace sf\r
-\r
-\r
-#endif // SFML_WINDOWSTYLE_HPP\r
diff --git a/dependencies64/sfml/lib/sfml-system-d.lib b/dependencies64/sfml/lib/sfml-system-d.lib
deleted file mode 100644 (file)
index a98bfb7..0000000
Binary files a/dependencies64/sfml/lib/sfml-system-d.lib and /dev/null differ
diff --git a/dependencies64/sfml/lib/sfml-window-d.lib b/dependencies64/sfml/lib/sfml-window-d.lib
deleted file mode 100644 (file)
index c9a0059..0000000
Binary files a/dependencies64/sfml/lib/sfml-window-d.lib and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbb.dll b/dependencies64/tbb/bin/tbb.dll
deleted file mode 100644 (file)
index 1b0f2b7..0000000
Binary files a/dependencies64/tbb/bin/tbb.dll and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbb.pdb b/dependencies64/tbb/bin/tbb.pdb
deleted file mode 100644 (file)
index f2cc8d3..0000000
Binary files a/dependencies64/tbb/bin/tbb.pdb and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbb_debug.dll b/dependencies64/tbb/bin/tbb_debug.dll
deleted file mode 100644 (file)
index 5b62488..0000000
Binary files a/dependencies64/tbb/bin/tbb_debug.dll and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbb_debug.pdb b/dependencies64/tbb/bin/tbb_debug.pdb
deleted file mode 100644 (file)
index 341a1a6..0000000
Binary files a/dependencies64/tbb/bin/tbb_debug.pdb and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbb_preview.dll b/dependencies64/tbb/bin/tbb_preview.dll
deleted file mode 100644 (file)
index 6217d34..0000000
Binary files a/dependencies64/tbb/bin/tbb_preview.dll and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbb_preview.pdb b/dependencies64/tbb/bin/tbb_preview.pdb
deleted file mode 100644 (file)
index 2b9182b..0000000
Binary files a/dependencies64/tbb/bin/tbb_preview.pdb and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbb_preview_debug.dll b/dependencies64/tbb/bin/tbb_preview_debug.dll
deleted file mode 100644 (file)
index 7fae5cc..0000000
Binary files a/dependencies64/tbb/bin/tbb_preview_debug.dll and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbb_preview_debug.pdb b/dependencies64/tbb/bin/tbb_preview_debug.pdb
deleted file mode 100644 (file)
index a5372e5..0000000
Binary files a/dependencies64/tbb/bin/tbb_preview_debug.pdb and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbbmalloc.dll b/dependencies64/tbb/bin/tbbmalloc.dll
deleted file mode 100644 (file)
index 79414a3..0000000
Binary files a/dependencies64/tbb/bin/tbbmalloc.dll and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbbmalloc.pdb b/dependencies64/tbb/bin/tbbmalloc.pdb
deleted file mode 100644 (file)
index 99a8b83..0000000
Binary files a/dependencies64/tbb/bin/tbbmalloc.pdb and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbbmalloc_debug.dll b/dependencies64/tbb/bin/tbbmalloc_debug.dll
deleted file mode 100644 (file)
index 2e025c8..0000000
Binary files a/dependencies64/tbb/bin/tbbmalloc_debug.dll and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbbmalloc_debug.pdb b/dependencies64/tbb/bin/tbbmalloc_debug.pdb
deleted file mode 100644 (file)
index 7b938d7..0000000
Binary files a/dependencies64/tbb/bin/tbbmalloc_debug.pdb and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbbmalloc_proxy.dll b/dependencies64/tbb/bin/tbbmalloc_proxy.dll
deleted file mode 100644 (file)
index 0320fcb..0000000
Binary files a/dependencies64/tbb/bin/tbbmalloc_proxy.dll and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbbmalloc_proxy.pdb b/dependencies64/tbb/bin/tbbmalloc_proxy.pdb
deleted file mode 100644 (file)
index ba3de6f..0000000
Binary files a/dependencies64/tbb/bin/tbbmalloc_proxy.pdb and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbbmalloc_proxy_debug.dll b/dependencies64/tbb/bin/tbbmalloc_proxy_debug.dll
deleted file mode 100644 (file)
index 1812c85..0000000
Binary files a/dependencies64/tbb/bin/tbbmalloc_proxy_debug.dll and /dev/null differ
diff --git a/dependencies64/tbb/bin/tbbmalloc_proxy_debug.pdb b/dependencies64/tbb/bin/tbbmalloc_proxy_debug.pdb
deleted file mode 100644 (file)
index 257d82a..0000000
Binary files a/dependencies64/tbb/bin/tbbmalloc_proxy_debug.pdb and /dev/null differ
diff --git a/dependencies64/tbb/include/index.html b/dependencies64/tbb/include/index.html
deleted file mode 100644 (file)
index ee08489..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-<HTML>
-<BODY>
-
-<H2>Overview</H2>
-Include files for Threading Building Blocks.
-
-<H2>Directories</H2>
-<DL>
-<DT><A HREF="tbb/index.html">tbb</A>
-<DD>Include files for Threading Building Blocks classes and functions.
-</DL>
-
-<HR>
-<A HREF="../index.html">Up to parent directory</A>
-<p></p>
-Copyright &copy; 2005-2011 Intel Corporation.  All Rights Reserved.
-<P></P>
-Intel is a registered trademark or trademark of Intel Corporation
-or its subsidiaries in the United States and other countries.
-<p></p>
-* Other names and brands may be claimed as the property of others.
-</BODY>
-</HTML>
diff --git a/dependencies64/tbb/include/serial/tbb/parallel_for.h b/dependencies64/tbb/include/serial/tbb/parallel_for.h
deleted file mode 100644 (file)
index e953cf0..0000000
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_SERIAL_parallel_for_H
-#define __TBB_SERIAL_parallel_for_H
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <stdexcept>
-#include <string> // required to construct std exception classes
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-#include "tbb_annotate.h"
-
-#ifndef __TBB_NORMAL_EXECUTION
-#include "tbb/blocked_range.h"
-#include "tbb/partitioner.h"
-#endif
-
-namespace tbb {
-namespace serial {
-namespace interface6 {
-
-// parallel_for serial annotated implementation
-
-template< typename Range, typename Body, typename Partitioner >
-class start_for : tbb::internal::no_copy {
-    Range my_range;
-    const Body my_body;
-    typename Partitioner::task_partition_type my_partition;
-    void execute();
-
-    //! Constructor for root task.
-    start_for( const Range& range, const Body& body, Partitioner& partitioner ) :
-        my_range( range ),
-        my_body( body ),
-        my_partition( partitioner )
-    {
-    }
-
-    //! Splitting constructor used to generate children.
-    /** this becomes left child.  Newly constructed object is right child. */
-    start_for( start_for& parent_, split ) :
-        my_range( parent_.my_range, split() ),
-        my_body( parent_.my_body ),
-        my_partition( parent_.my_partition, split() )
-    {
-    }
-
-public:
-    static void run(  const Range& range, const Body& body, const Partitioner& partitioner ) {
-        if( !range.empty() ) {
-            ANNOTATE_SITE_BEGIN( tbb_parallel_for );
-            {
-                start_for a( range, body, const_cast< Partitioner& >( partitioner ) );
-                a.execute();
-            }
-            ANNOTATE_SITE_END( tbb_parallel_for );
-        }
-    }
-};
-
-template< typename Range, typename Body, typename Partitioner >
-void start_for< Range, Body, Partitioner >::execute() {
-    if( !my_range.is_divisible() || !my_partition.divisions_left() ) {
-        ANNOTATE_TASK_BEGIN( tbb_parallel_for_range );
-        {
-            my_body( my_range );
-        }
-        ANNOTATE_TASK_END( tbb_parallel_for_range );
-    } else {
-        start_for b( *this, split() );
-        this->execute(); // Execute the left interval first to keep the serial order.
-        b.execute();     // Execute the right interval then.
-    }
-}
-
-//! Parallel iteration over range with default partitioner..
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body ) {
-    serial::interface6::start_for<Range,Body,auto_partitioner>::run(range,body,auto_partitioner());
-}
-
-//! Parallel iteration over range with simple partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body, const simple_partitioner& partitioner ) {
-    serial::interface6::start_for<Range,Body,simple_partitioner>::run(range,body,partitioner);
-}
-
-//! Parallel iteration over range with auto_partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body, const auto_partitioner& partitioner ) {
-    serial::interface6::start_for<Range,Body,auto_partitioner>::run(range,body,partitioner);
-}
-
-//! Parallel iteration over range with affinity_partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body, affinity_partitioner& partitioner ) {
-    serial::interface6::start_for<Range,Body,affinity_partitioner>::run(range,body,partitioner);
-}
-
-//! Parallel iteration over a range of integers with a step value
-template <typename Index, typename Function>
-void parallel_for(Index first, Index last, Index step, const Function& f) {
-    if (step <= 0 )
-        throw std::invalid_argument( "nonpositive_step" );
-    else if (last > first) {
-        // Above "else" avoids "potential divide by zero" warning on some platforms
-        ANNOTATE_SITE_BEGIN( tbb_parallel_for );
-        for( Index i = first; i < last; i = i + step ) {
-            ANNOTATE_TASK_BEGIN( tbb_parallel_for_iteration );
-            { f( i ); }
-            ANNOTATE_TASK_END( tbb_parallel_for_iteration );
-        }
-        ANNOTATE_SITE_END( tbb_parallel_for );
-    }
-}
-
-//! Parallel iteration over a range of integers with a default step value
-template <typename Index, typename Function>
-void parallel_for(Index first, Index last, const Function& f) {
-    parallel_for(first, last, static_cast<Index>(1), f);
-}
-
-} // namespace interface6
-
-using interface6::parallel_for;
-
-} // namespace serial
-
-#ifndef __TBB_NORMAL_EXECUTION
-using serial::interface6::parallel_for;
-#endif
-
-} // namespace tbb
-
-#endif /* __TBB_SERIAL_parallel_for_H */
diff --git a/dependencies64/tbb/include/serial/tbb/tbb_annotate.h b/dependencies64/tbb/include/serial/tbb/tbb_annotate.h
deleted file mode 100644 (file)
index 5aeb6ea..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_annotate_H
-#define __TBB_annotate_H
-
-// Macros used by the Intel(R) Parallel Advisor.
-#ifdef __TBB_NORMAL_EXECUTION
-    #define ANNOTATE_SITE_BEGIN( site )
-    #define ANNOTATE_SITE_END( site )
-    #define ANNOTATE_TASK_BEGIN( task )
-    #define ANNOTATE_TASK_END( task )
-    #define ANNOTATE_LOCK_ACQUIRE( lock )
-    #define ANNOTATE_LOCK_RELEASE( lock )
-#else
-    #include <advisor-annotate.h>
-#endif
-
-#endif /* __TBB_annotate_H */
diff --git a/dependencies64/tbb/include/tbb/aligned_space.h b/dependencies64/tbb/include/tbb/aligned_space.h
deleted file mode 100644 (file)
index 7d642fb..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_aligned_space_H
-#define __TBB_aligned_space_H
-
-#include "tbb_stddef.h"
-#include "tbb_machine.h"
-
-namespace tbb {
-
-//! Block of space aligned sufficiently to construct an array T with N elements.
-/** The elements are not constructed or destroyed by this class.
-    @ingroup memory_allocation */
-template<typename T,size_t N>
-class aligned_space {
-private:
-    typedef __TBB_TypeWithAlignmentAtLeastAsStrict(T) element_type;
-    element_type array[(sizeof(T)*N+sizeof(element_type)-1)/sizeof(element_type)];
-public:
-    //! Pointer to beginning of array
-    T* begin() {return internal::punned_cast<T*>(this);}
-
-    //! Pointer to one past last element in array.
-    T* end() {return begin()+N;}
-};
-
-} // namespace tbb 
-
-#endif /* __TBB_aligned_space_H */
diff --git a/dependencies64/tbb/include/tbb/atomic.h b/dependencies64/tbb/include/tbb/atomic.h
deleted file mode 100644 (file)
index 5257ff5..0000000
+++ /dev/null
@@ -1,430 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_atomic_H
-#define __TBB_atomic_H
-
-#include <cstddef>
-#include "tbb_stddef.h"
-
-#if _MSC_VER 
-#define __TBB_LONG_LONG __int64
-#else
-#define __TBB_LONG_LONG long long
-#endif /* _MSC_VER */
-
-#include "tbb_machine.h"
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER)
-    // Workaround for overzealous compiler warnings 
-    #pragma warning (push)
-    #pragma warning (disable: 4244 4267)
-#endif
-
-namespace tbb {
-
-//! Specifies memory fencing.
-enum memory_semantics {
-    //! Sequentially consistent fence.
-    full_fence,
-    //! Acquire fence
-    acquire,
-    //! Release fence
-    release,
-    //! No ordering
-    relaxed
-};
-
-//! @cond INTERNAL
-namespace internal {
-
-#if __TBB_ATTRIBUTE_ALIGNED_PRESENT
-    #define __TBB_DECL_ATOMIC_FIELD(t,f,a) t f  __attribute__ ((aligned(a)));
-#elif __TBB_DECLSPEC_ALIGN_PRESENT
-    #define __TBB_DECL_ATOMIC_FIELD(t,f,a) __declspec(align(a)) t f;
-#else 
-    #error Do not know syntax for forcing alignment.
-#endif
-
-template<size_t S>
-struct atomic_rep;           // Primary template declared, but never defined.
-
-template<>
-struct atomic_rep<1> {       // Specialization
-    typedef int8_t word;
-    int8_t value;
-};
-template<>
-struct atomic_rep<2> {       // Specialization
-    typedef int16_t word;
-    __TBB_DECL_ATOMIC_FIELD(int16_t,value,2)
-};
-template<>
-struct atomic_rep<4> {       // Specialization
-#if _MSC_VER && __TBB_WORDSIZE==4
-    // Work-around that avoids spurious /Wp64 warnings
-    typedef intptr_t word;
-#else
-    typedef int32_t word;
-#endif
-    __TBB_DECL_ATOMIC_FIELD(int32_t,value,4)
-};
-#if __TBB_64BIT_ATOMICS
-template<>
-struct atomic_rep<8> {       // Specialization
-    typedef int64_t word;
-    __TBB_DECL_ATOMIC_FIELD(int64_t,value,8)
-};
-#endif
-
-template<size_t Size, memory_semantics M>
-struct atomic_traits;        // Primary template declared, but not defined.
-
-#define __TBB_DECL_FENCED_ATOMIC_PRIMITIVES(S,M)                                                         \
-    template<> struct atomic_traits<S,M> {                                                               \
-        typedef atomic_rep<S>::word word;                                                                \
-        inline static word compare_and_swap( volatile void* location, word new_value, word comparand ) { \
-            return __TBB_machine_cmpswp##S##M(location,new_value,comparand);                             \
-        }                                                                                                \
-        inline static word fetch_and_add( volatile void* location, word addend ) {                       \
-            return __TBB_machine_fetchadd##S##M(location,addend);                                        \
-        }                                                                                                \
-        inline static word fetch_and_store( volatile void* location, word value ) {                      \
-            return __TBB_machine_fetchstore##S##M(location,value);                                       \
-        }                                                                                                \
-    };
-
-#define __TBB_DECL_ATOMIC_PRIMITIVES(S)                                                                  \
-    template<memory_semantics M>                                                                         \
-    struct atomic_traits<S,M> {                                                                          \
-        typedef atomic_rep<S>::word word;                                                                \
-        inline static word compare_and_swap( volatile void* location, word new_value, word comparand ) { \
-            return __TBB_machine_cmpswp##S(location,new_value,comparand);                                \
-        }                                                                                                \
-        inline static word fetch_and_add( volatile void* location, word addend ) {                       \
-            return __TBB_machine_fetchadd##S(location,addend);                                           \
-        }                                                                                                \
-        inline static word fetch_and_store( volatile void* location, word value ) {                      \
-            return __TBB_machine_fetchstore##S(location,value);                                          \
-        }                                                                                                \
-    };
-
-template<memory_semantics M>
-struct atomic_load_store_traits;    // Primary template declaration
-
-#define __TBB_DECL_ATOMIC_LOAD_STORE_PRIMITIVES(M)                      \
-    template<> struct atomic_load_store_traits<M> {                     \
-        template <typename T>                                           \
-        inline static T load( const volatile T& location ) {            \
-            return __TBB_load_##M( location );                          \
-        }                                                               \
-        template <typename T>                                           \
-        inline static void store( volatile T& location, T value ) {     \
-            __TBB_store_##M( location, value );                         \
-        }                                                               \
-    }
-
-#if __TBB_USE_FENCED_ATOMICS
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(1,full_fence)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(2,full_fence)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(4,full_fence)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(1,acquire)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(2,acquire)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(4,acquire)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(1,release)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(2,release)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(4,release)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(1,relaxed)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(2,relaxed)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(4,relaxed)
-#if __TBB_64BIT_ATOMICS
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(8,full_fence)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(8,acquire)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(8,release)
-__TBB_DECL_FENCED_ATOMIC_PRIMITIVES(8,relaxed)
-#endif
-#else /* !__TBB_USE_FENCED_ATOMICS */
-__TBB_DECL_ATOMIC_PRIMITIVES(1)
-__TBB_DECL_ATOMIC_PRIMITIVES(2)
-__TBB_DECL_ATOMIC_PRIMITIVES(4)
-#if __TBB_64BIT_ATOMICS
-__TBB_DECL_ATOMIC_PRIMITIVES(8)
-#endif
-#endif /* !__TBB_USE_FENCED_ATOMICS */
-
-__TBB_DECL_ATOMIC_LOAD_STORE_PRIMITIVES(full_fence);
-__TBB_DECL_ATOMIC_LOAD_STORE_PRIMITIVES(acquire);
-__TBB_DECL_ATOMIC_LOAD_STORE_PRIMITIVES(release);
-__TBB_DECL_ATOMIC_LOAD_STORE_PRIMITIVES(relaxed);
-
-//! Additive inverse of 1 for type T.
-/** Various compilers issue various warnings if -1 is used with various integer types.
-    The baroque expression below avoids all the warnings (we hope). */
-#define __TBB_MINUS_ONE(T) (T(T(0)-T(1)))
-
-//! Base class that provides basic functionality for atomic<T> without fetch_and_add.
-/** Works for any type T that has the same size as an integral type, has a trivial constructor/destructor, 
-    and can be copied/compared by memcpy/memcmp. */
-template<typename T>
-struct atomic_impl {
-protected:
-    atomic_rep<sizeof(T)> rep;
-private:
-    //! Union type used to convert type T to underlying integral type.
-    union converter {
-        T value;
-        typename atomic_rep<sizeof(T)>::word bits;
-    };
-public:
-    typedef T value_type;
-
-    template<memory_semantics M>
-    value_type fetch_and_store( value_type value ) {
-        converter u, w;
-        u.value = value;
-        w.bits = internal::atomic_traits<sizeof(value_type),M>::fetch_and_store(&rep.value,u.bits);
-        return w.value;
-    }
-
-    value_type fetch_and_store( value_type value ) {
-        return fetch_and_store<full_fence>(value);
-    }
-
-    template<memory_semantics M>
-    value_type compare_and_swap( value_type value, value_type comparand ) {
-        converter u, v, w;
-        u.value = value;
-        v.value = comparand;
-        w.bits = internal::atomic_traits<sizeof(value_type),M>::compare_and_swap(&rep.value,u.bits,v.bits);
-        return w.value;
-    }
-
-    value_type compare_and_swap( value_type value, value_type comparand ) {
-        return compare_and_swap<full_fence>(value,comparand);
-    }
-
-    operator value_type() const volatile {                // volatile qualifier here for backwards compatibility 
-        converter w;
-        w.bits = __TBB_load_with_acquire( rep.value );
-        return w.value;
-    }
-
-    template<memory_semantics M>
-    value_type load () const {
-        converter u;
-        u.bits = internal::atomic_load_store_traits<M>::load( rep.value );
-        return u.value;
-    }
-
-    value_type load () const {
-        return load<acquire>();
-    }
-
-    template<memory_semantics M>
-    void store ( value_type value ) {
-        converter u;
-        u.value = value;
-        internal::atomic_load_store_traits<M>::store( rep.value, u.bits );
-    }
-
-    void store ( value_type value ) {
-        store<release>( value );
-    }
-
-protected:
-    value_type store_with_release( value_type rhs ) {
-        converter u;
-        u.value = rhs;
-        __TBB_store_with_release(rep.value,u.bits);
-        return rhs;
-    }
-};
-
-//! Base class that provides basic functionality for atomic<T> with fetch_and_add.
-/** I is the underlying type.
-    D is the difference type.
-    StepType should be char if I is an integral type, and T if I is a T*. */
-template<typename I, typename D, typename StepType>
-struct atomic_impl_with_arithmetic: atomic_impl<I> {
-public:
-    typedef I value_type;
-
-    template<memory_semantics M>
-    value_type fetch_and_add( D addend ) {
-        return value_type(internal::atomic_traits<sizeof(value_type),M>::fetch_and_add( &this->rep.value, addend*sizeof(StepType) ));
-    }
-
-    value_type fetch_and_add( D addend ) {
-        return fetch_and_add<full_fence>(addend);
-    }
-
-    template<memory_semantics M>
-    value_type fetch_and_increment() {
-        return fetch_and_add<M>(1);
-    }
-
-    value_type fetch_and_increment() {
-        return fetch_and_add(1);
-    }
-
-    template<memory_semantics M>
-    value_type fetch_and_decrement() {
-        return fetch_and_add<M>(__TBB_MINUS_ONE(D));
-    }
-
-    value_type fetch_and_decrement() {
-        return fetch_and_add(__TBB_MINUS_ONE(D));
-    }
-
-public:
-    value_type operator+=( D addend ) {
-        return fetch_and_add(addend)+addend;
-    }
-
-    value_type operator-=( D addend ) {
-        // Additive inverse of addend computed using binary minus,
-        // instead of unary minus, for sake of avoiding compiler warnings.
-        return operator+=(D(0)-addend);    
-    }
-
-    value_type operator++() {
-        return fetch_and_add(1)+1;
-    }
-
-    value_type operator--() {
-        return fetch_and_add(__TBB_MINUS_ONE(D))-1;
-    }
-
-    value_type operator++(int) {
-        return fetch_and_add(1);
-    }
-
-    value_type operator--(int) {
-        return fetch_and_add(__TBB_MINUS_ONE(D));
-    }
-};
-
-} /* Internal */
-//! @endcond
-
-//! Primary template for atomic.
-/** See the Reference for details.
-    @ingroup synchronization */
-template<typename T>
-struct atomic: internal::atomic_impl<T> {
-    T operator=( T rhs ) {
-        // "this" required here in strict ISO C++ because store_with_release is a dependent name
-        return this->store_with_release(rhs);
-    }
-    atomic<T>& operator=( const atomic<T>& rhs ) {this->store_with_release(rhs); return *this;}
-};
-
-#define __TBB_DECL_ATOMIC(T) \
-    template<> struct atomic<T>: internal::atomic_impl_with_arithmetic<T,T,char> {  \
-        T operator=( T rhs ) {return store_with_release(rhs);}  \
-        atomic<T>& operator=( const atomic<T>& rhs ) {store_with_release(rhs); return *this;}  \
-    };
-
-#if __TBB_64BIT_ATOMICS
-__TBB_DECL_ATOMIC(__TBB_LONG_LONG)
-__TBB_DECL_ATOMIC(unsigned __TBB_LONG_LONG)
-#else
-// test_atomic will verify that sizeof(long long)==8
-#endif
-__TBB_DECL_ATOMIC(long)
-__TBB_DECL_ATOMIC(unsigned long)
-
-#if defined(_MSC_VER) && __TBB_WORDSIZE==4
-/* Special version of __TBB_DECL_ATOMIC that avoids gratuitous warnings from cl /Wp64 option. 
-   It is identical to __TBB_DECL_ATOMIC(unsigned) except that it replaces operator=(T) 
-   with an operator=(U) that explicitly converts the U to a T.  Types T and U should be
-   type synonyms on the platform.  Type U should be the wider variant of T from the
-   perspective of /Wp64. */
-#define __TBB_DECL_ATOMIC_ALT(T,U) \
-    template<> struct atomic<T>: internal::atomic_impl_with_arithmetic<T,T,char> {  \
-        T operator=( U rhs ) {return store_with_release(T(rhs));}  \
-        atomic<T>& operator=( const atomic<T>& rhs ) {store_with_release(rhs); return *this;}  \
-    };
-__TBB_DECL_ATOMIC_ALT(unsigned,size_t)
-__TBB_DECL_ATOMIC_ALT(int,ptrdiff_t)
-#else
-__TBB_DECL_ATOMIC(unsigned)
-__TBB_DECL_ATOMIC(int)
-#endif /* defined(_MSC_VER) && __TBB_WORDSIZE==4 */
-
-__TBB_DECL_ATOMIC(unsigned short)
-__TBB_DECL_ATOMIC(short)
-__TBB_DECL_ATOMIC(char)
-__TBB_DECL_ATOMIC(signed char)
-__TBB_DECL_ATOMIC(unsigned char)
-
-#if !defined(_MSC_VER)||defined(_NATIVE_WCHAR_T_DEFINED) 
-__TBB_DECL_ATOMIC(wchar_t)
-#endif /* _MSC_VER||!defined(_NATIVE_WCHAR_T_DEFINED) */
-
-//! Specialization for atomic<T*> with arithmetic and operator->.
-template<typename T> struct atomic<T*>: internal::atomic_impl_with_arithmetic<T*,ptrdiff_t,T> {
-    T* operator=( T* rhs ) {
-        // "this" required here in strict ISO C++ because store_with_release is a dependent name
-        return this->store_with_release(rhs);
-    }
-    atomic<T*>& operator=( const atomic<T*>& rhs ) {
-        this->store_with_release(rhs); return *this;
-    }
-    T* operator->() const {
-        return (*this);
-    }
-};
-
-//! Specialization for atomic<void*>, for sake of not allowing arithmetic or operator->.
-template<> struct atomic<void*>: internal::atomic_impl<void*> {
-    void* operator=( void* rhs ) {
-        // "this" required here in strict ISO C++ because store_with_release is a dependent name
-        return this->store_with_release(rhs);
-    }
-    atomic<void*>& operator=( const atomic<void*>& rhs ) {
-        this->store_with_release(rhs); return *this;
-    }
-};
-
-// Helpers to workaround ugly syntax of calling template member function of a
-// template class with template argument dependent on template parameters.
-
-template <memory_semantics M, typename T>
-T load ( const atomic<T>& a ) { return a.template load<M>(); }
-
-template <memory_semantics M, typename T>
-void store ( atomic<T>& a, T value ) { return a.template store<M>(value); }
-
-} // namespace tbb
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER)
-    #pragma warning (pop)
-#endif // warnings 4244, 4267 are back
-
-#endif /* __TBB_atomic_H */
diff --git a/dependencies64/tbb/include/tbb/blocked_range.h b/dependencies64/tbb/include/tbb/blocked_range.h
deleted file mode 100644 (file)
index ccba501..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_blocked_range_H
-#define __TBB_blocked_range_H
-
-#include "tbb_stddef.h"
-
-namespace tbb {
-
-/** \page range_req Requirements on range concept
-    Class \c R implementing the concept of range must define:
-    - \code R::R( const R& ); \endcode               Copy constructor
-    - \code R::~R(); \endcode                        Destructor
-    - \code bool R::is_divisible() const; \endcode   True if range can be partitioned into two subranges
-    - \code bool R::empty() const; \endcode          True if range is empty
-    - \code R::R( R& r, split ); \endcode            Split range \c r into two subranges.
-**/
-
-//! A range over which to iterate.
-/** @ingroup algorithms */
-template<typename Value>
-class blocked_range {
-public:
-    //! Type of a value
-    /** Called a const_iterator for sake of algorithms that need to treat a blocked_range
-        as an STL container. */
-    typedef Value const_iterator;
-
-    //! Type for size of a range
-    typedef std::size_t size_type;
-
-    //! Construct range with default-constructed values for begin and end.
-    /** Requires that Value have a default constructor. */
-    blocked_range() : my_end(), my_begin() {}
-
-    //! Construct range over half-open interval [begin,end), with the given grainsize.
-    blocked_range( Value begin_, Value end_, size_type grainsize_=1 ) : 
-        my_end(end_), my_begin(begin_), my_grainsize(grainsize_) 
-    {
-        __TBB_ASSERT( my_grainsize>0, "grainsize must be positive" );
-    }
-
-    //! Beginning of range.
-    const_iterator begin() const {return my_begin;}
-
-    //! One past last value in range.
-    const_iterator end() const {return my_end;}
-
-    //! Size of the range
-    /** Unspecified if end()<begin(). */
-    size_type size() const {
-        __TBB_ASSERT( !(end()<begin()), "size() unspecified if end()<begin()" );
-        return size_type(my_end-my_begin);
-    }
-
-    //! The grain size for this range.
-    size_type grainsize() const {return my_grainsize;}
-
-    //------------------------------------------------------------------------
-    // Methods that implement Range concept
-    //------------------------------------------------------------------------
-
-    //! True if range is empty.
-    bool empty() const {return !(my_begin<my_end);}
-
-    //! True if range is divisible.
-    /** Unspecified if end()<begin(). */
-    bool is_divisible() const {return my_grainsize<size();}
-
-    //! Split range.  
-    /** The new Range *this has the second half, the old range r has the first half. 
-        Unspecified if end()<begin() or !is_divisible(). */
-    blocked_range( blocked_range& r, split ) : 
-        my_end(r.my_end),
-        my_begin(do_split(r)),
-        my_grainsize(r.my_grainsize)
-    {}
-
-private:
-    /** NOTE: my_end MUST be declared before my_begin, otherwise the forking constructor will break. */
-    Value my_end;
-    Value my_begin;
-    size_type my_grainsize;
-
-    //! Auxiliary function used by forking constructor.
-    /** Using this function lets us not require that Value support assignment or default construction. */
-    static Value do_split( blocked_range& r ) {
-        __TBB_ASSERT( r.is_divisible(), "cannot split blocked_range that is not divisible" );
-        Value middle = r.my_begin + (r.my_end-r.my_begin)/2u;
-        r.my_end = middle;
-        return middle;
-    }
-
-    template<typename RowValue, typename ColValue>
-    friend class blocked_range2d;
-
-    template<typename RowValue, typename ColValue, typename PageValue>
-    friend class blocked_range3d;
-};
-
-} // namespace tbb 
-
-#endif /* __TBB_blocked_range_H */
diff --git a/dependencies64/tbb/include/tbb/blocked_range2d.h b/dependencies64/tbb/include/tbb/blocked_range2d.h
deleted file mode 100644 (file)
index 5fb182f..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_blocked_range2d_H
-#define __TBB_blocked_range2d_H
-
-#include "tbb_stddef.h"
-#include "blocked_range.h"
-
-namespace tbb {
-
-//! A 2-dimensional range that models the Range concept.
-/** @ingroup algorithms */
-template<typename RowValue, typename ColValue=RowValue>
-class blocked_range2d {
-public:
-    //! Type for size of an iteration range
-    typedef blocked_range<RowValue> row_range_type;
-    typedef blocked_range<ColValue> col_range_type;
-private:
-    row_range_type my_rows;
-    col_range_type my_cols;
-
-public:
-
-    blocked_range2d( RowValue row_begin, RowValue row_end, typename row_range_type::size_type row_grainsize,
-                     ColValue col_begin, ColValue col_end, typename col_range_type::size_type col_grainsize ) : 
-        my_rows(row_begin,row_end,row_grainsize),
-        my_cols(col_begin,col_end,col_grainsize)
-    {
-    }
-
-    blocked_range2d( RowValue row_begin, RowValue row_end,
-                     ColValue col_begin, ColValue col_end ) : 
-        my_rows(row_begin,row_end),
-        my_cols(col_begin,col_end)
-    {
-    }
-
-    //! True if range is empty
-    bool empty() const {
-        // Yes, it is a logical OR here, not AND.
-        return my_rows.empty() || my_cols.empty();
-    }
-
-    //! True if range is divisible into two pieces.
-    bool is_divisible() const {
-        return my_rows.is_divisible() || my_cols.is_divisible();
-    }
-
-    blocked_range2d( blocked_range2d& r, split ) : 
-        my_rows(r.my_rows),
-        my_cols(r.my_cols)
-    {
-        if( my_rows.size()*double(my_cols.grainsize()) < my_cols.size()*double(my_rows.grainsize()) ) {
-            my_cols.my_begin = col_range_type::do_split(r.my_cols);
-        } else {
-            my_rows.my_begin = row_range_type::do_split(r.my_rows);
-        }
-    }
-
-    //! The rows of the iteration space 
-    const row_range_type& rows() const {return my_rows;}
-
-    //! The columns of the iteration space 
-    const col_range_type& cols() const {return my_cols;}
-};
-
-} // namespace tbb 
-
-#endif /* __TBB_blocked_range2d_H */
diff --git a/dependencies64/tbb/include/tbb/blocked_range3d.h b/dependencies64/tbb/include/tbb/blocked_range3d.h
deleted file mode 100644 (file)
index f6f58de..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_blocked_range3d_H
-#define __TBB_blocked_range3d_H
-
-#include "tbb_stddef.h"
-#include "blocked_range.h"
-
-namespace tbb {
-
-//! A 3-dimensional range that models the Range concept.
-/** @ingroup algorithms */
-template<typename PageValue, typename RowValue=PageValue, typename ColValue=RowValue>
-class blocked_range3d {
-public:
-    //! Type for size of an iteration range
-    typedef blocked_range<PageValue> page_range_type;
-    typedef blocked_range<RowValue>  row_range_type;
-    typedef blocked_range<ColValue>  col_range_type;
-private:
-    page_range_type my_pages;
-    row_range_type  my_rows;
-    col_range_type  my_cols;
-
-public:
-
-    blocked_range3d( PageValue page_begin, PageValue page_end,
-                     RowValue  row_begin,  RowValue row_end,
-                     ColValue  col_begin,  ColValue col_end ) : 
-        my_pages(page_begin,page_end),
-        my_rows(row_begin,row_end),
-        my_cols(col_begin,col_end)
-    {
-    }
-
-    blocked_range3d( PageValue page_begin, PageValue page_end, typename page_range_type::size_type page_grainsize, 
-                     RowValue  row_begin,  RowValue row_end,   typename row_range_type::size_type row_grainsize,
-                     ColValue  col_begin,  ColValue col_end,   typename col_range_type::size_type col_grainsize ) :  
-        my_pages(page_begin,page_end,page_grainsize),
-        my_rows(row_begin,row_end,row_grainsize),
-        my_cols(col_begin,col_end,col_grainsize)
-    {
-    }
-
-    //! True if range is empty
-    bool empty() const {
-        // Yes, it is a logical OR here, not AND.
-        return my_pages.empty() || my_rows.empty() || my_cols.empty();
-    }
-
-    //! True if range is divisible into two pieces.
-    bool is_divisible() const {
-        return  my_pages.is_divisible() || my_rows.is_divisible() || my_cols.is_divisible();
-    }
-
-    blocked_range3d( blocked_range3d& r, split ) : 
-        my_pages(r.my_pages),
-        my_rows(r.my_rows),
-        my_cols(r.my_cols)
-    {
-        if( my_pages.size()*double(my_rows.grainsize()) < my_rows.size()*double(my_pages.grainsize()) ) {
-            if ( my_rows.size()*double(my_cols.grainsize()) < my_cols.size()*double(my_rows.grainsize()) ) {
-                my_cols.my_begin = col_range_type::do_split(r.my_cols);
-            } else {
-                my_rows.my_begin = row_range_type::do_split(r.my_rows);
-            }
-       } else {
-            if ( my_pages.size()*double(my_cols.grainsize()) < my_cols.size()*double(my_pages.grainsize()) ) {
-                my_cols.my_begin = col_range_type::do_split(r.my_cols);
-            } else {
-                    my_pages.my_begin = page_range_type::do_split(r.my_pages);
-            }
-        }
-    }
-
-    //! The pages of the iteration space 
-    const page_range_type& pages() const {return my_pages;}
-
-    //! The rows of the iteration space 
-    const row_range_type& rows() const {return my_rows;}
-
-    //! The columns of the iteration space 
-    const col_range_type& cols() const {return my_cols;}
-
-};
-
-} // namespace tbb 
-
-#endif /* __TBB_blocked_range3d_H */
diff --git a/dependencies64/tbb/include/tbb/cache_aligned_allocator.h b/dependencies64/tbb/include/tbb/cache_aligned_allocator.h
deleted file mode 100644 (file)
index 896a28e..0000000
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_cache_aligned_allocator_H
-#define __TBB_cache_aligned_allocator_H
-
-#include <new>
-#include "tbb_stddef.h"
-
-namespace tbb {
-
-//! @cond INTERNAL
-namespace internal {
-    //! Cache/sector line size.
-    /** @ingroup memory_allocation */
-    size_t __TBB_EXPORTED_FUNC NFS_GetLineSize();
-
-    //! Allocate memory on cache/sector line boundary.
-    /** @ingroup memory_allocation */
-    void* __TBB_EXPORTED_FUNC NFS_Allocate( size_t n_element, size_t element_size, void* hint );
-
-    //! Free memory allocated by NFS_Allocate.
-    /** Freeing a NULL pointer is allowed, but has no effect.
-        @ingroup memory_allocation */
-    void __TBB_EXPORTED_FUNC NFS_Free( void* );
-}
-//! @endcond
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    // Workaround for erroneous "unreferenced parameter" warning in method destroy.
-    #pragma warning (push)
-    #pragma warning (disable: 4100)
-#endif
-
-//! Meets "allocator" requirements of ISO C++ Standard, Section 20.1.5
-/** The members are ordered the same way they are in section 20.4.1
-    of the ISO C++ standard.
-    @ingroup memory_allocation */
-template<typename T>
-class cache_aligned_allocator {
-public:
-    typedef typename internal::allocator_type<T>::value_type value_type;
-    typedef value_type* pointer;
-    typedef const value_type* const_pointer;
-    typedef value_type& reference;
-    typedef const value_type& const_reference;
-    typedef size_t size_type;
-    typedef ptrdiff_t difference_type;
-    template<typename U> struct rebind {
-        typedef cache_aligned_allocator<U> other;
-    };
-
-    cache_aligned_allocator() throw() {}
-    cache_aligned_allocator( const cache_aligned_allocator& ) throw() {}
-    template<typename U> cache_aligned_allocator(const cache_aligned_allocator<U>&) throw() {}
-
-    pointer address(reference x) const {return &x;}
-    const_pointer address(const_reference x) const {return &x;}
-    
-    //! Allocate space for n objects, starting on a cache/sector line.
-    pointer allocate( size_type n, const void* hint=0 ) {
-        // The "hint" argument is always ignored in NFS_Allocate thus const_cast shouldn't hurt
-        return pointer(internal::NFS_Allocate( n, sizeof(value_type), const_cast<void*>(hint) ));
-    }
-
-    //! Free block of memory that starts on a cache line
-    void deallocate( pointer p, size_type ) {
-        internal::NFS_Free(p);
-    }
-
-    //! Largest value for which method allocate might succeed.
-    size_type max_size() const throw() {
-        return (~size_t(0)-internal::NFS_MaxLineSize)/sizeof(value_type);
-    }
-
-    //! Copy-construct value at location pointed to by p.
-    void construct( pointer p, const value_type& value ) {::new((void*)(p)) value_type(value);}
-
-    //! Destroy value at location pointed to by p.
-    void destroy( pointer p ) {p->~value_type();}
-};
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    #pragma warning (pop)
-#endif // warning 4100 is back
-
-//! Analogous to std::allocator<void>, as defined in ISO C++ Standard, Section 20.4.1
-/** @ingroup memory_allocation */
-template<> 
-class cache_aligned_allocator<void> {
-public:
-    typedef void* pointer;
-    typedef const void* const_pointer;
-    typedef void value_type;
-    template<typename U> struct rebind {
-        typedef cache_aligned_allocator<U> other;
-    };
-};
-
-template<typename T, typename U>
-inline bool operator==( const cache_aligned_allocator<T>&, const cache_aligned_allocator<U>& ) {return true;}
-
-template<typename T, typename U>
-inline bool operator!=( const cache_aligned_allocator<T>&, const cache_aligned_allocator<U>& ) {return false;}
-
-} // namespace tbb
-
-#endif /* __TBB_cache_aligned_allocator_H */
diff --git a/dependencies64/tbb/include/tbb/combinable.h b/dependencies64/tbb/include/tbb/combinable.h
deleted file mode 100644 (file)
index 8b3bdef..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_combinable_H
-#define __TBB_combinable_H
-
-#include "enumerable_thread_specific.h"
-#include "cache_aligned_allocator.h"
-
-namespace tbb {
-/** \name combinable
-    **/
-//@{
-//! Thread-local storage with optional reduction
-/** @ingroup containers */
-    template <typename T>
-        class combinable {
-    private:
-        typedef typename tbb::cache_aligned_allocator<T> my_alloc;
-
-        typedef typename tbb::enumerable_thread_specific<T, my_alloc, ets_no_key> my_ets_type;
-        my_ets_type my_ets; 
-    public:
-
-        combinable() { }
-
-        template <typename finit>
-        combinable( finit _finit) : my_ets(_finit) { }
-
-        //! destructor
-        ~combinable() { 
-        }
-
-        combinable(const combinable& other) : my_ets(other.my_ets) { }
-
-        combinable & operator=( const combinable & other) { my_ets = other.my_ets; return *this; }
-
-        void clear() { my_ets.clear(); }
-
-        T& local() { return my_ets.local(); }
-
-        T& local(bool & exists) { return my_ets.local(exists); }
-
-        // combine_func_t has signature T(T,T) or T(const T&, const T&)
-        template <typename combine_func_t>
-        T combine(combine_func_t f_combine) { return my_ets.combine(f_combine); }
-
-        // combine_func_t has signature void(T) or void(const T&)
-        template <typename combine_func_t>
-        void combine_each(combine_func_t f_combine) { my_ets.combine_each(f_combine); }
-
-    };
-} // namespace tbb
-#endif /* __TBB_combinable_H */
diff --git a/dependencies64/tbb/include/tbb/compat/condition_variable b/dependencies64/tbb/include/tbb/compat/condition_variable
deleted file mode 100644 (file)
index c73f521..0000000
+++ /dev/null
@@ -1,460 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_condition_variable_H
-#define __TBB_condition_variable_H
-
-#if _WIN32||_WIN64
-#include "../machine/windows_api.h"
-
-namespace tbb { 
-namespace interface5 {
-namespace internal { 
-struct condition_variable_using_event
-{
-    //! Event for blocking waiting threads.
-    HANDLE event;
-    //! Protects invariants involving n_waiters, release_count, and epoch.
-    CRITICAL_SECTION mutex;
-    //! Number of threads waiting on this condition variable
-    int n_waiters;
-    //! Number of threads remaining that should no longer wait on this condition variable.
-    int release_count;
-    //! To keep threads from waking up prematurely with earlier signals.
-    unsigned epoch;
-};
-}}} // namespace tbb::interface5::internal
-
-#ifndef CONDITION_VARIABLE_INIT
-typedef void* CONDITION_VARIABLE;
-typedef CONDITION_VARIABLE* PCONDITION_VARIABLE;
-#endif
-
-#else /* if not _WIN32||_WIN64 */
-#include <errno.h> // some systems need it for ETIMEDOUT
-#include <pthread.h>
-#if __linux__
-#include <ctime>
-#else /* generic Unix */
-#include <sys/time.h>
-#endif
-#endif /* _WIN32||_WIN64 */
-
-#include "../tbb_stddef.h"
-#include "../mutex.h"
-#include "../tbb_thread.h"
-#include "../tbb_exception.h"
-#include "../tbb_profiling.h"
-
-namespace tbb {
-
-namespace interface5 {
-
-// C++0x standard working draft 30.4.3
-// Lock tag types
-struct defer_lock_t { }; //! do not acquire ownership of the mutex
-struct try_to_lock_t { }; //! try to acquire ownership of the mutex without blocking
-struct adopt_lock_t { }; //! assume the calling thread has already
-const defer_lock_t defer_lock = {};
-const try_to_lock_t try_to_lock = {};
-const adopt_lock_t adopt_lock = {};
-
-// C++0x standard working draft 30.4.3.1
-//! lock_guard 
-template<typename M>
-class lock_guard : tbb::internal::no_copy {
-public:
-    //! mutex type
-    typedef M mutex_type;
-
-    //! Constructor
-    /** precondition: If mutex_type is not a recursive mutex, the calling thread
-        does not own the mutex m. */
-    explicit lock_guard(mutex_type& m) : pm(m) {m.lock();}
-    
-    //! Adopt_lock constructor
-    /** precondition: the calling thread owns the mutex m. */
-    lock_guard(mutex_type& m, adopt_lock_t) : pm(m) {}
-
-    //! Destructor
-    ~lock_guard() { pm.unlock(); }
-private:
-    mutex_type& pm;
-};
-
-// C++0x standard working draft 30.4.3.2
-//! unique_lock 
-template<typename M>
-class unique_lock : tbb::internal::no_copy {
-    friend class condition_variable;
-public:
-    typedef M mutex_type;
-
-    // 30.4.3.2.1 construct/copy/destroy
-    // NB: Without constructors that take an r-value reference to a unique_lock, the following constructor is of little use.
-    //! Constructor
-    /** postcondition: pm==0 && owns==false */
-    unique_lock() : pm(NULL), owns(false) {}
-
-    //! Constructor
-    /** precondition: if mutex_type is not a recursive mutex, the  calling thread
-        does not own the mutex m.  If the precondition is not met, a deadlock occurs.
-        postcondition: pm==&m and owns==true */
-    explicit unique_lock(mutex_type& m) : pm(&m) {m.lock(); owns=true;}
-
-    //! Defer_lock constructor
-    /** postcondition: pm==&m and owns==false */
-    unique_lock(mutex_type& m, defer_lock_t) : pm(&m), owns(false) {}
-
-    //! Try_to_lock constructor
-    /** precondition: if mutex_type is not a recursive mutex, the  calling thread
-       does not own the mutex m.  If the precondition is not met, a deadlock occurs.
-       postcondition: pm==&m and owns==res where res is the value returned by
-       the call to m.try_lock(). */
-    unique_lock(mutex_type& m, try_to_lock_t) : pm(&m) {owns = m.try_lock();}
-
-    //! Adopt_lock constructor
-    /** precondition: the calling thread owns the mutex. If it does not, mutex->unlock() would fail.
-        postcondition: pm==&m and owns==true */
-    unique_lock(mutex_type& m, adopt_lock_t) : pm(&m), owns(true) {}
-
-    //! Timed unique_lock acquisition.
-    /** To avoid requiring support for namespace chrono, this method deviates from the working draft in that 
-        it uses tbb::tick_count::interval_t to specify the time duration. */
-    unique_lock(mutex_type& m, const tick_count::interval_t &i) : pm(&m) {owns = try_lock_for( i );}
-
-    //! Destructor
-    ~unique_lock() { if( owns ) pm->unlock(); }
-
-    // 30.4.3.2.2 locking
-    //! Lock the mutex and own it.
-    void lock() {
-        if( pm ) {
-            if( !owns ) {
-                pm->lock();
-                owns = true;
-            } else 
-                throw_exception_v4( tbb::internal::eid_possible_deadlock );
-        } else 
-            throw_exception_v4( tbb::internal::eid_operation_not_permitted );
-        __TBB_ASSERT( owns, NULL );
-    }
-
-    //! Try to lock the mutex. 
-    /** If successful, note that this lock owns it. Otherwise, set it false. */
-    bool try_lock() {
-        if( pm ) {
-            if( !owns )
-                owns = pm->try_lock();
-            else
-                throw_exception_v4( tbb::internal::eid_possible_deadlock );
-        } else 
-            throw_exception_v4( tbb::internal::eid_operation_not_permitted );
-        return owns;
-    }
-    //! Try to lock the mutex. 
-    bool try_lock_for( const tick_count::interval_t &i );
-
-    //! Unlock the mutex
-    /** And note that this lock no longer owns it. */
-    void unlock() { 
-        if( owns ) {
-            pm->unlock();
-            owns = false;
-        } else
-            throw_exception_v4( tbb::internal::eid_operation_not_permitted );
-        __TBB_ASSERT( !owns, NULL );
-    }
-
-    // 30.4.3.2.3 modifiers
-    //! Swap the two unique locks
-    void swap(unique_lock& u) {
-        mutex_type* t_pm = u.pm;    u.pm   = pm;    pm   = t_pm;
-        bool t_owns      = u.owns;  u.owns = owns;  owns = t_owns;
-    }
-
-    //! Release control over the mutex.
-    mutex_type* release() {
-        mutex_type* o_pm = pm; 
-        pm = NULL; 
-        owns = false; 
-        return o_pm; 
-    }
-
-    // 30.4.3.2.4 observers
-    //! Does this lock own the mutex?
-    bool owns_lock() const { return owns; }
-
-    // TODO: Un-comment 'explicit' when the last non-C++0x compiler support is dropped
-    //! Does this lock own the mutex?
-    /*explicit*/ operator bool() const { return owns; }
-
-    //! Return the mutex that this lock currently has.
-    mutex_type* mutex() const { return pm; }
-
-private:
-    mutex_type* pm;
-    bool owns;
-};
-
-template<typename M>
-bool unique_lock<M>::try_lock_for( const tick_count::interval_t &i)
-{ 
-    const int unique_lock_tick = 100; /* microseconds; 0.1 milliseconds */
-    // the smallest wait-time is 0.1 milliseconds.
-    bool res = pm->try_lock();
-    int duration_in_micro; 
-    if( !res && (duration_in_micro=int(i.seconds()*1e6))>unique_lock_tick ) {
-        tick_count::interval_t i_100( double(unique_lock_tick)/1e6 /* seconds */); // 100 microseconds = 0.1*10E-3
-        do {
-            this_tbb_thread::sleep(i_100); // sleep for 100 micro seconds
-            duration_in_micro -= unique_lock_tick;
-            res = pm->try_lock();
-        } while( !res && duration_in_micro>unique_lock_tick );
-    }
-    return (owns=res);
-}
-
-//! Swap the two unique locks that have the mutexes of same type 
-template<typename M>
-void swap(unique_lock<M>& x, unique_lock<M>& y) { x.swap( y ); }
-
-namespace internal {
-
-#if _WIN32||_WIN64
-union condvar_impl_t {
-    condition_variable_using_event cv_event;
-    CONDITION_VARIABLE             cv_native;
-};
-void __TBB_EXPORTED_FUNC internal_initialize_condition_variable( condvar_impl_t& cv );
-void __TBB_EXPORTED_FUNC internal_destroy_condition_variable(    condvar_impl_t& cv );
-void __TBB_EXPORTED_FUNC internal_condition_variable_notify_one( condvar_impl_t& cv );
-void __TBB_EXPORTED_FUNC internal_condition_variable_notify_all( condvar_impl_t& cv );
-bool __TBB_EXPORTED_FUNC internal_condition_variable_wait( condvar_impl_t& cv, mutex* mtx, const tick_count::interval_t* i = NULL );
-
-#else /* if !(_WIN32||_WIN64), i.e., POSIX threads */
-typedef pthread_cond_t condvar_impl_t;
-#endif
-
-} // namespace internal
-
-//! cv_status
-/** C++0x standard working draft 30.5 */
-enum cv_status { no_timeout, timeout }; 
-
-//! condition variable
-/** C++0x standard working draft 30.5.1 
-    @ingroup synchronization */
-class condition_variable : tbb::internal::no_copy {
-public:
-    //! Constructor
-    condition_variable() { 
-#if _WIN32||_WIN64
-        internal_initialize_condition_variable( my_cv ); 
-#else
-        pthread_cond_init( &my_cv, NULL );
-#endif
-    }
-
-    //! Destructor
-    ~condition_variable() { 
-        //precondition: There shall be no thread blocked on *this.
-#if _WIN32||_WIN64
-        internal_destroy_condition_variable( my_cv );
-#else
-        pthread_cond_destroy( &my_cv );
-#endif
-    }
-
-    //! Notify one thread and wake it up
-    void notify_one() { 
-#if _WIN32||_WIN64
-        internal_condition_variable_notify_one( my_cv ); 
-#else
-        pthread_cond_signal( &my_cv );
-#endif
-    }
-
-    //! Notify all threads 
-    void notify_all() { 
-#if _WIN32||_WIN64
-        internal_condition_variable_notify_all( my_cv ); 
-#else
-        pthread_cond_broadcast( &my_cv );
-#endif
-    }
-
-    //! Release the mutex associated with the lock and wait on this condition variable
-    void wait(unique_lock<mutex>& lock);
-
-    //! Wait on this condition variable while pred is false
-    template <class Predicate>
-    void wait(unique_lock<mutex>& lock, Predicate pred) {
-        while( !pred() )
-            wait( lock );
-    }
-
-    //! Timed version of wait()
-    cv_status wait_for(unique_lock<mutex>& lock, const tick_count::interval_t &i );
-
-    //! Timed version of the predicated wait
-    /** The loop terminates when pred() returns true or when the time duration specified by rel_time (i) has elapsed. */
-    template<typename Predicate>
-    bool wait_for(unique_lock<mutex>& lock, const tick_count::interval_t &i, Predicate pred)
-    {
-        while( !pred() ) {
-            cv_status st = wait_for( lock, i );
-            if( st==timeout )
-                return pred();
-        }
-        return true;
-    }
-
-    // C++0x standard working draft. 30.2.3
-    typedef internal::condvar_impl_t* native_handle_type;
-
-    native_handle_type native_handle() { return (native_handle_type) &my_cv; }
-
-private:
-    internal::condvar_impl_t my_cv;
-};
-
-
-#if _WIN32||_WIN64
-inline void condition_variable::wait( unique_lock<mutex>& lock )
-{
-    __TBB_ASSERT( lock.owns, NULL );
-    lock.owns = false;
-    if( !internal_condition_variable_wait( my_cv, lock.mutex() ) ) {
-        int ec = GetLastError();
-        // on Windows 7, SleepConditionVariableCS() may return ERROR_TIMEOUT while the doc says it returns WAIT_TIMEOUT
-        __TBB_ASSERT_EX( ec!=WAIT_TIMEOUT&&ec!=ERROR_TIMEOUT, NULL );
-        lock.owns = true;
-        throw_exception_v4( tbb::internal::eid_condvar_wait_failed );
-    }
-    lock.owns = true;
-}
-
-inline cv_status condition_variable::wait_for( unique_lock<mutex>& lock, const tick_count::interval_t& i )
-{
-    cv_status rc = no_timeout;
-    __TBB_ASSERT( lock.owns, NULL );
-    lock.owns = false;
-    // condvar_wait could be SleepConditionVariableCS (or SleepConditionVariableSRW) or our own pre-vista cond_var_wait()
-    if( !internal_condition_variable_wait( my_cv, lock.mutex(), &i ) ) {
-        int ec = GetLastError();
-        if( ec==WAIT_TIMEOUT || ec==ERROR_TIMEOUT )
-            rc = timeout;
-        else {
-            lock.owns = true;
-            throw_exception_v4( tbb::internal::eid_condvar_wait_failed );
-        }
-    }
-    lock.owns = true;
-    return rc;
-}
-
-#else /* !(_WIN32||_WIN64) */
-inline void condition_variable::wait( unique_lock<mutex>& lock )
-{
-    __TBB_ASSERT( lock.owns, NULL );
-    lock.owns = false;
-    if( pthread_cond_wait( &my_cv, lock.mutex()->native_handle() ) ) {
-        lock.owns = true;
-        throw_exception_v4( tbb::internal::eid_condvar_wait_failed );
-    }
-    // upon successful return, the mutex has been locked and is owned by the calling thread.
-    lock.owns = true;
-}
-
-inline cv_status condition_variable::wait_for( unique_lock<mutex>& lock, const tick_count::interval_t& i )
-{
-#if __linux__
-    struct timespec req;
-    double sec = i.seconds();
-    clock_gettime( CLOCK_REALTIME, &req );
-    req.tv_sec  += static_cast<long>(sec);
-    req.tv_nsec += static_cast<long>( (sec - static_cast<long>(sec))*1e9 );
-#else /* generic Unix */
-    struct timeval tv;
-    struct timespec req;
-    double sec = i.seconds();
-    int status = gettimeofday(&tv, NULL);
-    __TBB_ASSERT_EX( status==0, "gettimeofday failed" );
-    req.tv_sec  = tv.tv_sec + static_cast<long>(sec);
-    req.tv_nsec = tv.tv_usec*1000 + static_cast<long>( (sec - static_cast<long>(sec))*1e9 );
-#endif /*(choice of OS) */
-
-    int ec;
-    cv_status rc = no_timeout;
-    __TBB_ASSERT( lock.owns, NULL );
-    lock.owns = false;
-    if( ( ec=pthread_cond_timedwait( &my_cv, lock.mutex()->native_handle(), &req ) ) ) {
-        if( ec==ETIMEDOUT )
-            rc = timeout;
-        else {
-            __TBB_ASSERT( lock.try_lock()==false, NULL );
-            lock.owns = true;
-            throw_exception_v4( tbb::internal::eid_condvar_wait_failed );
-        }
-    }
-    lock.owns = true;
-    return rc;
-}
-#endif /* !(_WIN32||_WIN64) */
-
-} // namespace interface5
-
-__TBB_DEFINE_PROFILING_SET_NAME(interface5::condition_variable)
-
-} // namespace tbb 
-
-#if TBB_IMPLEMENT_CPP0X
-
-namespace std {
-
-using tbb::interface5::defer_lock_t;
-using tbb::interface5::try_to_lock_t;
-using tbb::interface5::adopt_lock_t;
-using tbb::interface5::defer_lock;
-using tbb::interface5::try_to_lock;
-using tbb::interface5::adopt_lock;
-using tbb::interface5::lock_guard;
-using tbb::interface5::unique_lock;
-using tbb::interface5::swap;   /* this is for void std::swap(unique_lock<M>&,unique_lock<M>&) */
-using tbb::interface5::condition_variable;
-using tbb::interface5::cv_status;
-using tbb::interface5::timeout;
-using tbb::interface5::no_timeout;
-
-} // namespace std 
-
-#endif /* TBB_IMPLEMENT_CPP0X */
-
-#endif /* __TBB_condition_variable_H */
diff --git a/dependencies64/tbb/include/tbb/compat/ppl.h b/dependencies64/tbb/include/tbb/compat/ppl.h
deleted file mode 100644 (file)
index 6f93148..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_compat_ppl_H
-#define __TBB_compat_ppl_H
-
-#include "../task_group.h"
-#include "../parallel_invoke.h"
-#include "../parallel_for_each.h"
-#include "../parallel_for.h"
-#include "../tbb_exception.h"
-#include "../critical_section.h"
-#include "../reader_writer_lock.h"
-#include "../combinable.h"
-
-namespace Concurrency {
-
-#if __TBB_TASK_GROUP_CONTEXT
-    using tbb::task_handle;
-    using tbb::task_group_status;
-    using tbb::task_group;
-    using tbb::structured_task_group;
-    using tbb::invalid_multiple_scheduling;
-    using tbb::missing_wait;
-    using tbb::make_task;
-
-    using tbb::not_complete;
-    using tbb::complete;
-    using tbb::canceled;
-
-    using tbb::is_current_task_group_canceling;
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-    using tbb::parallel_invoke;
-    using tbb::strict_ppl::parallel_for;
-    using tbb::parallel_for_each;
-    using tbb::critical_section;
-    using tbb::reader_writer_lock;
-    using tbb::combinable;
-
-    using tbb::improper_lock;
-
-} // namespace Concurrency
-
-#endif /* __TBB_compat_ppl_H */
diff --git a/dependencies64/tbb/include/tbb/compat/thread b/dependencies64/tbb/include/tbb/compat/thread
deleted file mode 100644 (file)
index c4884ec..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_thread_H
-#define __TBB_thread_H
-
-#include "../tbb_thread.h"
-
-#if TBB_IMPLEMENT_CPP0X
-
-namespace std {
-
-typedef tbb::tbb_thread thread;
-
-namespace this_thread {
-    using tbb::this_tbb_thread::get_id;
-    using tbb::this_tbb_thread::yield;
-
-    inline void sleep_for(const tbb::tick_count::interval_t& rel_time) {
-        tbb::internal::thread_sleep_v3( rel_time );
-    }
-
-}
-
-}
-
-#endif /* TBB_IMPLEMENT_CPP0X */
-
-#endif /* __TBB_thread_H */
diff --git a/dependencies64/tbb/include/tbb/compat/tuple b/dependencies64/tbb/include/tbb/compat/tuple
deleted file mode 100644 (file)
index 3177a14..0000000
+++ /dev/null
@@ -1,406 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_tuple_H
-#define __TBB_tuple_H
-
-#if !TBB_PREVIEW_TUPLE
-#error Set TBB_PREVIEW_TUPLE to include compat/tuple
-#endif
-
-#include <utility>
-#include "../tbb_stddef.h"
-
-namespace tbb {
-namespace interface5 {
-namespace internal {
-struct null_type { };
-}
-using internal::null_type;
-
-// tuple forward declaration
-template <class T0=null_type, class T1=null_type, class T2=null_type, class T3=null_type, class T4=null_type, class T5=null_type, class T6=null_type, class T7=null_type, class T8=null_type, class T9=null_type>
-class tuple;
-
-namespace internal {
-
-// const null_type temp
-inline const null_type cnull() { return null_type(); }
-
-// cons forward declaration
-template <class HT, class TT> struct cons;
-
-// type of a component of the cons
-template<int N, class T>
-struct component {
-    typedef typename T::tail_type next;
-    typedef typename component<N-1,next>::type type;
-};
-
-template<class T>
-struct component<0,T> {
-    typedef typename T::head_type type;
-};
-
-template<>
-struct component<0,null_type> {
-    typedef null_type type;
-};
-
-// const version of component
-
-template<int N, class T>
-struct component<N, const T>
-{
-    typedef typename T::tail_type next;
-    typedef typename component<N-1,next>::type type;
-};
-
-template<class T>
-struct component<0, const T>
-{
-    typedef const typename T::head_type type;
-};
-
-
-// helper class for getting components of cons
-template< int N>
-struct get_helper {
-template<class HT, class TT>
-inline static typename component<N, cons<HT,TT> >::type& get(cons<HT,TT>& ti) {
-    return get_helper<N-1>::get(ti.tail);
-}
-};
-
-template<>
-struct get_helper<0> {
-template<class HT, class TT>
-inline static typename component<0, cons<HT,TT> >::type& get(cons<HT,TT>& ti) {
-    return ti.head;
-}
-};
-
-// traits adaptor
-template <class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9>
-struct tuple_traits {
-    typedef cons <T0, typename tuple_traits<T1, T2, T3, T4, T5, T6, T7, T8, T9, null_type>::U > U;
-};
-
-template <>
-struct tuple_traits<class T0, null_type, null_type, null_type, null_type, null_type, null_type, null_type, null_type, null_type> {
-    typedef cons<T0, null_type> U;
-};
-
-template<>
-struct tuple_traits<null_type, null_type, null_type, null_type, null_type, null_type, null_type, null_type, null_type, null_type> {
-    typedef null_type U;
-};
-
-
-// core cons defs
-template <class HT, class TT>
-struct cons{
-
-    typedef HT head_type;
-    typedef TT tail_type;
-
-    HT head; 
-    TT tail;
-
-    static const int length = 1 + tail_type::length;
-
-    // default constructors
-    explicit cons() : head(), tail() { }
-
-    // non-default constructors
-    cons(head_type& h, const tail_type& t) : head(h), tail(t) { }
-
-    template <class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9>
-    cons(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5, const T6& t6, const T7& t7, const T8& t8, const T9& t9) :
-        head(t0), tail(t1, t2, t3, t4, t5, t6, t7, t8, t9, cnull()) { }
-
-    template <class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9>
-    cons(T0& t0, T1& t1, T2& t2, T3& t3, T4& t4, T5& t5, T6& t6, T7& t7, T8& t8, T9& t9) :
-        head(t0), tail(t1, t2, t3, t4, t5, t6, t7, t8, t9, cnull()) { }
-
-    template <class HT1, class TT1>
-    cons(const cons<HT1,TT1>& other) : head(other.head), tail(other.tail) { }
-
-    cons& operator=(const cons& other) { head = other.head; tail = other.tail; return *this; }
-
-    friend bool operator==(const cons& me, const cons& other) {
-        return me.head == other.head && me.tail == other.tail;
-    }
-    friend bool operator<(const cons& me, const cons& other)  {
-        return me.head < other.head || (!(other.head < me.head) && me.tail < other.tail);
-    }
-    friend bool operator>(const cons& me, const cons& other)  { return other<me; }
-    friend bool operator!=(const cons& me, const cons& other) { return !(me==other); }
-    friend bool operator>=(const cons& me, const cons& other) { return !(me<other); }
-    friend bool operator<=(const cons& me, const cons& other) { return !(me>other); }
-
-    template<class HT1, class TT1>
-    friend bool operator==(const cons<HT,TT>& me, const cons<HT1,TT1>& other) {
-        return me.head == other.head && me.tail == other.tail;
-    }
-
-    template<class HT1, class TT1>
-    friend bool operator<(const cons<HT,TT>& me, const cons<HT1,TT1>& other) {
-        return me.head < other.head || (!(other.head < me.head) && me.tail < other.tail);
-    }
-
-    template<class HT1, class TT1>
-    friend bool operator>(const cons<HT,TT>& me, const cons<HT1,TT1>& other) { return other<me; }
-
-    template<class HT1, class TT1>
-    friend bool operator!=(const cons<HT,TT>& me, const cons<HT1,TT1>& other) { return !(me==other); }
-
-    template<class HT1, class TT1>
-    friend bool operator>=(const cons<HT,TT>& me, const cons<HT1,TT1>& other) { return !(me<other); }
-
-    template<class HT1, class TT1>
-    friend bool operator<=(const cons<HT,TT>& me, const cons<HT1,TT1>& other) { return !(me>other); }
-
-
-};  // cons
-
-
-template <class HT>
-struct cons<HT,null_type> { 
-
-    typedef HT head_type;
-    typedef null_type tail_type;
-    static const int length = 1;
-    head_type head; 
-
-    // default constructor
-    cons() : head() { /*std::cout << "default constructor 1\n";*/ }
-
-    cons(const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&) : head() { /*std::cout << "default constructor 2\n";*/ }
-
-    // non-default constructor
-    template<class T1>
-    cons(T1& t1, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type& ) : head(t1) { /*std::cout << "non-default a1, t1== " << t1 << "\n";*/}
-
-    cons(head_type& h, const null_type& = null_type() ) : head(h) { }
-    cons(const head_type& t0, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&) : head(t0) { }
-
-    // converting constructor
-    template<class HT1>
-    cons(HT1 h1, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&, const null_type&) : head(h1) { }
-
-    // copy constructor
-    template<class HT1>
-    cons( const cons<HT1, null_type>& other) : head(other.head) { }
-
-    // assignment operator
-    cons& operator=(const cons& other) { head = other.head; return *this; }
-
-    friend bool operator==(const cons& me, const cons& other) { return me.head == other.head; }
-    friend bool operator<(const cons& me, const cons& other) { return me.head < other.head; }
-    friend bool operator>(const cons& me, const cons& other) { return other<me; }
-    friend bool operator!=(const cons& me, const cons& other) {return !(me==other); }
-    friend bool operator<=(const cons& me, const cons& other) {return !(me>other); }
-    friend bool operator>=(const cons& me, const cons& other) {return !(me<other); }
-
-    template<class HT1>
-    friend bool operator==(const cons<HT,null_type>& me, const cons<HT1,null_type>& other) {
-        return me.head == other.head;
-    }
-
-    template<class HT1>
-    friend bool operator<(const cons<HT,null_type>& me, const cons<HT1,null_type>& other) {
-        return me.head < other.head;
-    }
-
-    template<class HT1>
-    friend bool operator>(const cons<HT,null_type>& me, const cons<HT1,null_type>& other) { return other<me; }
-
-    template<class HT1>
-    friend bool operator!=(const cons<HT,null_type>& me, const cons<HT1,null_type>& other) { return !(me==other); }
-
-    template<class HT1>
-    friend bool operator<=(const cons<HT,null_type>& me, const cons<HT1,null_type>& other) { return !(me>other); }
-
-    template<class HT1>
-    friend bool operator>=(const cons<HT,null_type>& me, const cons<HT1,null_type>& other) { return !(me<other); }
-
-};  // cons
-
-template <>
-struct cons<null_type,null_type> { typedef null_type tail_type; static const int length = 0; };
-
-// wrapper for default constructor
-template<class T>
-inline const T wrap_dcons(T*) { return T(); }
-} // namespace internal
-
-// tuple definition
-template<class T0, class T1, class T2, class T3, class T4, class T5, class T6, class T7, class T8, class T9>
-class tuple : public internal::tuple_traits<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9>::U {
-    // friends
-    template <class T> friend class tuple_size;
-    template<int N, class T> friend struct tuple_element;
-
-    // stl components
-    typedef tuple<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9> value_type;
-    typedef value_type *pointer;
-    typedef const value_type *const_pointer;
-    typedef value_type &reference;
-    typedef const value_type &const_reference;
-    typedef size_t size_type;
-
-    typedef typename internal::tuple_traits<T0,T1,T2,T3, T4, T5, T6, T7, T8, T9>::U my_cons;
-public:
-
-    tuple(const T0& t0=internal::wrap_dcons((T0*)NULL),
-          const T1& t1=internal::wrap_dcons((T1*)NULL),
-          const T2& t2=internal::wrap_dcons((T2*)NULL),
-          const T3& t3=internal::wrap_dcons((T3*)NULL),
-          const T4& t4=internal::wrap_dcons((T4*)NULL),
-          const T5& t5=internal::wrap_dcons((T5*)NULL),
-          const T6& t6=internal::wrap_dcons((T6*)NULL),
-          const T7& t7=internal::wrap_dcons((T7*)NULL),
-          const T8& t8=internal::wrap_dcons((T8*)NULL),
-          const T9& t9=internal::wrap_dcons((T9*)NULL)
-          ) :
-        internal::tuple_traits<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9>::U(t0,t1,t2,t3,t4,t5,t6,t7,t8,t9) { }
-
-    template<int N>
-    struct internal_tuple_element {
-        typedef typename internal::component<N,my_cons>::type type;
-    };
-
-    template<int N>
-    typename internal_tuple_element<N>::type& get() { return internal::get_helper<N>::get(*this); }
-
-    template<class U1, class U2>
-    tuple& operator=(const internal::cons<U1,U2>& other) {
-        my_cons::operator=(other);
-        return *this;
-    }
-
-    template<class U1, class U2>
-    tuple& operator=(const std::pair<U1,U2>& other) {
-        // __TBB_ASSERT(tuple_size<value_type>::value == 2, "Invalid size for pair to tuple assignment");
-        this->head = other.first;
-        this->tail.head = other.second;
-        return *this;
-    }
-
-    friend bool operator==(const tuple& me, const tuple& other) {return static_cast<const my_cons &>(me)==(other);}
-    friend bool operator<(const tuple& me,  const tuple& other) {return static_cast<const my_cons &>(me)<(other);}
-    friend bool operator>(const tuple& me,  const tuple& other) {return static_cast<const my_cons &>(me)>(other);}
-    friend bool operator!=(const tuple& me, const tuple& other) {return static_cast<const my_cons &>(me)!=(other);}
-    friend bool operator>=(const tuple& me, const tuple& other) {return static_cast<const my_cons &>(me)>=(other);}
-    friend bool operator<=(const tuple& me, const tuple& other) {return static_cast<const my_cons &>(me)<=(other);}
-
-    template<class U0, class U1, class U2, class U3, class U4, class U5, class U6, class U7, class U8, class U9>
-    friend bool operator==(const tuple& me, const tuple<U0,U1,U2,U3,U4,U5,U6,U7,U8,U9>& other) {
-        return static_cast<const my_cons &>(me)==(other);
-    }
-
-    template<class U0, class U1, class U2, class U3, class U4, class U5, class U6, class U7, class U8, class U9>
-    friend bool operator<(const tuple& me, const tuple<U0,U1,U2,U3,U4,U5,U6,U7,U8,U9>& other) {
-        return static_cast<const my_cons &>(me)<(other);
-    }
-
-    template<class U0, class U1, class U2, class U3, class U4, class U5, class U6, class U7, class U8, class U9>
-    friend bool operator>(const tuple& me, const tuple<U0,U1,U2,U3,U4,U5,U6,U7,U8,U9>& other) {
-        return static_cast<const my_cons &>(me)>(other);
-    }
-
-    template<class U0, class U1, class U2, class U3, class U4, class U5, class U6, class U7, class U8, class U9>
-    friend bool operator!=(const tuple& me, const tuple<U0,U1,U2,U3,U4,U5,U6,U7,U8,U9>& other) {
-        return static_cast<const my_cons &>(me)!=(other);
-    }
-
-    template<class U0, class U1, class U2, class U3, class U4, class U5, class U6, class U7, class U8, class U9>
-    friend bool operator>=(const tuple& me, const tuple<U0,U1,U2,U3,U4,U5,U6,U7,U8,U9>& other) {
-        return static_cast<const my_cons &>(me)>=(other);
-    }
-
-    template<class U0, class U1, class U2, class U3, class U4, class U5, class U6, class U7, class U8, class U9>
-    friend bool operator<=(const tuple& me, const tuple<U0,U1,U2,U3,U4,U5,U6,U7,U8,U9>& other) {
-        return static_cast<const my_cons &>(me)<=(other);
-    }
-
-};  // tuple
-
-// empty tuple
-template<>
-class tuple<null_type, null_type, null_type, null_type, null_type, null_type, null_type, null_type, null_type, null_type> : public null_type {
-    typedef null_type inherited;
-};
-
-// helper classes
-
-template < class T>
-class tuple_size {
-public:
-    static const size_t value = 1 + tuple_size<typename T::tail_type>::value;
-};
-
-template <>
-class tuple_size<tuple<> > { 
-public:
-    static const size_t value = 0;
-};
-
-template <>
-class tuple_size<null_type> {
-public:
-    static const size_t value = 0;
-};
-
-template<int N, class T>
-struct tuple_element {
-    typedef typename internal::component<N, typename T::my_cons>::type type;
-};
-
-template<int N, class T>
-inline static typename tuple_element<N,T>::type& get(T &t) { return t.get<N>(); }
-
-template<int N, class T>
-inline static typename tuple_element<N,T>::type const& get(T const &t) { return 
-    const_cast<typename tuple_element<N,T>::type const &>
-        (const_cast<T &>(t).get<N>()); }
-
-}  // interface5
-} // tbb
-
-#if TBB_IMPLEMENT_CPP0X
-namespace std {
-using tbb::interface5::tuple;
-using tbb::interface5::tuple_size;
-using tbb::interface5::tuple_element;
-using tbb::interface5::get;
-}
-#endif
-#endif /* __TBB_tuple_H */
diff --git a/dependencies64/tbb/include/tbb/concurrent_hash_map.h b/dependencies64/tbb/include/tbb/concurrent_hash_map.h
deleted file mode 100644 (file)
index ce589c9..0000000
+++ /dev/null
@@ -1,1336 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_concurrent_hash_map_H
-#define __TBB_concurrent_hash_map_H
-
-#include "tbb_stddef.h"
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <iterator>
-#include <utility>      // Need std::pair
-#include <cstring>      // Need std::memset
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-#include "cache_aligned_allocator.h"
-#include "tbb_allocator.h"
-#include "spin_rw_mutex.h"
-#include "atomic.h"
-#include "aligned_space.h"
-#include "tbb_exception.h"
-#include "tbb_profiling.h"
-#include "internal/_concurrent_unordered_impl.h" // Need tbb_hasher
-#if TBB_USE_PERFORMANCE_WARNINGS || __TBB_STATISTICS
-#include <typeinfo>
-#endif
-#if __TBB_STATISTICS
-#include <stdio.h>
-#endif
-
-namespace tbb {
-
-//! hash_compare that is default argument for concurrent_hash_map
-template<typename Key>
-struct tbb_hash_compare {
-    static size_t hash( const Key& a ) { return tbb_hasher(a); }
-    static bool equal( const Key& a, const Key& b ) { return a == b; }
-};
-
-namespace interface5 {
-
-    template<typename Key, typename T, typename HashCompare = tbb_hash_compare<Key>, typename A = tbb_allocator<std::pair<Key, T> > >
-    class concurrent_hash_map;
-
-    //! @cond INTERNAL
-    namespace internal {
-
-
-    //! Type of a hash code.
-    typedef size_t hashcode_t;
-    //! Node base type
-    struct hash_map_node_base : tbb::internal::no_copy {
-        //! Mutex type
-        typedef spin_rw_mutex mutex_t;
-        //! Scoped lock type for mutex
-        typedef mutex_t::scoped_lock scoped_t;
-        //! Next node in chain
-        hash_map_node_base *next;
-        mutex_t mutex;
-    };
-    //! Incompleteness flag value
-    static hash_map_node_base *const rehash_req = reinterpret_cast<hash_map_node_base*>(size_t(3));
-    //! Rehashed empty bucket flag
-    static hash_map_node_base *const empty_rehashed = reinterpret_cast<hash_map_node_base*>(size_t(0));
-    //! base class of concurrent_hash_map
-    class hash_map_base {
-    public:
-        //! Size type
-        typedef size_t size_type;
-        //! Type of a hash code.
-        typedef size_t hashcode_t;
-        //! Segment index type
-        typedef size_t segment_index_t;
-        //! Node base type
-        typedef hash_map_node_base node_base;
-        //! Bucket type
-        struct bucket : tbb::internal::no_copy {
-            //! Mutex type for buckets
-            typedef spin_rw_mutex mutex_t;
-            //! Scoped lock type for mutex
-            typedef mutex_t::scoped_lock scoped_t;
-            mutex_t mutex;
-            node_base *node_list;
-        };
-        //! Count of segments in the first block
-        static size_type const embedded_block = 1;
-        //! Count of segments in the first block
-        static size_type const embedded_buckets = 1<<embedded_block;
-        //! Count of segments in the first block
-        static size_type const first_block = 8; //including embedded_block. perfect with bucket size 16, so the allocations are power of 4096
-        //! Size of a pointer / table size
-        static size_type const pointers_per_table = sizeof(segment_index_t) * 8; // one segment per bit
-        //! Segment pointer
-        typedef bucket *segment_ptr_t;
-        //! Segment pointers table type
-        typedef segment_ptr_t segments_table_t[pointers_per_table];
-        //! Hash mask = sum of allocated segment sizes - 1
-        atomic<hashcode_t> my_mask;
-        //! Segment pointers table. Also prevents false sharing between my_mask and my_size
-        segments_table_t my_table;
-        //! Size of container in stored items
-        atomic<size_type> my_size; // It must be in separate cache line from my_mask due to performance effects
-        //! Zero segment
-        bucket my_embedded_segment[embedded_buckets];
-#if __TBB_STATISTICS
-        atomic<unsigned> my_info_resizes; // concurrent ones
-        mutable atomic<unsigned> my_info_restarts; // race collisions
-        atomic<unsigned> my_info_rehashes;  // invocations of rehash_bucket
-#endif
-        //! Constructor
-        hash_map_base() {
-            std::memset( this, 0, pointers_per_table*sizeof(segment_ptr_t) // 32*4=128   or 64*8=512
-                + sizeof(my_size) + sizeof(my_mask)  // 4+4 or 8+8
-                + embedded_buckets*sizeof(bucket) ); // n*8 or n*16
-            for( size_type i = 0; i < embedded_block; i++ ) // fill the table
-                my_table[i] = my_embedded_segment + segment_base(i);
-            my_mask = embedded_buckets - 1;
-            __TBB_ASSERT( embedded_block <= first_block, "The first block number must include embedded blocks");
-#if __TBB_STATISTICS
-            my_info_resizes = 0; // concurrent ones
-            my_info_restarts = 0; // race collisions
-            my_info_rehashes = 0;  // invocations of rehash_bucket
-#endif
-        }
-
-        //! @return segment index of given index in the array
-        static segment_index_t segment_index_of( size_type index ) {
-            return segment_index_t( __TBB_Log2( index|1 ) );
-        }
-
-        //! @return the first array index of given segment
-        static segment_index_t segment_base( segment_index_t k ) {
-            return (segment_index_t(1)<<k & ~segment_index_t(1));
-        }
-
-        //! @return segment size except for @arg k == 0
-        static size_type segment_size( segment_index_t k ) {
-            return size_type(1)<<k; // fake value for k==0
-        }
-        
-        //! @return true if @arg ptr is valid pointer
-        static bool is_valid( void *ptr ) {
-            return reinterpret_cast<size_t>(ptr) > size_t(63);
-        }
-
-        //! Initialize buckets
-        static void init_buckets( segment_ptr_t ptr, size_type sz, bool is_initial ) {
-            if( is_initial ) std::memset(ptr, 0, sz*sizeof(bucket) );
-            else for(size_type i = 0; i < sz; i++, ptr++) {
-                    *reinterpret_cast<intptr_t*>(&ptr->mutex) = 0;
-                    ptr->node_list = rehash_req;
-                }
-        }
-        
-        //! Add node @arg n to bucket @arg b
-        static void add_to_bucket( bucket *b, node_base *n ) {
-            __TBB_ASSERT(b->node_list != rehash_req, NULL);
-            n->next = b->node_list;
-            b->node_list = n; // its under lock and flag is set
-        }
-
-        //! Exception safety helper
-        struct enable_segment_failsafe {
-            segment_ptr_t *my_segment_ptr;
-            enable_segment_failsafe(segments_table_t &table, segment_index_t k) : my_segment_ptr(&table[k]) {}
-            ~enable_segment_failsafe() {
-                if( my_segment_ptr ) *my_segment_ptr = 0; // indicate no allocation in progress
-            }
-        };
-
-        //! Enable segment
-        void enable_segment( segment_index_t k, bool is_initial = false ) {
-            __TBB_ASSERT( k, "Zero segment must be embedded" );
-            enable_segment_failsafe watchdog( my_table, k );
-            cache_aligned_allocator<bucket> alloc;
-            size_type sz;
-            __TBB_ASSERT( !is_valid(my_table[k]), "Wrong concurrent assignment");
-            if( k >= first_block ) {
-                sz = segment_size( k );
-                segment_ptr_t ptr = alloc.allocate( sz );
-                init_buckets( ptr, sz, is_initial );
-                itt_hide_store_word( my_table[k], ptr );
-                sz <<= 1;// double it to get entire capacity of the container
-            } else { // the first block
-                __TBB_ASSERT( k == embedded_block, "Wrong segment index" );
-                sz = segment_size( first_block );
-                segment_ptr_t ptr = alloc.allocate( sz - embedded_buckets );
-                init_buckets( ptr, sz - embedded_buckets, is_initial );
-                ptr -= segment_base(embedded_block);
-                for(segment_index_t i = embedded_block; i < first_block; i++) // calc the offsets
-                    itt_hide_store_word( my_table[i], ptr + segment_base(i) );
-            }
-            itt_store_word_with_release( my_mask, sz-1 );
-            watchdog.my_segment_ptr = 0;
-        }
-
-        //! Get bucket by (masked) hashcode
-        bucket *get_bucket( hashcode_t h ) const throw() { // TODO: add throw() everywhere?
-            segment_index_t s = segment_index_of( h );
-            h -= segment_base(s);
-            segment_ptr_t seg = my_table[s];
-            __TBB_ASSERT( is_valid(seg), "hashcode must be cut by valid mask for allocated segments" );
-            return &seg[h];
-        }
-
-        // internal serial rehashing helper
-        void mark_rehashed_levels( hashcode_t h ) throw () {
-            segment_index_t s = segment_index_of( h );
-            while( segment_ptr_t seg = my_table[++s] )
-                if( seg[h].node_list == rehash_req ) {
-                    seg[h].node_list = empty_rehashed;
-                    mark_rehashed_levels( h + ((hashcode_t)1<<s) ); // optimized segment_base(s)
-                }
-        }
-
-        //! Check for mask race
-        // Splitting into two functions should help inlining
-        inline bool check_mask_race( const hashcode_t h, hashcode_t &m ) const {
-            hashcode_t m_now, m_old = m;
-            m_now = (hashcode_t) itt_load_word_with_acquire( my_mask );
-            if( m_old != m_now )
-                return check_rehashing_collision( h, m_old, m = m_now );
-            return false;
-        }
-
-        //! Process mask race, check for rehashing collision
-        bool check_rehashing_collision( const hashcode_t h, hashcode_t m_old, hashcode_t m ) const {
-            __TBB_ASSERT(m_old != m, NULL); // TODO?: m arg could be optimized out by passing h = h&m
-            if( (h & m_old) != (h & m) ) { // mask changed for this hashcode, rare event
-                // condition above proves that 'h' has some other bits set beside 'm_old'
-                // find next applicable mask after m_old    //TODO: look at bsl instruction
-                for( ++m_old; !(h & m_old); m_old <<= 1 ) // at maximum few rounds depending on the first block size
-                    ;
-                m_old = (m_old<<1) - 1; // get full mask from a bit
-                __TBB_ASSERT((m_old&(m_old+1))==0 && m_old <= m, NULL);
-                // check whether it is rehashing/ed
-                if( itt_load_word_with_acquire(get_bucket(h & m_old)->node_list) != rehash_req )
-                {
-#if __TBB_STATISTICS
-                    my_info_restarts++; // race collisions
-#endif
-                    return true;
-                }
-            }
-            return false;
-        }
-
-        //! Insert a node and check for load factor. @return segment index to enable.
-        segment_index_t insert_new_node( bucket *b, node_base *n, hashcode_t mask ) {
-            size_type sz = ++my_size; // prefix form is to enforce allocation after the first item inserted
-            add_to_bucket( b, n );
-            // check load factor
-            if( sz >= mask ) { // TODO: add custom load_factor 
-                segment_index_t new_seg = __TBB_Log2( mask+1 ); //optimized segment_index_of
-                __TBB_ASSERT( is_valid(my_table[new_seg-1]), "new allocations must not publish new mask until segment has allocated");
-                if( !itt_hide_load_word(my_table[new_seg])
-                  && __TBB_CompareAndSwapW(&my_table[new_seg], 2, 0) == 0 )
-                    return new_seg; // The value must be processed
-            }
-            return 0;
-        }
-
-        //! Prepare enough segments for number of buckets
-        void reserve(size_type buckets) {
-            if( !buckets-- ) return;
-            bool is_initial = !my_size;
-            for( size_type m = my_mask; buckets > m; m = my_mask )
-                enable_segment( segment_index_of( m+1 ), is_initial );
-        }
-        //! Swap hash_map_bases
-        void internal_swap(hash_map_base &table) {
-            std::swap(this->my_mask, table.my_mask);
-            std::swap(this->my_size, table.my_size);
-            for(size_type i = 0; i < embedded_buckets; i++)
-                std::swap(this->my_embedded_segment[i].node_list, table.my_embedded_segment[i].node_list);
-            for(size_type i = embedded_block; i < pointers_per_table; i++)
-                std::swap(this->my_table[i], table.my_table[i]);
-        }
-    };
-
-    template<typename Iterator>
-    class hash_map_range;
-
-    //! Meets requirements of a forward iterator for STL */
-    /** Value is either the T or const T type of the container.
-        @ingroup containers */ 
-    template<typename Container, typename Value>
-    class hash_map_iterator
-        : public std::iterator<std::forward_iterator_tag,Value>
-    {
-        typedef Container map_type;
-        typedef typename Container::node node;
-        typedef hash_map_base::node_base node_base;
-        typedef hash_map_base::bucket bucket;
-
-        template<typename C, typename T, typename U>
-        friend bool operator==( const hash_map_iterator<C,T>& i, const hash_map_iterator<C,U>& j );
-
-        template<typename C, typename T, typename U>
-        friend bool operator!=( const hash_map_iterator<C,T>& i, const hash_map_iterator<C,U>& j );
-
-        template<typename C, typename T, typename U>
-        friend ptrdiff_t operator-( const hash_map_iterator<C,T>& i, const hash_map_iterator<C,U>& j );
-    
-        template<typename C, typename U>
-        friend class hash_map_iterator;
-
-        template<typename I>
-        friend class hash_map_range;
-
-        void advance_to_next_bucket() { // TODO?: refactor to iterator_base class
-            size_t k = my_index+1;
-            while( my_bucket && k <= my_map->my_mask ) {
-                // Following test uses 2's-complement wizardry
-                if( k& (k-2) ) // not the beginning of a segment
-                    ++my_bucket;
-                else my_bucket = my_map->get_bucket( k );
-                my_node = static_cast<node*>( my_bucket->node_list );
-                if( hash_map_base::is_valid(my_node) ) {
-                    my_index = k; return;
-                }
-                ++k;
-            }
-            my_bucket = 0; my_node = 0; my_index = k; // the end
-        }
-#if !defined(_MSC_VER) || defined(__INTEL_COMPILER)
-        template<typename Key, typename T, typename HashCompare, typename A>
-        friend class interface5::concurrent_hash_map;
-#else
-    public: // workaround
-#endif
-        //! concurrent_hash_map over which we are iterating.
-        const Container *my_map;
-
-        //! Index in hash table for current item
-        size_t my_index;
-
-        //! Pointer to bucket
-        const bucket *my_bucket;
-
-        //! Pointer to node that has current item
-        node *my_node;
-
-        hash_map_iterator( const Container &map, size_t index, const bucket *b, node_base *n );
-
-    public:
-        //! Construct undefined iterator
-        hash_map_iterator() {}
-        hash_map_iterator( const hash_map_iterator<Container,typename Container::value_type> &other ) :
-            my_map(other.my_map),
-            my_index(other.my_index),
-            my_bucket(other.my_bucket),
-            my_node(other.my_node)
-        {}
-        Value& operator*() const {
-            __TBB_ASSERT( hash_map_base::is_valid(my_node), "iterator uninitialized or at end of container?" );
-            return my_node->item;
-        }
-        Value* operator->() const {return &operator*();}
-        hash_map_iterator& operator++();
-        
-        //! Post increment
-        hash_map_iterator operator++(int) {
-            hash_map_iterator old(*this);
-            operator++();
-            return old;
-        }
-    };
-
-    template<typename Container, typename Value>
-    hash_map_iterator<Container,Value>::hash_map_iterator( const Container &map, size_t index, const bucket *b, node_base *n ) :
-        my_map(&map),
-        my_index(index),
-        my_bucket(b),
-        my_node( static_cast<node*>(n) )
-    {
-        if( b && !hash_map_base::is_valid(n) )
-            advance_to_next_bucket();
-    }
-
-    template<typename Container, typename Value>
-    hash_map_iterator<Container,Value>& hash_map_iterator<Container,Value>::operator++() {
-        my_node = static_cast<node*>( my_node->next );
-        if( !my_node ) advance_to_next_bucket();
-        return *this;
-    }
-
-    template<typename Container, typename T, typename U>
-    bool operator==( const hash_map_iterator<Container,T>& i, const hash_map_iterator<Container,U>& j ) {
-        return i.my_node == j.my_node && i.my_map == j.my_map;
-    }
-
-    template<typename Container, typename T, typename U>
-    bool operator!=( const hash_map_iterator<Container,T>& i, const hash_map_iterator<Container,U>& j ) {
-        return i.my_node != j.my_node || i.my_map != j.my_map;
-    }
-
-    //! Range class used with concurrent_hash_map
-    /** @ingroup containers */ 
-    template<typename Iterator>
-    class hash_map_range {
-        typedef typename Iterator::map_type map_type;
-        Iterator my_begin;
-        Iterator my_end;
-        mutable Iterator my_midpoint;
-        size_t my_grainsize;
-        //! Set my_midpoint to point approximately half way between my_begin and my_end.
-        void set_midpoint() const;
-        template<typename U> friend class hash_map_range;
-    public:
-        //! Type for size of a range
-        typedef std::size_t size_type;
-        typedef typename Iterator::value_type value_type;
-        typedef typename Iterator::reference reference;
-        typedef typename Iterator::difference_type difference_type;
-        typedef Iterator iterator;
-
-        //! True if range is empty.
-        bool empty() const {return my_begin==my_end;}
-
-        //! True if range can be partitioned into two subranges.
-        bool is_divisible() const {
-            return my_midpoint!=my_end;
-        }
-        //! Split range.
-        hash_map_range( hash_map_range& r, split ) : 
-            my_end(r.my_end),
-            my_grainsize(r.my_grainsize)
-        {
-            r.my_end = my_begin = r.my_midpoint;
-            __TBB_ASSERT( !empty(), "Splitting despite the range is not divisible" );
-            __TBB_ASSERT( !r.empty(), "Splitting despite the range is not divisible" );
-            set_midpoint();
-            r.set_midpoint();
-        }
-        //! type conversion
-        template<typename U>
-        hash_map_range( hash_map_range<U>& r) : 
-            my_begin(r.my_begin),
-            my_end(r.my_end),
-            my_midpoint(r.my_midpoint),
-            my_grainsize(r.my_grainsize)
-        {}
-#if TBB_DEPRECATED
-        //! Init range with iterators and grainsize specified
-        hash_map_range( const Iterator& begin_, const Iterator& end_, size_type grainsize_ = 1 ) : 
-            my_begin(begin_), 
-            my_end(end_),
-            my_grainsize(grainsize_)
-        {
-            if(!my_end.my_index && !my_end.my_bucket) // end
-                my_end.my_index = my_end.my_map->my_mask + 1;
-            set_midpoint();
-            __TBB_ASSERT( grainsize_>0, "grainsize must be positive" );
-        }
-#endif
-        //! Init range with container and grainsize specified
-        hash_map_range( const map_type &map, size_type grainsize_ = 1 ) : 
-            my_begin( Iterator( map, 0, map.my_embedded_segment, map.my_embedded_segment->node_list ) ),
-            my_end( Iterator( map, map.my_mask + 1, 0, 0 ) ),
-            my_grainsize( grainsize_ )
-        {
-            __TBB_ASSERT( grainsize_>0, "grainsize must be positive" );
-            set_midpoint();
-        }
-        const Iterator& begin() const {return my_begin;}
-        const Iterator& end() const {return my_end;}
-        //! The grain size for this range.
-        size_type grainsize() const {return my_grainsize;}
-    };
-
-    template<typename Iterator>
-    void hash_map_range<Iterator>::set_midpoint() const {
-        // Split by groups of nodes
-        size_t m = my_end.my_index-my_begin.my_index;
-        if( m > my_grainsize ) {
-            m = my_begin.my_index + m/2u;
-            hash_map_base::bucket *b = my_begin.my_map->get_bucket(m);
-            my_midpoint = Iterator(*my_begin.my_map,m,b,b->node_list);
-        } else {
-            my_midpoint = my_end;
-        }
-        __TBB_ASSERT( my_begin.my_index <= my_midpoint.my_index,
-            "my_begin is after my_midpoint" );
-        __TBB_ASSERT( my_midpoint.my_index <= my_end.my_index,
-            "my_midpoint is after my_end" );
-        __TBB_ASSERT( my_begin != my_midpoint || my_begin == my_end,
-            "[my_begin, my_midpoint) range should not be empty" );
-    }
-
-    } // internal
-//! @endcond
-
-//! Unordered map from Key to T.
-/** concurrent_hash_map is associative container with concurrent access.
-
-@par Compatibility
-    The class meets all Container Requirements from C++ Standard (See ISO/IEC 14882:2003(E), clause 23.1).
-
-@par Exception Safety
-    - Hash function is not permitted to throw an exception. User-defined types Key and T are forbidden from throwing an exception in destructors.
-    - If exception happens during insert() operations, it has no effect (unless exception raised by HashCompare::hash() function during grow_segment).
-    - If exception happens during operator=() operation, the container can have a part of source items, and methods size() and empty() can return wrong results.
-
-@par Changes since TBB 2.1
-    - Replaced internal algorithm and data structure. Patent is pending.
-    - Added buckets number argument for constructor
-
-@par Changes since TBB 2.0
-    - Fixed exception-safety
-    - Added template argument for allocator
-    - Added allocator argument in constructors
-    - Added constructor from a range of iterators
-    - Added several new overloaded insert() methods
-    - Added get_allocator()
-    - Added swap()
-    - Added count()
-    - Added overloaded erase(accessor &) and erase(const_accessor&)
-    - Added equal_range() [const]
-    - Added [const_]pointer, [const_]reference, and allocator_type types
-    - Added global functions: operator==(), operator!=(), and swap() 
-
-    @ingroup containers */
-template<typename Key, typename T, typename HashCompare, typename Allocator>
-class concurrent_hash_map : protected internal::hash_map_base {
-    template<typename Container, typename Value>
-    friend class internal::hash_map_iterator;
-
-    template<typename I>
-    friend class internal::hash_map_range;
-
-public:
-    typedef Key key_type;
-    typedef T mapped_type;
-    typedef std::pair<const Key,T> value_type;
-    typedef hash_map_base::size_type size_type;
-    typedef ptrdiff_t difference_type;
-    typedef value_type *pointer;
-    typedef const value_type *const_pointer;
-    typedef value_type &reference;
-    typedef const value_type &const_reference;
-    typedef internal::hash_map_iterator<concurrent_hash_map,value_type> iterator;
-    typedef internal::hash_map_iterator<concurrent_hash_map,const value_type> const_iterator;
-    typedef internal::hash_map_range<iterator> range_type;
-    typedef internal::hash_map_range<const_iterator> const_range_type;
-    typedef Allocator allocator_type;
-
-protected:
-    friend class const_accessor;
-    struct node;
-    typedef typename Allocator::template rebind<node>::other node_allocator_type;
-    node_allocator_type my_allocator;
-    HashCompare my_hash_compare;
-
-    struct node : public node_base {
-        value_type item;
-        node( const Key &key ) : item(key, T()) {}
-        node( const Key &key, const T &t ) : item(key, t) {}
-        // exception-safe allocation, see C++ Standard 2003, clause 5.3.4p17
-        void *operator new( size_t /*size*/, node_allocator_type &a ) {
-            void *ptr = a.allocate(1);
-            if(!ptr) 
-                tbb::internal::throw_exception(tbb::internal::eid_bad_alloc);
-            return ptr;
-        }
-        // match placement-new form above to be called if exception thrown in constructor
-        void operator delete( void *ptr, node_allocator_type &a ) {return a.deallocate(static_cast<node*>(ptr),1); }
-    };
-
-    void delete_node( node_base *n ) {
-        my_allocator.destroy( static_cast<node*>(n) );
-        my_allocator.deallocate( static_cast<node*>(n), 1);
-    }
-
-    node *search_bucket( const key_type &key, bucket *b ) const {
-        node *n = static_cast<node*>( b->node_list );
-        while( is_valid(n) && !my_hash_compare.equal(key, n->item.first) )
-            n = static_cast<node*>( n->next );
-        __TBB_ASSERT(n != internal::rehash_req, "Search can be executed only for rehashed bucket");
-        return n;
-    }
-
-    //! bucket accessor is to find, rehash, acquire a lock, and access a bucket
-    class bucket_accessor : public bucket::scoped_t {
-        bucket *my_b;
-    public:
-        bucket_accessor( concurrent_hash_map *base, const hashcode_t h, bool writer = false ) { acquire( base, h, writer ); }
-        //! find a bucket by masked hashcode, optionally rehash, and acquire the lock
-        inline void acquire( concurrent_hash_map *base, const hashcode_t h, bool writer = false ) {
-            my_b = base->get_bucket( h );
-            // TODO: actually, notification is unnecessary here, just hiding double-check
-            if( itt_load_word_with_acquire(my_b->node_list) == internal::rehash_req
-                && try_acquire( my_b->mutex, /*write=*/true ) )
-            {
-                if( my_b->node_list == internal::rehash_req ) base->rehash_bucket( my_b, h ); //recursive rehashing
-            }
-            else bucket::scoped_t::acquire( my_b->mutex, writer );
-            __TBB_ASSERT( my_b->node_list != internal::rehash_req, NULL);
-        }
-        //! check whether bucket is locked for write
-        bool is_writer() { return bucket::scoped_t::is_writer; }
-        //! get bucket pointer
-        bucket *operator() () { return my_b; }
-    };
-
-    // TODO refactor to hash_base
-    void rehash_bucket( bucket *b_new, const hashcode_t h ) {
-        __TBB_ASSERT( *(intptr_t*)(&b_new->mutex), "b_new must be locked (for write)");
-        __TBB_ASSERT( h > 1, "The lowermost buckets can't be rehashed" );
-        __TBB_store_with_release(b_new->node_list, internal::empty_rehashed); // mark rehashed
-        hashcode_t mask = ( 1u<<__TBB_Log2( h ) ) - 1; // get parent mask from the topmost bit
-#if __TBB_STATISTICS
-        my_info_rehashes++; // invocations of rehash_bucket
-#endif
-
-        bucket_accessor b_old( this, h & mask );
-
-        mask = (mask<<1) | 1; // get full mask for new bucket
-        __TBB_ASSERT( (mask&(mask+1))==0 && (h & mask) == h, NULL );
-    restart:
-        for( node_base **p = &b_old()->node_list, *n = __TBB_load_with_acquire(*p); is_valid(n); n = *p ) {
-            hashcode_t c = my_hash_compare.hash( static_cast<node*>(n)->item.first );
-#if TBB_USE_ASSERT
-            hashcode_t bmask = h & (mask>>1);
-            bmask = bmask==0? 1 : ( 1u<<(__TBB_Log2( bmask )+1 ) ) - 1; // minimal mask of parent bucket
-            __TBB_ASSERT( (c & bmask) == (h & bmask), "hash() function changed for key in table" );
-#endif
-            if( (c & mask) == h ) {
-                if( !b_old.is_writer() )
-                    if( !b_old.upgrade_to_writer() ) {
-                        goto restart; // node ptr can be invalid due to concurrent erase
-                    }
-                *p = n->next; // exclude from b_old
-                add_to_bucket( b_new, n );
-            } else p = &n->next; // iterate to next item
-        }
-    }
-
-public:
-    
-    class accessor;
-    //! Combines data access, locking, and garbage collection.
-    class const_accessor : private node::scoped_t /*which derived from no_copy*/ {
-        friend class concurrent_hash_map<Key,T,HashCompare,Allocator>;
-        friend class accessor;
-    public:
-        //! Type of value
-        typedef const typename concurrent_hash_map::value_type value_type;
-
-        //! True if result is empty.
-        bool empty() const {return !my_node;}
-
-        //! Set to null
-        void release() {
-            if( my_node ) {
-                node::scoped_t::release();
-                my_node = 0;
-            }
-        }
-
-        //! Return reference to associated value in hash table.
-        const_reference operator*() const {
-            __TBB_ASSERT( my_node, "attempt to dereference empty accessor" );
-            return my_node->item;
-        }
-
-        //! Return pointer to associated value in hash table.
-        const_pointer operator->() const {
-            return &operator*();
-        }
-
-        //! Create empty result
-        const_accessor() : my_node(NULL) {}
-
-        //! Destroy result after releasing the underlying reference.
-        ~const_accessor() {
-            my_node = NULL; // scoped lock's release() is called in its destructor
-        }
-    protected:
-        bool is_writer() { return node::scoped_t::is_writer; }
-        node *my_node;
-        hashcode_t my_hash;
-    };
-
-    //! Allows write access to elements and combines data access, locking, and garbage collection.
-    class accessor: public const_accessor {
-    public:
-        //! Type of value
-        typedef typename concurrent_hash_map::value_type value_type;
-
-        //! Return reference to associated value in hash table.
-        reference operator*() const {
-            __TBB_ASSERT( this->my_node, "attempt to dereference empty accessor" );
-            return this->my_node->item;
-        }
-
-        //! Return pointer to associated value in hash table.
-        pointer operator->() const {
-            return &operator*();
-        }
-    };
-
-    //! Construct empty table.
-    concurrent_hash_map(const allocator_type &a = allocator_type())
-        : internal::hash_map_base(), my_allocator(a)
-    {}
-
-    //! Construct empty table with n preallocated buckets. This number serves also as initial concurrency level.
-    concurrent_hash_map(size_type n, const allocator_type &a = allocator_type())
-        : my_allocator(a)
-    {
-        reserve( n );
-    }
-
-    //! Copy constructor
-    concurrent_hash_map( const concurrent_hash_map& table, const allocator_type &a = allocator_type())
-        : internal::hash_map_base(), my_allocator(a)
-    {
-        internal_copy(table);
-    }
-
-    //! Construction with copying iteration range and given allocator instance
-    template<typename I>
-    concurrent_hash_map(I first, I last, const allocator_type &a = allocator_type())
-        : my_allocator(a)
-    {
-        reserve( std::distance(first, last) ); // TODO: load_factor?
-        internal_copy(first, last);
-    }
-
-    //! Assignment
-    concurrent_hash_map& operator=( const concurrent_hash_map& table ) {
-        if( this!=&table ) {
-            clear();
-            internal_copy(table);
-        } 
-        return *this;
-    }
-
-
-    //! Rehashes and optionally resizes the whole table.
-    /** Useful to optimize performance before or after concurrent operations.
-        Also enables using of find() and count() concurrent methods in serial context. */
-    void rehash(size_type n = 0);
-    
-    //! Clear table
-    void clear();
-
-    //! Clear table and destroy it.  
-    ~concurrent_hash_map() { clear(); }
-
-    //------------------------------------------------------------------------
-    // Parallel algorithm support
-    //------------------------------------------------------------------------
-    range_type range( size_type grainsize=1 ) {
-        return range_type( *this, grainsize );
-    }
-    const_range_type range( size_type grainsize=1 ) const {
-        return const_range_type( *this, grainsize );
-    }
-
-    //------------------------------------------------------------------------
-    // STL support - not thread-safe methods
-    //------------------------------------------------------------------------
-    iterator begin() {return iterator(*this,0,my_embedded_segment,my_embedded_segment->node_list);}
-    iterator end() {return iterator(*this,0,0,0);}
-    const_iterator begin() const {return const_iterator(*this,0,my_embedded_segment,my_embedded_segment->node_list);}
-    const_iterator end() const {return const_iterator(*this,0,0,0);}
-    std::pair<iterator, iterator> equal_range( const Key& key ) { return internal_equal_range(key, end()); }
-    std::pair<const_iterator, const_iterator> equal_range( const Key& key ) const { return internal_equal_range(key, end()); }
-    
-    //! Number of items in table.
-    size_type size() const { return my_size; }
-
-    //! True if size()==0.
-    bool empty() const { return my_size == 0; }
-
-    //! Upper bound on size.
-    size_type max_size() const {return (~size_type(0))/sizeof(node);}
-
-    //! Returns the current number of buckets
-    size_type bucket_count() const { return my_mask+1; }
-
-    //! return allocator object
-    allocator_type get_allocator() const { return this->my_allocator; }
-
-    //! swap two instances. Iterators are invalidated
-    void swap(concurrent_hash_map &table);
-
-    //------------------------------------------------------------------------
-    // concurrent map operations
-    //------------------------------------------------------------------------
-
-    //! Return count of items (0 or 1)
-    size_type count( const Key &key ) const {
-        return const_cast<concurrent_hash_map*>(this)->lookup(/*insert*/false, key, NULL, NULL, /*write=*/false );
-    }
-
-    //! Find item and acquire a read lock on the item.
-    /** Return true if item is found, false otherwise. */
-    bool find( const_accessor &result, const Key &key ) const {
-        result.release();
-        return const_cast<concurrent_hash_map*>(this)->lookup(/*insert*/false, key, NULL, &result, /*write=*/false );
-    }
-
-    //! Find item and acquire a write lock on the item.
-    /** Return true if item is found, false otherwise. */
-    bool find( accessor &result, const Key &key ) {
-        result.release();
-        return lookup(/*insert*/false, key, NULL, &result, /*write=*/true );
-    }
-        
-    //! Insert item (if not already present) and acquire a read lock on the item.
-    /** Returns true if item is new. */
-    bool insert( const_accessor &result, const Key &key ) {
-        result.release();
-        return lookup(/*insert*/true, key, NULL, &result, /*write=*/false );
-    }
-
-    //! Insert item (if not already present) and acquire a write lock on the item.
-    /** Returns true if item is new. */
-    bool insert( accessor &result, const Key &key ) {
-        result.release();
-        return lookup(/*insert*/true, key, NULL, &result, /*write=*/true );
-    }
-
-    //! Insert item by copying if there is no such key present already and acquire a read lock on the item.
-    /** Returns true if item is new. */
-    bool insert( const_accessor &result, const value_type &value ) {
-        result.release();
-        return lookup(/*insert*/true, value.first, &value.second, &result, /*write=*/false );
-    }
-
-    //! Insert item by copying if there is no such key present already and acquire a write lock on the item.
-    /** Returns true if item is new. */
-    bool insert( accessor &result, const value_type &value ) {
-        result.release();
-        return lookup(/*insert*/true, value.first, &value.second, &result, /*write=*/true );
-    }
-
-    //! Insert item by copying if there is no such key present already
-    /** Returns true if item is inserted. */
-    bool insert( const value_type &value ) {
-        return lookup(/*insert*/true, value.first, &value.second, NULL, /*write=*/false );
-    }
-
-    //! Insert range [first, last)
-    template<typename I>
-    void insert(I first, I last) {
-        for(; first != last; ++first)
-            insert( *first );
-    }
-
-    //! Erase item.
-    /** Return true if item was erased by particularly this call. */
-    bool erase( const Key& key );
-
-    //! Erase item by const_accessor.
-    /** Return true if item was erased by particularly this call. */
-    bool erase( const_accessor& item_accessor ) {
-        return exclude( item_accessor );
-    }
-
-    //! Erase item by accessor.
-    /** Return true if item was erased by particularly this call. */
-    bool erase( accessor& item_accessor ) {
-        return exclude( item_accessor );
-    }
-
-protected:
-    //! Insert or find item and optionally acquire a lock on the item.
-    bool lookup( bool op_insert, const Key &key, const T *t, const_accessor *result, bool write );
-
-    //! delete item by accessor
-    bool exclude( const_accessor &item_accessor );
-
-    //! Returns an iterator for an item defined by the key, or for the next item after it (if upper==true)
-    template<typename I>
-    std::pair<I, I> internal_equal_range( const Key& key, I end ) const;
-
-    //! Copy "source" to *this, where *this must start out empty.
-    void internal_copy( const concurrent_hash_map& source );
-
-    template<typename I>
-    void internal_copy(I first, I last);
-
-    //! Fast find when no concurrent erasure is used. For internal use inside TBB only!
-    /** Return pointer to item with given key, or NULL if no such item exists.
-        Must not be called concurrently with erasure operations. */
-    const_pointer internal_fast_find( const Key& key ) const {
-        hashcode_t h = my_hash_compare.hash( key );
-        hashcode_t m = (hashcode_t) itt_load_word_with_acquire( my_mask );
-        node *n;
-    restart:
-        __TBB_ASSERT((m&(m+1))==0, NULL);
-        bucket *b = get_bucket( h & m );
-        // TODO: actually, notification is unnecessary here, just hiding double-check
-        if( itt_load_word_with_acquire(b->node_list) == internal::rehash_req )
-        {
-            bucket::scoped_t lock;
-            if( lock.try_acquire( b->mutex, /*write=*/true ) ) {
-                if( b->node_list == internal::rehash_req)
-                    const_cast<concurrent_hash_map*>(this)->rehash_bucket( b, h & m ); //recursive rehashing
-            }
-            else lock.acquire( b->mutex, /*write=*/false );
-            __TBB_ASSERT(b->node_list!=internal::rehash_req,NULL);
-        }
-        n = search_bucket( key, b );
-        if( n )
-            return &n->item;
-        else if( check_mask_race( h, m ) )
-            goto restart;
-        return 0;
-    }
-};
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    // Suppress "conditional expression is constant" warning.
-    #pragma warning( push )
-    #pragma warning( disable: 4127 )
-#endif
-
-template<typename Key, typename T, typename HashCompare, typename A>
-bool concurrent_hash_map<Key,T,HashCompare,A>::lookup( bool op_insert, const Key &key, const T *t, const_accessor *result, bool write ) {
-    __TBB_ASSERT( !result || !result->my_node, NULL );
-    bool return_value;
-    hashcode_t const h = my_hash_compare.hash( key );
-    hashcode_t m = (hashcode_t) itt_load_word_with_acquire( my_mask );
-    segment_index_t grow_segment = 0;
-    node *n, *tmp_n = 0;
-    restart:
-    {//lock scope
-        __TBB_ASSERT((m&(m+1))==0, NULL);
-        return_value = false;
-        // get bucket
-        bucket_accessor b( this, h & m );
-
-        // find a node
-        n = search_bucket( key, b() );
-        if( op_insert ) {
-            // [opt] insert a key
-            if( !n ) {
-                if( !tmp_n ) {
-                    if(t) tmp_n = new( my_allocator ) node(key, *t);
-                    else  tmp_n = new( my_allocator ) node(key);
-                }
-                if( !b.is_writer() && !b.upgrade_to_writer() ) { // TODO: improved insertion
-                    // Rerun search_list, in case another thread inserted the item during the upgrade.
-                    n = search_bucket( key, b() );
-                    if( is_valid(n) ) { // unfortunately, it did
-                        b.downgrade_to_reader();
-                        goto exists;
-                    }
-                }
-                if( check_mask_race(h, m) )
-                    goto restart; // b.release() is done in ~b().
-                // insert and set flag to grow the container
-                grow_segment = insert_new_node( b(), n = tmp_n, m );
-                tmp_n = 0;
-                return_value = true;
-            }
-        } else { // find or count
-            if( !n ) {
-                if( check_mask_race( h, m ) )
-                    goto restart; // b.release() is done in ~b(). TODO: replace by continue
-                return false;
-            }
-            return_value = true;
-        }
-    exists:
-        if( !result ) goto check_growth;
-        // TODO: the following seems as generic/regular operation
-        // acquire the item
-        if( !result->try_acquire( n->mutex, write ) ) {
-            // we are unlucky, prepare for longer wait
-            tbb::internal::atomic_backoff trials;
-            do {
-                if( !trials.bounded_pause() ) {
-                    // the wait takes really long, restart the operation
-                    b.release();
-                    __TBB_ASSERT( !op_insert || !return_value, "Can't acquire new item in locked bucket?" );
-                    __TBB_Yield();
-                    m = (hashcode_t) itt_load_word_with_acquire( my_mask );
-                    goto restart;
-                }
-            } while( !result->try_acquire( n->mutex, write ) );
-        }
-    }//lock scope
-    result->my_node = n;
-    result->my_hash = h;
-check_growth:
-    // [opt] grow the container
-    if( grow_segment ) {
-#if __TBB_STATISTICS
-        my_info_resizes++; // concurrent ones
-#endif
-        enable_segment( grow_segment );
-    }
-    if( tmp_n ) // if op_insert only
-        delete_node( tmp_n );
-    return return_value;
-}
-
-template<typename Key, typename T, typename HashCompare, typename A>
-template<typename I>
-std::pair<I, I> concurrent_hash_map<Key,T,HashCompare,A>::internal_equal_range( const Key& key, I end_ ) const {
-    hashcode_t h = my_hash_compare.hash( key );
-    hashcode_t m = my_mask;
-    __TBB_ASSERT((m&(m+1))==0, NULL);
-    h &= m;
-    bucket *b = get_bucket( h );
-    while( b->node_list == internal::rehash_req ) {
-        m = ( 1u<<__TBB_Log2( h ) ) - 1; // get parent mask from the topmost bit
-        b = get_bucket( h &= m );
-    }
-    node *n = search_bucket( key, b );
-    if( !n )
-        return std::make_pair(end_, end_);
-    iterator lower(*this, h, b, n), upper(lower);
-    return std::make_pair(lower, ++upper);
-}
-
-template<typename Key, typename T, typename HashCompare, typename A>
-bool concurrent_hash_map<Key,T,HashCompare,A>::exclude( const_accessor &item_accessor ) {
-    __TBB_ASSERT( item_accessor.my_node, NULL );
-    node_base *const n = item_accessor.my_node;
-    hashcode_t const h = item_accessor.my_hash;
-    hashcode_t m = (hashcode_t) itt_load_word_with_acquire( my_mask );
-    do {
-        // get bucket
-        bucket_accessor b( this, h & m, /*writer=*/true );
-        node_base **p = &b()->node_list;
-        while( *p && *p != n )
-            p = &(*p)->next;
-        if( !*p ) { // someone else was the first
-            if( check_mask_race( h, m ) )
-                continue;
-            item_accessor.release();
-            return false;
-        }
-        __TBB_ASSERT( *p == n, NULL );
-        *p = n->next; // remove from container
-        my_size--;
-        break;
-    } while(true);
-    if( !item_accessor.is_writer() ) // need to get exclusive lock
-        item_accessor.upgrade_to_writer(); // return value means nothing here
-    item_accessor.release();
-    delete_node( n ); // Only one thread can delete it
-    return true;
-}
-
-template<typename Key, typename T, typename HashCompare, typename A>
-bool concurrent_hash_map<Key,T,HashCompare,A>::erase( const Key &key ) {
-    node_base *n;
-    hashcode_t const h = my_hash_compare.hash( key );
-    hashcode_t m = (hashcode_t) itt_load_word_with_acquire( my_mask );
-restart:
-    {//lock scope
-        // get bucket
-        bucket_accessor b( this, h & m );
-    search:
-        node_base **p = &b()->node_list;
-        n = *p;
-        while( is_valid(n) && !my_hash_compare.equal(key, static_cast<node*>(n)->item.first ) ) {
-            p = &n->next;
-            n = *p;
-        }
-        if( !n ) { // not found, but mask could be changed
-            if( check_mask_race( h, m ) )
-                goto restart;
-            return false;
-        }
-        else if( !b.is_writer() && !b.upgrade_to_writer() ) {
-            if( check_mask_race( h, m ) ) // contended upgrade, check mask
-                goto restart;
-            goto search;
-        }
-        *p = n->next;
-        my_size--;
-    }
-    {
-        typename node::scoped_t item_locker( n->mutex, /*write=*/true );
-    }
-    // note: there should be no threads pretending to acquire this mutex again, do not try to upgrade const_accessor!
-    delete_node( n ); // Only one thread can delete it due to write lock on the bucket
-    return true;
-}
-
-template<typename Key, typename T, typename HashCompare, typename A>
-void concurrent_hash_map<Key,T,HashCompare,A>::swap(concurrent_hash_map<Key,T,HashCompare,A> &table) {
-    std::swap(this->my_allocator, table.my_allocator);
-    std::swap(this->my_hash_compare, table.my_hash_compare);
-    internal_swap(table);
-}
-
-template<typename Key, typename T, typename HashCompare, typename A>
-void concurrent_hash_map<Key,T,HashCompare,A>::rehash(size_type sz) {
-    reserve( sz ); // TODO: add reduction of number of buckets as well
-    hashcode_t mask = my_mask;
-    hashcode_t b = (mask+1)>>1; // size or first index of the last segment
-    __TBB_ASSERT((b&(b-1))==0, NULL);
-    bucket *bp = get_bucket( b ); // only the last segment should be scanned for rehashing
-    for(; b <= mask; b++, bp++ ) {
-        node_base *n = bp->node_list;
-        __TBB_ASSERT( is_valid(n) || n == internal::empty_rehashed || n == internal::rehash_req, "Broken internal structure" );
-        __TBB_ASSERT( *reinterpret_cast<intptr_t*>(&bp->mutex) == 0, "concurrent or unexpectedly terminated operation during rehash() execution" );
-        if( n == internal::rehash_req ) { // rehash bucket, conditional because rehashing of a previous bucket may affect this one
-            hashcode_t h = b; bucket *b_old = bp;
-            do {
-                __TBB_ASSERT( h > 1, "The lowermost buckets can't be rehashed" );
-                hashcode_t m = ( 1u<<__TBB_Log2( h ) ) - 1; // get parent mask from the topmost bit
-                b_old = get_bucket( h &= m );
-            } while( b_old->node_list == internal::rehash_req );
-            // now h - is index of the root rehashed bucket b_old
-            mark_rehashed_levels( h ); // mark all non-rehashed children recursively across all segments
-            for( node_base **p = &b_old->node_list, *q = *p; is_valid(q); q = *p ) {
-                hashcode_t c = my_hash_compare.hash( static_cast<node*>(q)->item.first );
-                if( (c & mask) != h ) { // should be rehashed
-                    *p = q->next; // exclude from b_old
-                    bucket *b_new = get_bucket( c & mask );
-                    __TBB_ASSERT( b_new->node_list != internal::rehash_req, "hash() function changed for key in table or internal error" );
-                    add_to_bucket( b_new, q );
-                } else p = &q->next; // iterate to next item
-            }
-        }
-    }
-#if TBB_USE_PERFORMANCE_WARNINGS
-    int current_size = int(my_size), buckets = int(mask)+1, empty_buckets = 0, overpopulated_buckets = 0; // usage statistics
-    static bool reported = false;
-#endif
-#if TBB_USE_ASSERT || TBB_USE_PERFORMANCE_WARNINGS
-    for( b = 0; b <= mask; b++ ) {// only last segment should be scanned for rehashing
-        if( b & (b-2) ) ++bp; // not the beginning of a segment
-        else bp = get_bucket( b );
-        node_base *n = bp->node_list;
-        __TBB_ASSERT( *reinterpret_cast<intptr_t*>(&bp->mutex) == 0, "concurrent or unexpectedly terminated operation during rehash() execution" );
-        __TBB_ASSERT( is_valid(n) || n == internal::empty_rehashed, "Broken internal structure" );
-#if TBB_USE_PERFORMANCE_WARNINGS
-        if( n == internal::empty_rehashed ) empty_buckets++;
-        else if( n->next ) overpopulated_buckets++;
-#endif
-#if TBB_USE_ASSERT
-        for( ; is_valid(n); n = n->next ) {
-            hashcode_t h = my_hash_compare.hash( static_cast<node*>(n)->item.first ) & mask;
-            __TBB_ASSERT( h == b, "hash() function changed for key in table or internal error" );
-        }
-#endif
-    }
-#endif // TBB_USE_ASSERT || TBB_USE_PERFORMANCE_WARNINGS
-#if TBB_USE_PERFORMANCE_WARNINGS
-    if( buckets > current_size) empty_buckets -= buckets - current_size;
-    else overpopulated_buckets -= current_size - buckets; // TODO: load_factor?
-    if( !reported && buckets >= 512 && ( 2*empty_buckets > current_size || 2*overpopulated_buckets > current_size ) ) {
-        tbb::internal::runtime_warning(
-            "Performance is not optimal because the hash function produces bad randomness in lower bits in %s.\nSize: %d  Empties: %d  Overlaps: %d",
-            typeid(*this).name(), current_size, empty_buckets, overpopulated_buckets );
-        reported = true;
-    }
-#endif
-}
-
-template<typename Key, typename T, typename HashCompare, typename A>
-void concurrent_hash_map<Key,T,HashCompare,A>::clear() {
-    hashcode_t m = my_mask;
-    __TBB_ASSERT((m&(m+1))==0, NULL);
-#if TBB_USE_ASSERT || TBB_USE_PERFORMANCE_WARNINGS || __TBB_STATISTICS
-#if TBB_USE_PERFORMANCE_WARNINGS || __TBB_STATISTICS
-    int current_size = int(my_size), buckets = int(m)+1, empty_buckets = 0, overpopulated_buckets = 0; // usage statistics
-    static bool reported = false;
-#endif
-    bucket *bp = 0;
-    // check consistency
-    for( segment_index_t b = 0; b <= m; b++ ) {
-        if( b & (b-2) ) ++bp; // not the beginning of a segment
-        else bp = get_bucket( b );
-        node_base *n = bp->node_list;
-        __TBB_ASSERT( is_valid(n) || n == internal::empty_rehashed || n == internal::rehash_req, "Broken internal structure" );
-        __TBB_ASSERT( *reinterpret_cast<intptr_t*>(&bp->mutex) == 0, "concurrent or unexpectedly terminated operation during clear() execution" );
-#if TBB_USE_PERFORMANCE_WARNINGS || __TBB_STATISTICS
-        if( n == internal::empty_rehashed ) empty_buckets++;
-        else if( n == internal::rehash_req ) buckets--;
-        else if( n->next ) overpopulated_buckets++;
-#endif
-#if __TBB_EXTRA_DEBUG
-        for(; is_valid(n); n = n->next ) {
-            hashcode_t h = my_hash_compare.hash( static_cast<node*>(n)->item.first );
-            h &= m;
-            __TBB_ASSERT( h == b || get_bucket(h)->node_list == internal::rehash_req, "hash() function changed for key in table or internal error" );
-        }
-#endif
-    }
-#if TBB_USE_PERFORMANCE_WARNINGS || __TBB_STATISTICS
-#if __TBB_STATISTICS
-    printf( "items=%d buckets: capacity=%d rehashed=%d empty=%d overpopulated=%d"
-        " concurrent: resizes=%u rehashes=%u restarts=%u\n",
-        current_size, int(m+1), buckets, empty_buckets, overpopulated_buckets,
-        unsigned(my_info_resizes), unsigned(my_info_rehashes), unsigned(my_info_restarts) );
-    my_info_resizes = 0; // concurrent ones
-    my_info_restarts = 0; // race collisions
-    my_info_rehashes = 0;  // invocations of rehash_bucket
-#endif
-    if( buckets > current_size) empty_buckets -= buckets - current_size;
-    else overpopulated_buckets -= current_size - buckets; // TODO: load_factor?
-    if( !reported && buckets >= 512 && ( 2*empty_buckets > current_size || 2*overpopulated_buckets > current_size ) ) {
-        tbb::internal::runtime_warning(
-            "Performance is not optimal because the hash function produces bad randomness in lower bits in %s.\nSize: %d  Empties: %d  Overlaps: %d",
-            typeid(*this).name(), current_size, empty_buckets, overpopulated_buckets );
-        reported = true;
-    }
-#endif
-#endif//TBB_USE_ASSERT || TBB_USE_PERFORMANCE_WARNINGS || __TBB_STATISTICS
-    my_size = 0;
-    segment_index_t s = segment_index_of( m );
-    __TBB_ASSERT( s+1 == pointers_per_table || !my_table[s+1], "wrong mask or concurrent grow" );
-    cache_aligned_allocator<bucket> alloc;
-    do {
-        __TBB_ASSERT( is_valid( my_table[s] ), "wrong mask or concurrent grow" );
-        segment_ptr_t buckets_ptr = my_table[s];
-        size_type sz = segment_size( s ? s : 1 );
-        for( segment_index_t i = 0; i < sz; i++ )
-            for( node_base *n = buckets_ptr[i].node_list; is_valid(n); n = buckets_ptr[i].node_list ) {
-                buckets_ptr[i].node_list = n->next;
-                delete_node( n );
-            }
-        if( s >= first_block) // the first segment or the next
-            alloc.deallocate( buckets_ptr, sz );
-        else if( s == embedded_block && embedded_block != first_block )
-            alloc.deallocate( buckets_ptr, segment_size(first_block)-embedded_buckets );
-        if( s >= embedded_block ) my_table[s] = 0;
-    } while(s-- > 0);
-    my_mask = embedded_buckets - 1;
-}
-
-template<typename Key, typename T, typename HashCompare, typename A>
-void concurrent_hash_map<Key,T,HashCompare,A>::internal_copy( const concurrent_hash_map& source ) {
-    reserve( source.my_size ); // TODO: load_factor?
-    hashcode_t mask = source.my_mask;
-    if( my_mask == mask ) { // optimized version
-        bucket *dst = 0, *src = 0;
-        bool rehash_required = false;
-        for( hashcode_t k = 0; k <= mask; k++ ) {
-            if( k & (k-2) ) ++dst,src++; // not the beginning of a segment
-            else { dst = get_bucket( k ); src = source.get_bucket( k ); }
-            __TBB_ASSERT( dst->node_list != internal::rehash_req, "Invalid bucket in destination table");
-            node *n = static_cast<node*>( src->node_list );
-            if( n == internal::rehash_req ) { // source is not rehashed, items are in previous buckets
-                rehash_required = true;
-                dst->node_list = internal::rehash_req;
-            } else for(; n; n = static_cast<node*>( n->next ) ) {
-                add_to_bucket( dst, new( my_allocator ) node(n->item.first, n->item.second) );
-                ++my_size; // TODO: replace by non-atomic op
-            }
-        }
-        if( rehash_required ) rehash();
-    } else internal_copy( source.begin(), source.end() );
-}
-
-template<typename Key, typename T, typename HashCompare, typename A>
-template<typename I>
-void concurrent_hash_map<Key,T,HashCompare,A>::internal_copy(I first, I last) {
-    hashcode_t m = my_mask;
-    for(; first != last; ++first) {
-        hashcode_t h = my_hash_compare.hash( first->first );
-        bucket *b = get_bucket( h & m );
-        __TBB_ASSERT( b->node_list != internal::rehash_req, "Invalid bucket in destination table");
-        node *n = new( my_allocator ) node(first->first, first->second);
-        add_to_bucket( b, n );
-        ++my_size; // TODO: replace by non-atomic op
-    }
-}
-
-} // namespace interface5
-
-using interface5::concurrent_hash_map;
-
-
-template<typename Key, typename T, typename HashCompare, typename A1, typename A2>
-inline bool operator==(const concurrent_hash_map<Key, T, HashCompare, A1> &a, const concurrent_hash_map<Key, T, HashCompare, A2> &b) {
-    if(a.size() != b.size()) return false;
-    typename concurrent_hash_map<Key, T, HashCompare, A1>::const_iterator i(a.begin()), i_end(a.end());
-    typename concurrent_hash_map<Key, T, HashCompare, A2>::const_iterator j, j_end(b.end());
-    for(; i != i_end; ++i) {
-        j = b.equal_range(i->first).first;
-        if( j == j_end || !(i->second == j->second) ) return false;
-    }
-    return true;
-}
-
-template<typename Key, typename T, typename HashCompare, typename A1, typename A2>
-inline bool operator!=(const concurrent_hash_map<Key, T, HashCompare, A1> &a, const concurrent_hash_map<Key, T, HashCompare, A2> &b)
-{    return !(a == b); }
-
-template<typename Key, typename T, typename HashCompare, typename A>
-inline void swap(concurrent_hash_map<Key, T, HashCompare, A> &a, concurrent_hash_map<Key, T, HashCompare, A> &b)
-{    a.swap( b ); }
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    #pragma warning( pop )
-#endif // warning 4127 is back
-
-} // namespace tbb
-
-#endif /* __TBB_concurrent_hash_map_H */
diff --git a/dependencies64/tbb/include/tbb/concurrent_priority_queue.h b/dependencies64/tbb/include/tbb/concurrent_priority_queue.h
deleted file mode 100644 (file)
index b5601f1..0000000
+++ /dev/null
@@ -1,354 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_concurrent_priority_queue_H
-#define __TBB_concurrent_priority_queue_H
-
-#include "atomic.h"
-#include "cache_aligned_allocator.h"
-#include "tbb_exception.h"
-#include "tbb_stddef.h"
-#include "tbb_profiling.h"
-#include "internal/_aggregator_impl.h"
-#include <vector>
-#include <iterator>
-#include <functional>
-
-namespace tbb {
-namespace interface5 {
-
-using namespace tbb::internal;
-
-//! Concurrent priority queue
-template <typename T, typename Compare=std::less<T>, typename A=cache_aligned_allocator<T> >
-class concurrent_priority_queue {
- public:
-    //! Element type in the queue.
-    typedef T value_type;
-
-    //! Reference type
-    typedef T& reference;
-
-    //! Const reference type
-    typedef const T& const_reference;
-
-    //! Integral type for representing size of the queue.
-    typedef size_t size_type;
-
-    //! Difference type for iterator
-    typedef ptrdiff_t difference_type;
-
-    //! Allocator type
-    typedef A allocator_type;
-
-    //! Constructs a new concurrent_priority_queue with default capacity
-    explicit concurrent_priority_queue(const allocator_type& a = allocator_type()) : mark(0), my_size(0), data(a)
-    {
-        my_aggregator.initialize_handler(my_functor_t(this));
-    }
-
-    //! Constructs a new concurrent_priority_queue with init_sz capacity
-    explicit concurrent_priority_queue(size_type init_capacity, const allocator_type& a = allocator_type()) :
-        mark(0), my_size(0), data(a)
-    {
-        data.reserve(init_capacity);
-        my_aggregator.initialize_handler(my_functor_t(this));
-    }
-
-    //! [begin,end) constructor
-    template<typename InputIterator>
-    concurrent_priority_queue(InputIterator begin, InputIterator end, const allocator_type& a = allocator_type()) :
-        data(begin, end, a)
-    {
-        mark = 0;
-        my_aggregator.initialize_handler(my_functor_t(this));
-        heapify();
-        my_size = data.size();
-    }
-
-    //! Copy constructor
-    /** This operation is unsafe if there are pending concurrent operations on the src queue. */
-    explicit concurrent_priority_queue(const concurrent_priority_queue& src) : mark(src.mark),
-        my_size(src.my_size), data(src.data.begin(), src.data.end(), src.data.get_allocator())
-    {
-        my_aggregator.initialize_handler(my_functor_t(this));
-        heapify();
-    }
-
-    //! Copy constructor with specific allocator
-    /** This operation is unsafe if there are pending concurrent operations on the src queue. */
-    concurrent_priority_queue(const concurrent_priority_queue& src, const allocator_type& a) : mark(src.mark),
-        my_size(src.my_size), data(src.data.begin(), src.data.end(), a)
-    {
-        my_aggregator.initialize_handler(my_functor_t(this));
-        heapify();
-    }
-
-    //! Assignment operator
-    /** This operation is unsafe if there are pending concurrent operations on the src queue. */
-    concurrent_priority_queue& operator=(const concurrent_priority_queue& src) {
-        if (this != &src) {
-            std::vector<value_type, allocator_type>(src.data.begin(), src.data.end(), src.data.get_allocator()).swap(data);
-            mark = src.mark;
-            my_size = src.my_size;
-        }
-        return *this;
-    }
-
-    //! Returns true if empty, false otherwise
-    /** Returned value may not reflect results of pending operations.
-        This operation reads shared data and will trigger a race condition. */
-    bool empty() const { return size()==0; }
-
-    //! Returns the current number of elements contained in the queue
-    /** Returned value may not reflect results of pending operations.
-        This operation reads shared data and will trigger a race condition. */
-    size_type size() const { return __TBB_load_with_acquire(my_size); }
-
-    //! Pushes elem onto the queue, increasing capacity of queue if necessary
-    /** This operation can be safely used concurrently with other push, try_pop or reserve operations. */
-    void push(const_reference elem) {
-        cpq_operation op_data(elem, PUSH_OP);
-        my_aggregator.execute(&op_data);
-        if (op_data.status == FAILED) // exception thrown
-            throw_exception(eid_bad_alloc);
-    }
-
-    //! Gets a reference to and removes highest priority element
-    /** If a highest priority element was found, sets elem and returns true,
-        otherwise returns false.
-        This operation can be safely used concurrently with other push, try_pop or reserve operations. */
-    bool try_pop(reference elem) {
-        cpq_operation op_data(POP_OP);
-        op_data.elem = &elem;
-        my_aggregator.execute(&op_data);
-        return op_data.status==SUCCEEDED;
-    }
-
-    //! Clear the queue; not thread-safe
-    /** This operation is unsafe if there are pending concurrent operations on the queue.
-        Resets size, effectively emptying queue; does not free space.
-        May not clear elements added in pending operations. */
-    void clear() {
-        data.clear();
-        mark = 0;
-        my_size = 0;
-    }
-
-    //! Swap this queue with another; not thread-safe
-    /** This operation is unsafe if there are pending concurrent operations on the queue. */
-    void swap(concurrent_priority_queue& q) {
-        data.swap(q.data);
-        std::swap(mark, q.mark);
-        std::swap(my_size, q.my_size);
-    }
-
-    //! Return allocator object
-    allocator_type get_allocator() const { return data.get_allocator(); }
-
- private:
-    enum operation_type {INVALID_OP, PUSH_OP, POP_OP};
-    enum operation_status { WAIT=0, SUCCEEDED, FAILED };
-
-    class cpq_operation : public aggregated_operation<cpq_operation> {
-     public:
-        operation_type type;
-        union {
-            value_type *elem;
-            size_type sz;
-        };
-        cpq_operation(const_reference e, operation_type t) :
-            type(t), elem(const_cast<value_type*>(&e)) {}
-        cpq_operation(operation_type t) : type(t) {}
-    };
-
-    class my_functor_t {
-        concurrent_priority_queue<T, Compare, A> *cpq;
-     public:
-        my_functor_t() {}
-        my_functor_t(concurrent_priority_queue<T, Compare, A> *cpq_) : cpq(cpq_) {}
-        void operator()(cpq_operation* op_list) {
-            cpq->handle_operations(op_list);
-        }
-    };
-
-    aggregator< my_functor_t, cpq_operation> my_aggregator;
-    //! Padding added to avoid false sharing
-    char padding1[NFS_MaxLineSize - sizeof(aggregator< my_functor_t, cpq_operation >)];
-    //! The point at which unsorted elements begin
-    size_type mark;
-    __TBB_atomic size_type my_size;
-    Compare compare;
-    //! Padding added to avoid false sharing
-    char padding2[NFS_MaxLineSize - (2*sizeof(size_type)) - sizeof(Compare)];
-    //! Storage for the heap of elements in queue, plus unheapified elements
-    /** data has the following structure:
-
-         binary unheapified
-          heap   elements
-        ____|_______|____
-        |       |       |
-        v       v       v
-        [_|...|_|_|...|_| |...| ]
-         0       ^       ^       ^
-                 |       |       |__capacity
-                 |       |__my_size
-                 |__mark
-
-        Thus, data stores the binary heap starting at position 0 through
-        mark-1 (it may be empty).  Then there are 0 or more elements
-        that have not yet been inserted into the heap, in positions
-        mark through my_size-1. */
-    std::vector<value_type, allocator_type> data;
-
-    void handle_operations(cpq_operation *op_list) {
-        cpq_operation *tmp, *pop_list=NULL;
-
-        __TBB_ASSERT(mark == data.size(), NULL);
-
-        // first pass processes all constant time operations: pushes,
-        // tops, some pops. Also reserve.
-        while (op_list) {
-            // ITT note: &(op_list->status) tag is used to cover accesses to op_list
-            // node. This thread is going to handle the operation, and so will acquire it
-            // and perform the associated operation w/o triggering a race condition; the
-            // thread that created the operation is waiting on the status field, so when
-            // this thread is done with the operation, it will perform a
-            // store_with_release to give control back to the waiting thread in
-            // aggregator::insert_operation.
-            call_itt_notify(acquired, &(op_list->status));
-            __TBB_ASSERT(op_list->type != INVALID_OP, NULL);
-            tmp = op_list;
-            op_list = itt_hide_load_word(op_list->next);
-            if (tmp->type == PUSH_OP) {
-                __TBB_TRY {
-                    data.push_back(*(tmp->elem));
-                    __TBB_store_with_release(my_size, my_size+1);
-                    itt_store_word_with_release(tmp->status, uintptr_t(SUCCEEDED));
-                } __TBB_CATCH(...) {
-                    itt_store_word_with_release(tmp->status, uintptr_t(FAILED));
-                }
-            }
-            else { // tmp->type == POP_OP
-                __TBB_ASSERT(tmp->type == POP_OP, NULL);
-                if (mark < data.size() &&
-                    compare(data[0], data[data.size()-1])) {
-                    // there are newly pushed elems and the last one
-                    // is higher than top
-                    *(tmp->elem) = data[data.size()-1]; // copy the data
-                    __TBB_store_with_release(my_size, my_size-1);
-                    itt_store_word_with_release(tmp->status, uintptr_t(SUCCEEDED));
-                    data.pop_back();
-                    __TBB_ASSERT(mark<=data.size(), NULL);
-                }
-                else { // no convenient item to pop; postpone
-                    itt_hide_store_word(tmp->next, pop_list);
-                    pop_list = tmp;
-                }
-            }
-        }
-
-        // second pass processes pop operations
-        while (pop_list) {
-            tmp = pop_list;
-            pop_list = itt_hide_load_word(pop_list->next);
-            __TBB_ASSERT(tmp->type == POP_OP, NULL);
-            if (data.empty()) {
-                itt_store_word_with_release(tmp->status, uintptr_t(FAILED));
-            }
-            else {
-                __TBB_ASSERT(mark<=data.size(), NULL);
-                if (mark < data.size() &&
-                    compare(data[0], data[data.size()-1])) {
-                    // there are newly pushed elems and the last one is
-                    // higher than top
-                    *(tmp->elem) = data[data.size()-1]; // copy the data
-                    __TBB_store_with_release(my_size, my_size-1);
-                    itt_store_word_with_release(tmp->status, uintptr_t(SUCCEEDED));
-                    data.pop_back();
-                }
-                else { // extract top and push last element down heap
-                    *(tmp->elem) = data[0]; // copy the data
-                    __TBB_store_with_release(my_size, my_size-1);
-                    itt_store_word_with_release(tmp->status, uintptr_t(SUCCEEDED));
-                    reheap();
-                }
-            }
-        }
-
-        // heapify any leftover pushed elements before doing the next
-        // batch of operations
-        if (mark<data.size()) heapify();
-        __TBB_ASSERT(mark == data.size(), NULL);
-    }
-
-    //! Merge unsorted elements into heap
-    void heapify() {
-        if (!mark && data.size()>0) mark = 1;
-        for (; mark<data.size(); ++mark) {
-            // for each unheapified element under size
-            size_type cur_pos = mark;
-            value_type to_place = data[mark];
-            do { // push to_place up the heap
-                size_type parent = (cur_pos-1)>>1;
-                if (!compare(data[parent], to_place)) break;
-                data[cur_pos] = data[parent];
-                cur_pos = parent;
-            } while( cur_pos );
-            data[cur_pos] = to_place;
-        }
-    }
-
-    //! Re-heapify after an extraction
-    /** Re-heapify by pushing last element down the heap from the root. */
-    void reheap() {
-        size_type cur_pos=0, child=1;
-
-        while (child < mark) {
-            size_type target = child;
-            if (child+1 < mark && compare(data[child], data[child+1]))
-                ++target;
-            // target now has the higher priority child
-            if (compare(data[target], data[data.size()-1])) break;
-            data[cur_pos] = data[target];
-            cur_pos = target;
-            child = (cur_pos<<1)+1;
-        }
-        data[cur_pos] = data[data.size()-1];
-        data.pop_back();
-        if (mark > data.size()) mark = data.size();
-    }
-};
-
-} // namespace interface5
-
-using interface5::concurrent_priority_queue;
-
-} // namespace tbb
-
-#endif /* __TBB_concurrent_priority_queue_H */
diff --git a/dependencies64/tbb/include/tbb/concurrent_queue.h b/dependencies64/tbb/include/tbb/concurrent_queue.h
deleted file mode 100644 (file)
index cc7ac33..0000000
+++ /dev/null
@@ -1,413 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_concurrent_queue_H
-#define __TBB_concurrent_queue_H
-
-#include "internal/_concurrent_queue_impl.h"
-
-namespace tbb {
-
-namespace strict_ppl {
-
-//! A high-performance thread-safe non-blocking concurrent queue.
-/** Multiple threads may each push and pop concurrently.
-    Assignment construction is not allowed.
-    @ingroup containers */
-template<typename T, typename A = cache_aligned_allocator<T> > 
-class concurrent_queue: public internal::concurrent_queue_base_v3<T> {
-    template<typename Container, typename Value> friend class internal::concurrent_queue_iterator;
-
-    //! Allocator type
-    typedef typename A::template rebind<char>::other page_allocator_type;
-    page_allocator_type my_allocator;
-
-    //! Allocates a block of size n (bytes)
-    /*override*/ virtual void *allocate_block( size_t n ) {
-        void *b = reinterpret_cast<void*>(my_allocator.allocate( n ));
-        if( !b )
-            internal::throw_exception(internal::eid_bad_alloc); 
-        return b;
-    }
-
-    //! Deallocates block created by allocate_block.
-    /*override*/ virtual void deallocate_block( void *b, size_t n ) {
-        my_allocator.deallocate( reinterpret_cast<char*>(b), n );
-    }
-
-public:
-    //! Element type in the queue.
-    typedef T value_type;
-
-    //! Reference type
-    typedef T& reference;
-
-    //! Const reference type
-    typedef const T& const_reference;
-
-    //! Integral type for representing size of the queue.
-    typedef size_t size_type;
-
-    //! Difference type for iterator
-    typedef ptrdiff_t difference_type;
-
-    //! Allocator type
-    typedef A allocator_type;
-
-    //! Construct empty queue
-    explicit concurrent_queue(const allocator_type& a = allocator_type()) : 
-        my_allocator( a )
-    {
-    }
-
-    //! [begin,end) constructor
-    template<typename InputIterator>
-    concurrent_queue( InputIterator begin, InputIterator end, const allocator_type& a = allocator_type()) :
-        my_allocator( a )
-    {
-        for( ; begin != end; ++begin )
-            this->internal_push(&*begin);
-    }
-    
-    //! Copy constructor
-    concurrent_queue( const concurrent_queue& src, const allocator_type& a = allocator_type()) : 
-        internal::concurrent_queue_base_v3<T>(), my_allocator( a )
-    {
-        this->assign( src );
-    }
-    
-    //! Destroy queue
-    ~concurrent_queue();
-
-    //! Enqueue an item at tail of queue.
-    void push( const T& source ) {
-        this->internal_push( &source );
-    }
-
-    //! Attempt to dequeue an item from head of queue.
-    /** Does not wait for item to become available.
-        Returns true if successful; false otherwise. */
-    bool try_pop( T& result ) {
-        return this->internal_try_pop( &result );
-    }
-
-    //! Return the number of items in the queue; thread unsafe
-    size_type unsafe_size() const {return this->internal_size();}
-
-    //! Equivalent to size()==0.
-    bool empty() const {return this->internal_empty();}
-
-    //! Clear the queue. not thread-safe.
-    void clear() ;
-
-    //! Return allocator object
-    allocator_type get_allocator() const { return this->my_allocator; }
-
-    typedef internal::concurrent_queue_iterator<concurrent_queue,T> iterator;
-    typedef internal::concurrent_queue_iterator<concurrent_queue,const T> const_iterator;
-
-    //------------------------------------------------------------------------
-    // The iterators are intended only for debugging.  They are slow and not thread safe.
-    //------------------------------------------------------------------------
-    iterator unsafe_begin() {return iterator(*this);}
-    iterator unsafe_end() {return iterator();}
-    const_iterator unsafe_begin() const {return const_iterator(*this);}
-    const_iterator unsafe_end() const {return const_iterator();}
-} ;
-
-template<typename T, class A>
-concurrent_queue<T,A>::~concurrent_queue() {
-    clear();
-    this->internal_finish_clear();
-}
-
-template<typename T, class A>
-void concurrent_queue<T,A>::clear() {
-    while( !empty() ) {
-        T value;
-        this->internal_try_pop(&value);
-    }
-}
-
-} // namespace strict_ppl
-    
-//! A high-performance thread-safe blocking concurrent bounded queue.
-/** This is the pre-PPL TBB concurrent queue which supports boundedness and blocking semantics.
-    Note that method names agree with the PPL-style concurrent queue.
-    Multiple threads may each push and pop concurrently.
-    Assignment construction is not allowed.
-    @ingroup containers */
-template<typename T, class A = cache_aligned_allocator<T> >
-class concurrent_bounded_queue: public internal::concurrent_queue_base_v3 {
-    template<typename Container, typename Value> friend class internal::concurrent_queue_iterator;
-
-    //! Allocator type
-    typedef typename A::template rebind<char>::other page_allocator_type;
-    page_allocator_type my_allocator;
-
-    typedef typename concurrent_queue_base_v3::padded_page<T> padded_page;
-    //! Class used to ensure exception-safety of method "pop" 
-    class destroyer: internal::no_copy {
-        T& my_value;
-    public:
-        destroyer( T& value ) : my_value(value) {}
-        ~destroyer() {my_value.~T();}          
-    };
-
-    T& get_ref( page& p, size_t index ) {
-        __TBB_ASSERT( index<items_per_page, NULL );
-        return (&static_cast<padded_page*>(static_cast<void*>(&p))->last)[index];
-    }
-
-    /*override*/ virtual void copy_item( page& dst, size_t index, const void* src ) {
-        new( &get_ref(dst,index) ) T(*static_cast<const T*>(src)); 
-    }
-
-    /*override*/ virtual void copy_page_item( page& dst, size_t dindex, const page& src, size_t sindex ) {
-        new( &get_ref(dst,dindex) ) T( get_ref( const_cast<page&>(src), sindex ) );
-    }
-
-    /*override*/ virtual void assign_and_destroy_item( void* dst, page& src, size_t index ) {
-        T& from = get_ref(src,index);
-        destroyer d(from);
-        *static_cast<T*>(dst) = from;
-    }
-
-    /*override*/ virtual page *allocate_page() {
-        size_t n = sizeof(padded_page) + (items_per_page-1)*sizeof(T);
-        page *p = reinterpret_cast<page*>(my_allocator.allocate( n ));
-        if( !p )
-            internal::throw_exception(internal::eid_bad_alloc); 
-        return p;
-    }
-
-    /*override*/ virtual void deallocate_page( page *p ) {
-        size_t n = sizeof(padded_page) + (items_per_page-1)*sizeof(T);
-        my_allocator.deallocate( reinterpret_cast<char*>(p), n );
-    }
-
-public:
-    //! Element type in the queue.
-    typedef T value_type;
-
-    //! Allocator type
-    typedef A allocator_type;
-
-    //! Reference type
-    typedef T& reference;
-
-    //! Const reference type
-    typedef const T& const_reference;
-
-    //! Integral type for representing size of the queue.
-    /** Note that the size_type is a signed integral type.
-        This is because the size can be negative if there are pending pops without corresponding pushes. */
-    typedef std::ptrdiff_t size_type;
-
-    //! Difference type for iterator
-    typedef std::ptrdiff_t difference_type;
-
-    //! Construct empty queue
-    explicit concurrent_bounded_queue(const allocator_type& a = allocator_type()) : 
-        concurrent_queue_base_v3( sizeof(T) ), my_allocator( a )
-    {
-    }
-
-    //! Copy constructor
-    concurrent_bounded_queue( const concurrent_bounded_queue& src, const allocator_type& a = allocator_type()) : 
-        concurrent_queue_base_v3( sizeof(T) ), my_allocator( a )
-    {
-        assign( src );
-    }
-
-    //! [begin,end) constructor
-    template<typename InputIterator>
-    concurrent_bounded_queue( InputIterator begin, InputIterator end, const allocator_type& a = allocator_type()) :
-        concurrent_queue_base_v3( sizeof(T) ), my_allocator( a )
-    {
-        for( ; begin != end; ++begin )
-            internal_push_if_not_full(&*begin);
-    }
-
-    //! Destroy queue
-    ~concurrent_bounded_queue();
-
-    //! Enqueue an item at tail of queue.
-    void push( const T& source ) {
-        internal_push( &source );
-    }
-
-    //! Dequeue item from head of queue.
-    /** Block until an item becomes available, and then dequeue it. */
-    void pop( T& destination ) {
-        internal_pop( &destination );
-    }
-
-    //! Enqueue an item at tail of queue if queue is not already full.
-    /** Does not wait for queue to become not full.
-        Returns true if item is pushed; false if queue was already full. */
-    bool try_push( const T& source ) {
-        return internal_push_if_not_full( &source );
-    }
-
-    //! Attempt to dequeue an item from head of queue.
-    /** Does not wait for item to become available.
-        Returns true if successful; false otherwise. */
-    bool try_pop( T& destination ) {
-        return internal_pop_if_present( &destination );
-    }
-
-    //! Return number of pushes minus number of pops.
-    /** Note that the result can be negative if there are pops waiting for the 
-        corresponding pushes.  The result can also exceed capacity() if there 
-        are push operations in flight. */
-    size_type size() const {return internal_size();}
-
-    //! Equivalent to size()<=0.
-    bool empty() const {return internal_empty();}
-
-    //! Maximum number of allowed elements
-    size_type capacity() const {
-        return my_capacity;
-    }
-
-    //! Set the capacity
-    /** Setting the capacity to 0 causes subsequent try_push operations to always fail,
-        and subsequent push operations to block forever. */
-    void set_capacity( size_type new_capacity ) {
-        internal_set_capacity( new_capacity, sizeof(T) );
-    }
-
-    //! return allocator object
-    allocator_type get_allocator() const { return this->my_allocator; }
-
-    //! clear the queue. not thread-safe.
-    void clear() ;
-
-    typedef internal::concurrent_queue_iterator<concurrent_bounded_queue,T> iterator;
-    typedef internal::concurrent_queue_iterator<concurrent_bounded_queue,const T> const_iterator;
-
-    //------------------------------------------------------------------------
-    // The iterators are intended only for debugging.  They are slow and not thread safe.
-    //------------------------------------------------------------------------
-    iterator unsafe_begin() {return iterator(*this);}
-    iterator unsafe_end() {return iterator();}
-    const_iterator unsafe_begin() const {return const_iterator(*this);}
-    const_iterator unsafe_end() const {return const_iterator();}
-
-}; 
-
-template<typename T, class A>
-concurrent_bounded_queue<T,A>::~concurrent_bounded_queue() {
-    clear();
-    internal_finish_clear();
-}
-
-template<typename T, class A>
-void concurrent_bounded_queue<T,A>::clear() {
-    while( !empty() ) {
-        T value;
-        internal_pop_if_present(&value);
-    }
-}
-
-namespace deprecated {
-
-//! A high-performance thread-safe blocking concurrent bounded queue.
-/** This is the pre-PPL TBB concurrent queue which support boundedness and blocking semantics.
-    Note that method names agree with the PPL-style concurrent queue.
-    Multiple threads may each push and pop concurrently.
-    Assignment construction is not allowed.
-    @ingroup containers */
-template<typename T, class A = cache_aligned_allocator<T> > 
-class concurrent_queue: public concurrent_bounded_queue<T,A> {
-#if !__TBB_TEMPLATE_FRIENDS_BROKEN
-    template<typename Container, typename Value> friend class internal::concurrent_queue_iterator;
-#endif 
-
-public:
-    //! Construct empty queue
-    explicit concurrent_queue(const A& a = A()) : 
-        concurrent_bounded_queue<T,A>( a )
-    {
-    }
-
-    //! Copy constructor
-    concurrent_queue( const concurrent_queue& src, const A& a = A()) : 
-        concurrent_bounded_queue<T,A>( src, a )
-    {
-    }
-
-    //! [begin,end) constructor
-    template<typename InputIterator>
-    concurrent_queue( InputIterator b /*begin*/, InputIterator e /*end*/, const A& a = A()) :
-        concurrent_bounded_queue<T,A>( b, e, a )
-    {
-    }
-
-    //! Enqueue an item at tail of queue if queue is not already full.
-    /** Does not wait for queue to become not full.
-        Returns true if item is pushed; false if queue was already full. */
-    bool push_if_not_full( const T& source ) {
-        return this->try_push( source );
-    }
-
-    //! Attempt to dequeue an item from head of queue.
-    /** Does not wait for item to become available.
-        Returns true if successful; false otherwise. 
-        @deprecated Use try_pop()
-        */
-    bool pop_if_present( T& destination ) {
-        return this->try_pop( destination );
-    }
-
-    typedef typename concurrent_bounded_queue<T,A>::iterator iterator;
-    typedef typename concurrent_bounded_queue<T,A>::const_iterator const_iterator;
-    //
-    //------------------------------------------------------------------------
-    // The iterators are intended only for debugging.  They are slow and not thread safe.
-    //------------------------------------------------------------------------
-    iterator begin() {return this->unsafe_begin();}
-    iterator end() {return this->unsafe_end();}
-    const_iterator begin() const {return this->unsafe_begin();}
-    const_iterator end() const {return this->unsafe_end();}
-}; 
-
-}
-    
-
-#if TBB_DEPRECATED
-using deprecated::concurrent_queue;
-#else
-using strict_ppl::concurrent_queue;    
-#endif
-
-} // namespace tbb
-
-#endif /* __TBB_concurrent_queue_H */
diff --git a/dependencies64/tbb/include/tbb/concurrent_unordered_map.h b/dependencies64/tbb/include/tbb/concurrent_unordered_map.h
deleted file mode 100644 (file)
index e14fad0..0000000
+++ /dev/null
@@ -1,228 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-/* Container implementations in this header are based on PPL implementations
-   provided by Microsoft. */
-
-#ifndef __TBB_concurrent_unordered_map_H
-#define __TBB_concurrent_unordered_map_H
-
-#include "internal/_concurrent_unordered_impl.h"
-
-namespace tbb
-{
-
-namespace interface5 {
-
-// Template class for hash map traits
-template<typename Key, typename T, typename Hash_compare, typename Allocator, bool Allow_multimapping>
-class concurrent_unordered_map_traits
-{
-protected:
-    typedef std::pair<const Key, T> value_type;
-    typedef Key key_type;
-    typedef Hash_compare hash_compare;
-    typedef typename Allocator::template rebind<value_type>::other allocator_type;
-    enum { allow_multimapping = Allow_multimapping };
-
-    concurrent_unordered_map_traits() : my_hash_compare() {}
-    concurrent_unordered_map_traits(const hash_compare& hc) : my_hash_compare(hc) {}
-
-    class value_compare : public std::binary_function<value_type, value_type, bool>
-    {
-        friend class concurrent_unordered_map_traits<Key, T, Hash_compare, Allocator, Allow_multimapping>;
-
-    public:
-        bool operator()(const value_type& left, const value_type& right) const
-        {
-            return (my_hash_compare(left.first, right.first));
-        }
-
-        value_compare(const hash_compare& comparator) : my_hash_compare(comparator) {}
-
-    protected:
-        hash_compare my_hash_compare;    // the comparator predicate for keys
-    };
-
-    template<class Type1, class Type2>
-    static const Key& get_key(const std::pair<Type1, Type2>& value) {
-        return (value.first);
-    }
-
-    hash_compare my_hash_compare; // the comparator predicate for keys
-};
-
-template <typename Key, typename T, typename Hasher = tbb::tbb_hash<Key>, typename Key_equality = std::equal_to<Key>, typename Allocator = tbb::tbb_allocator<std::pair<const Key, T> > >
-class concurrent_unordered_map : public internal::concurrent_unordered_base< concurrent_unordered_map_traits<Key, T, internal::hash_compare<Key, Hasher, Key_equality>, Allocator, false> >
-{
-    // Base type definitions
-    typedef internal::hash_compare<Key, Hasher, Key_equality> hash_compare;
-    typedef internal::concurrent_unordered_base< concurrent_unordered_map_traits<Key, T, hash_compare, Allocator, false> > base_type;
-    typedef concurrent_unordered_map_traits<Key, T, internal::hash_compare<Key, Hasher, Key_equality>, Allocator, false> traits_type;
-    using traits_type::my_hash_compare;
-#if __TBB_EXTRA_DEBUG
-public:
-#endif
-    using traits_type::allow_multimapping;
-public:
-    using base_type::end;
-    using base_type::find;
-    using base_type::insert;
-
-    // Type definitions
-    typedef Key key_type;
-    typedef typename base_type::value_type value_type;
-    typedef T mapped_type;
-    typedef Hasher hasher;
-    typedef Key_equality key_equal;
-    typedef hash_compare key_compare;
-
-    typedef typename base_type::allocator_type allocator_type;
-    typedef typename base_type::pointer pointer;
-    typedef typename base_type::const_pointer const_pointer;
-    typedef typename base_type::reference reference;
-    typedef typename base_type::const_reference const_reference;
-
-    typedef typename base_type::size_type size_type;
-    typedef typename base_type::difference_type difference_type;
-
-    typedef typename base_type::iterator iterator;
-    typedef typename base_type::const_iterator const_iterator;
-    typedef typename base_type::iterator local_iterator;
-    typedef typename base_type::const_iterator const_local_iterator;
-
-    // Construction/destruction/copying
-    explicit concurrent_unordered_map(size_type n_of_buckets = 8, const hasher& a_hasher = hasher(),
-        const key_equal& a_keyeq = key_equal(), const allocator_type& a = allocator_type())
-        : base_type(n_of_buckets, key_compare(a_hasher, a_keyeq), a)
-    {
-    }
-
-    concurrent_unordered_map(const Allocator& a) : base_type(8, key_compare(), a)
-    {
-    }
-
-    template <typename Iterator>
-    concurrent_unordered_map(Iterator first, Iterator last, size_type n_of_buckets = 8, const hasher& a_hasher = hasher(),
-        const key_equal& a_keyeq = key_equal(), const allocator_type& a = allocator_type())
-        : base_type(n_of_buckets, key_compare(a_hasher, a_keyeq), a)
-    {
-        for (; first != last; ++first)
-            base_type::insert(*first);
-    }
-
-    concurrent_unordered_map(const concurrent_unordered_map& table) : base_type(table)
-    {
-    }
-
-    concurrent_unordered_map(const concurrent_unordered_map& table, const Allocator& a)
-        : base_type(table, a)
-    {
-    }
-
-    concurrent_unordered_map& operator=(const concurrent_unordered_map& table)
-    {
-        base_type::operator=(table);
-        return (*this);
-    }
-
-    iterator unsafe_erase(const_iterator where)
-    {
-        return base_type::unsafe_erase(where);
-    }
-
-    size_type unsafe_erase(const key_type& key)
-    {
-        return base_type::unsafe_erase(key);
-    }
-
-    iterator unsafe_erase(const_iterator first, const_iterator last)
-    {
-        return base_type::unsafe_erase(first, last);
-    }
-
-    void swap(concurrent_unordered_map& table)
-    {
-        base_type::swap(table);
-    }
-
-    // Observers
-    hasher hash_function() const
-    {
-        return my_hash_compare.my_hash_object;
-    }
-
-    key_equal key_eq() const
-    {
-        return my_hash_compare.my_key_compare_object;
-    }
-
-    mapped_type& operator[](const key_type& key)
-    {
-        iterator where = find(key);
-
-        if (where == end())
-        {
-            where = insert(std::pair<key_type, mapped_type>(key, mapped_type())).first;
-        }
-
-        return ((*where).second);
-    }
-
-    mapped_type& at(const key_type& key)
-    {
-        iterator where = find(key);
-
-        if (where == end())
-        {
-            tbb::internal::throw_exception(tbb::internal::eid_invalid_key);
-        }
-
-        return ((*where).second);
-    }
-
-    const mapped_type& at(const key_type& key) const
-    {
-        const_iterator where = find(key);
-
-        if (where == end())
-        {
-            tbb::internal::throw_exception(tbb::internal::eid_invalid_key);
-        }
-
-        return ((*where).second);
-    }
-};
-
-} // namespace interface5
-
-using interface5::concurrent_unordered_map;
-
-} // namespace tbb
-
-#endif// __TBB_concurrent_unordered_map_H
diff --git a/dependencies64/tbb/include/tbb/concurrent_unordered_set.h b/dependencies64/tbb/include/tbb/concurrent_unordered_set.h
deleted file mode 100644 (file)
index 45b550e..0000000
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-/* Container implementations in this header are based on PPL implementations
-   provided by Microsoft. */
-
-#ifndef __TBB_concurrent_unordered_set_H
-#define __TBB_concurrent_unordered_set_H
-
-#include "internal/_concurrent_unordered_impl.h"
-
-namespace tbb
-{
-
-namespace interface5 {
-
-// Template class for hash set traits
-template<typename Key, typename Hash_compare, typename Allocator, bool Allow_multimapping>
-class concurrent_unordered_set_traits
-{
-protected:
-    typedef Key value_type;
-    typedef Key key_type;
-    typedef Hash_compare hash_compare;
-    typedef typename Allocator::template rebind<value_type>::other allocator_type;
-    enum { allow_multimapping = Allow_multimapping };
-
-    concurrent_unordered_set_traits() : my_hash_compare() {}
-    concurrent_unordered_set_traits(const hash_compare& hc) : my_hash_compare(hc) {}
-
-    typedef hash_compare value_compare;
-
-    static const Key& get_key(const value_type& value) {
-        return value;
-    }
-
-    hash_compare my_hash_compare; // the comparator predicate for keys
-};
-
-template <typename Key, typename Hasher = tbb::tbb_hash<Key>, typename Key_equality = std::equal_to<Key>, typename Allocator = tbb::tbb_allocator<Key> >
-class concurrent_unordered_set : public internal::concurrent_unordered_base< concurrent_unordered_set_traits<Key, internal::hash_compare<Key, Hasher, Key_equality>, Allocator, false> >
-{
-    // Base type definitions
-    typedef internal::hash_compare<Key, Hasher, Key_equality> hash_compare;
-    typedef internal::concurrent_unordered_base< concurrent_unordered_set_traits<Key, hash_compare, Allocator, false> > base_type;
-    typedef concurrent_unordered_set_traits<Key, internal::hash_compare<Key, Hasher, Key_equality>, Allocator, false> traits_type;
-    using traits_type::my_hash_compare;
-#if __TBB_EXTRA_DEBUG
-public:
-#endif
-    using traits_type::allow_multimapping;
-public:
-    using base_type::end;
-    using base_type::find;
-    using base_type::insert;
-
-    // Type definitions
-    typedef Key key_type;
-    typedef typename base_type::value_type value_type;
-    typedef Key mapped_type;
-    typedef Hasher hasher;
-    typedef Key_equality key_equal;
-    typedef hash_compare key_compare;
-
-    typedef typename base_type::allocator_type allocator_type;
-    typedef typename base_type::pointer pointer;
-    typedef typename base_type::const_pointer const_pointer;
-    typedef typename base_type::reference reference;
-    typedef typename base_type::const_reference const_reference;
-
-    typedef typename base_type::size_type size_type;
-    typedef typename base_type::difference_type difference_type;
-
-    typedef typename base_type::iterator iterator;
-    typedef typename base_type::const_iterator const_iterator;
-    typedef typename base_type::iterator local_iterator;
-    typedef typename base_type::const_iterator const_local_iterator;
-
-    // Construction/destruction/copying
-    explicit concurrent_unordered_set(size_type n_of_buckets = 8, const hasher& a_hasher = hasher(),
-        const key_equal& a_keyeq = key_equal(), const allocator_type& a = allocator_type())
-        : base_type(n_of_buckets, key_compare(a_hasher, a_keyeq), a)
-    {
-    }
-
-    concurrent_unordered_set(const Allocator& a) : base_type(8, key_compare(), a)
-    {
-    }
-
-    template <typename Iterator>
-    concurrent_unordered_set(Iterator first, Iterator last, size_type n_of_buckets = 8, const hasher& a_hasher = hasher(),
-        const key_equal& a_keyeq = key_equal(), const allocator_type& a = allocator_type())
-        : base_type(n_of_buckets, key_compare(a_hasher, a_keyeq), a)
-    {
-        for (; first != last; ++first)
-            base_type::insert(*first);
-    }
-
-    concurrent_unordered_set(const concurrent_unordered_set& table) : base_type(table)
-    {
-    }
-
-    concurrent_unordered_set(const concurrent_unordered_set& table, const Allocator& a)
-        : base_type(table, a)
-    {
-    }
-
-    concurrent_unordered_set& operator=(const concurrent_unordered_set& table)
-    {
-        base_type::operator=(table);
-        return (*this);
-    }
-
-    iterator unsafe_erase(const_iterator where)
-    {
-        return base_type::unsafe_erase(where);
-    }
-
-    size_type unsafe_erase(const key_type& key)
-    {
-        return base_type::unsafe_erase(key);
-    }
-
-    iterator unsafe_erase(const_iterator first, const_iterator last)
-    {
-        return base_type::unsafe_erase(first, last);
-    }
-
-    void swap(concurrent_unordered_set& table)
-    {
-        base_type::swap(table);
-    }
-
-    // Observers
-    hasher hash_function() const
-    {
-        return my_hash_compare.my_hash_object;
-    }
-
-    key_equal key_eq() const
-    {
-        return my_hash_compare.my_key_compare_object;
-    }
-};
-
-} // namespace interface5
-
-using interface5::concurrent_unordered_set;
-
-} // namespace tbb
-
-#endif// __TBB_concurrent_unordered_set_H
diff --git a/dependencies64/tbb/include/tbb/concurrent_vector.h b/dependencies64/tbb/include/tbb/concurrent_vector.h
deleted file mode 100644 (file)
index b7df14b..0000000
+++ /dev/null
@@ -1,1062 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_concurrent_vector_H
-#define __TBB_concurrent_vector_H
-
-#include "tbb_stddef.h"
-#include "tbb_exception.h"
-#include "atomic.h"
-#include "cache_aligned_allocator.h"
-#include "blocked_range.h"
-#include "tbb_machine.h"
-#include "tbb_profiling.h"
-#include <new>
-#include <cstring>   // for memset()
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <algorithm>
-#include <iterator>
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-#if _MSC_VER==1500 && !__INTEL_COMPILER
-    // VS2008/VC9 seems to have an issue; limits pull in math.h
-    #pragma warning( push )
-    #pragma warning( disable: 4985 )
-#endif
-#include <limits> /* std::numeric_limits */
-#if _MSC_VER==1500 && !__INTEL_COMPILER
-    #pragma warning( pop )
-#endif
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER) && defined(_Wp64)
-    // Workaround for overzealous compiler warnings in /Wp64 mode
-    #pragma warning (push)
-    #pragma warning (disable: 4267)
-#endif
-
-namespace tbb {
-
-template<typename T, class A = cache_aligned_allocator<T> >
-class concurrent_vector;
-
-//! @cond INTERNAL
-namespace internal {
-
-    //! Bad allocation marker
-    static void *const vector_allocation_error_flag = reinterpret_cast<void*>(size_t(63));
-
-    //! Base class of concurrent vector implementation.
-    /** @ingroup containers */
-    class concurrent_vector_base_v3 {
-    protected:
-
-        // Basic types declarations
-        typedef size_t segment_index_t;
-        typedef size_t size_type;
-
-        // Using enumerations due to Mac linking problems of static const variables
-        enum {
-            // Size constants
-            default_initial_segments = 1, // 2 initial items
-            //! Number of slots for segment's pointers inside the class
-            pointers_per_short_table = 3, // to fit into 8 words of entire structure
-            pointers_per_long_table = sizeof(segment_index_t) * 8 // one segment per bit
-        };
-
-        // Segment pointer. Can be zero-initialized
-        struct segment_t {
-            void* array;
-#if TBB_USE_ASSERT
-            ~segment_t() {
-                __TBB_ASSERT( array <= internal::vector_allocation_error_flag, "should have been freed by clear" );
-            }
-#endif /* TBB_USE_ASSERT */
-        };
-        // Data fields
-
-        //! allocator function pointer
-        void* (*vector_allocator_ptr)(concurrent_vector_base_v3 &, size_t);
-
-        //! count of segments in the first block
-        atomic<size_type> my_first_block;
-
-        //! Requested size of vector
-        atomic<size_type> my_early_size;
-
-        //! Pointer to the segments table
-        atomic<segment_t*> my_segment;
-
-        //! embedded storage of segment pointers
-        segment_t my_storage[pointers_per_short_table];
-
-        // Methods
-
-        concurrent_vector_base_v3() {
-            my_early_size = 0;
-            my_first_block = 0; // here is not default_initial_segments
-            for( segment_index_t i = 0; i < pointers_per_short_table; i++)
-                my_storage[i].array = NULL;
-            my_segment = my_storage;
-        }
-        __TBB_EXPORTED_METHOD ~concurrent_vector_base_v3();
-
-        static segment_index_t segment_index_of( size_type index ) {
-            return segment_index_t( __TBB_Log2( index|1 ) );
-        }
-
-        static segment_index_t segment_base( segment_index_t k ) {
-            return (segment_index_t(1)<<k & ~segment_index_t(1));
-        }
-
-        static inline segment_index_t segment_base_index_of( segment_index_t &index ) {
-            segment_index_t k = segment_index_of( index );
-            index -= segment_base(k);
-            return k;
-        }
-
-        static size_type segment_size( segment_index_t k ) {
-            return segment_index_t(1)<<k; // fake value for k==0
-        }
-
-        //! An operation on an n-element array starting at begin.
-        typedef void (__TBB_EXPORTED_FUNC *internal_array_op1)(void* begin, size_type n );
-
-        //! An operation on n-element destination array and n-element source array.
-        typedef void (__TBB_EXPORTED_FUNC *internal_array_op2)(void* dst, const void* src, size_type n );
-
-        //! Internal structure for compact()
-        struct internal_segments_table {
-            segment_index_t first_block;
-            void* table[pointers_per_long_table];
-        };
-
-        void __TBB_EXPORTED_METHOD internal_reserve( size_type n, size_type element_size, size_type max_size );
-        size_type __TBB_EXPORTED_METHOD internal_capacity() const;
-        void internal_grow( size_type start, size_type finish, size_type element_size, internal_array_op2 init, const void *src );
-        size_type __TBB_EXPORTED_METHOD internal_grow_by( size_type delta, size_type element_size, internal_array_op2 init, const void *src );
-        void* __TBB_EXPORTED_METHOD internal_push_back( size_type element_size, size_type& index );
-        segment_index_t __TBB_EXPORTED_METHOD internal_clear( internal_array_op1 destroy );
-        void* __TBB_EXPORTED_METHOD internal_compact( size_type element_size, void *table, internal_array_op1 destroy, internal_array_op2 copy );
-        void __TBB_EXPORTED_METHOD internal_copy( const concurrent_vector_base_v3& src, size_type element_size, internal_array_op2 copy );
-        void __TBB_EXPORTED_METHOD internal_assign( const concurrent_vector_base_v3& src, size_type element_size,
-                              internal_array_op1 destroy, internal_array_op2 assign, internal_array_op2 copy );
-        //! Obsolete
-        void __TBB_EXPORTED_METHOD internal_throw_exception(size_type) const;
-        void __TBB_EXPORTED_METHOD internal_swap(concurrent_vector_base_v3& v);
-
-        void __TBB_EXPORTED_METHOD internal_resize( size_type n, size_type element_size, size_type max_size, const void *src,
-                                                    internal_array_op1 destroy, internal_array_op2 init );
-        size_type __TBB_EXPORTED_METHOD internal_grow_to_at_least_with_result( size_type new_size, size_type element_size, internal_array_op2 init, const void *src );
-
-        //! Deprecated entry point for backwards compatibility to TBB 2.1.
-        void __TBB_EXPORTED_METHOD internal_grow_to_at_least( size_type new_size, size_type element_size, internal_array_op2 init, const void *src );
-private:
-        //! Private functionality
-        class helper;
-        friend class helper;
-    };
-    
-    typedef concurrent_vector_base_v3 concurrent_vector_base;
-
-    //! Meets requirements of a forward iterator for STL and a Value for a blocked_range.*/
-    /** Value is either the T or const T type of the container.
-        @ingroup containers */
-    template<typename Container, typename Value>
-    class vector_iterator 
-    {
-        //! concurrent_vector over which we are iterating.
-        Container* my_vector;
-
-        //! Index into the vector 
-        size_t my_index;
-
-        //! Caches my_vector-&gt;internal_subscript(my_index)
-        /** NULL if cached value is not available */
-        mutable Value* my_item;
-
-        template<typename C, typename T>
-        friend vector_iterator<C,T> operator+( ptrdiff_t offset, const vector_iterator<C,T>& v );
-
-        template<typename C, typename T, typename U>
-        friend bool operator==( const vector_iterator<C,T>& i, const vector_iterator<C,U>& j );
-
-        template<typename C, typename T, typename U>
-        friend bool operator<( const vector_iterator<C,T>& i, const vector_iterator<C,U>& j );
-
-        template<typename C, typename T, typename U>
-        friend ptrdiff_t operator-( const vector_iterator<C,T>& i, const vector_iterator<C,U>& j );
-    
-        template<typename C, typename U>
-        friend class internal::vector_iterator;
-
-#if !defined(_MSC_VER) || defined(__INTEL_COMPILER)
-        template<typename T, class A>
-        friend class tbb::concurrent_vector;
-#else
-public: // workaround for MSVC
-#endif 
-
-        vector_iterator( const Container& vector, size_t index, void *ptr = 0 ) : 
-            my_vector(const_cast<Container*>(&vector)), 
-            my_index(index), 
-            my_item(static_cast<Value*>(ptr))
-        {}
-
-    public:
-        //! Default constructor
-        vector_iterator() : my_vector(NULL), my_index(~size_t(0)), my_item(NULL) {}
-
-        vector_iterator( const vector_iterator<Container,typename Container::value_type>& other ) :
-            my_vector(other.my_vector),
-            my_index(other.my_index),
-            my_item(other.my_item)
-        {}
-
-        vector_iterator operator+( ptrdiff_t offset ) const {
-            return vector_iterator( *my_vector, my_index+offset );
-        }
-        vector_iterator &operator+=( ptrdiff_t offset ) {
-            my_index+=offset;
-            my_item = NULL;
-            return *this;
-        }
-        vector_iterator operator-( ptrdiff_t offset ) const {
-            return vector_iterator( *my_vector, my_index-offset );
-        }
-        vector_iterator &operator-=( ptrdiff_t offset ) {
-            my_index-=offset;
-            my_item = NULL;
-            return *this;
-        }
-        Value& operator*() const {
-            Value* item = my_item;
-            if( !item ) {
-                item = my_item = &my_vector->internal_subscript(my_index);
-            }
-            __TBB_ASSERT( item==&my_vector->internal_subscript(my_index), "corrupt cache" );
-            return *item;
-        }
-        Value& operator[]( ptrdiff_t k ) const {
-            return my_vector->internal_subscript(my_index+k);
-        }
-        Value* operator->() const {return &operator*();}
-
-        //! Pre increment
-        vector_iterator& operator++() {
-            size_t k = ++my_index;
-            if( my_item ) {
-                // Following test uses 2's-complement wizardry
-                if( (k& (k-2))==0 ) {
-                    // k is a power of two that is at least k-2
-                    my_item= NULL;
-                } else {
-                    ++my_item;
-                }
-            }
-            return *this;
-        }
-
-        //! Pre decrement
-        vector_iterator& operator--() {
-            __TBB_ASSERT( my_index>0, "operator--() applied to iterator already at beginning of concurrent_vector" ); 
-            size_t k = my_index--;
-            if( my_item ) {
-                // Following test uses 2's-complement wizardry
-                if( (k& (k-2))==0 ) {
-                    // k is a power of two that is at least k-2  
-                    my_item= NULL;
-                } else {
-                    --my_item;
-                }
-            }
-            return *this;
-        }
-
-        //! Post increment
-        vector_iterator operator++(int) {
-            vector_iterator result = *this;
-            operator++();
-            return result;
-        }
-
-        //! Post decrement
-        vector_iterator operator--(int) {
-            vector_iterator result = *this;
-            operator--();
-            return result;
-        }
-
-        // STL support
-
-        typedef ptrdiff_t difference_type;
-        typedef Value value_type;
-        typedef Value* pointer;
-        typedef Value& reference;
-        typedef std::random_access_iterator_tag iterator_category;
-    };
-
-    template<typename Container, typename T>
-    vector_iterator<Container,T> operator+( ptrdiff_t offset, const vector_iterator<Container,T>& v ) {
-        return vector_iterator<Container,T>( *v.my_vector, v.my_index+offset );
-    }
-
-    template<typename Container, typename T, typename U>
-    bool operator==( const vector_iterator<Container,T>& i, const vector_iterator<Container,U>& j ) {
-        return i.my_index==j.my_index && i.my_vector == j.my_vector;
-    }
-
-    template<typename Container, typename T, typename U>
-    bool operator!=( const vector_iterator<Container,T>& i, const vector_iterator<Container,U>& j ) {
-        return !(i==j);
-    }
-
-    template<typename Container, typename T, typename U>
-    bool operator<( const vector_iterator<Container,T>& i, const vector_iterator<Container,U>& j ) {
-        return i.my_index<j.my_index;
-    }
-
-    template<typename Container, typename T, typename U>
-    bool operator>( const vector_iterator<Container,T>& i, const vector_iterator<Container,U>& j ) {
-        return j<i;
-    }
-
-    template<typename Container, typename T, typename U>
-    bool operator>=( const vector_iterator<Container,T>& i, const vector_iterator<Container,U>& j ) {
-        return !(i<j);
-    }
-
-    template<typename Container, typename T, typename U>
-    bool operator<=( const vector_iterator<Container,T>& i, const vector_iterator<Container,U>& j ) {
-        return !(j<i);
-    }
-
-    template<typename Container, typename T, typename U>
-    ptrdiff_t operator-( const vector_iterator<Container,T>& i, const vector_iterator<Container,U>& j ) {
-        return ptrdiff_t(i.my_index)-ptrdiff_t(j.my_index);
-    }
-
-    template<typename T, class A>
-    class allocator_base {
-    public:
-        typedef typename A::template
-            rebind<T>::other allocator_type;
-        allocator_type my_allocator;
-
-        allocator_base(const allocator_type &a = allocator_type() ) : my_allocator(a) {}
-    };
-
-} // namespace internal
-//! @endcond
-
-//! Concurrent vector container
-/** concurrent_vector is a container having the following main properties:
-    - It provides random indexed access to its elements. The index of the first element is 0.
-    - It ensures safe concurrent growing its size (different threads can safely append new elements).
-    - Adding new elements does not invalidate existing iterators and does not change indices of existing items.
-
-@par Compatibility
-    The class meets all Container Requirements and Reversible Container Requirements from
-    C++ Standard (See ISO/IEC 14882:2003(E), clause 23.1). But it doesn't meet
-    Sequence Requirements due to absence of insert() and erase() methods.
-
-@par Exception Safety
-    Methods working with memory allocation and/or new elements construction can throw an
-    exception if allocator fails to allocate memory or element's default constructor throws one.
-    Concurrent vector's element of type T must conform to the following requirements:
-    - Throwing an exception is forbidden for destructor of T.
-    - Default constructor of T must not throw an exception OR its non-virtual destructor must safely work when its object memory is zero-initialized.
-    .
-    Otherwise, the program's behavior is undefined.
-@par
-    If an exception happens inside growth or assignment operation, an instance of the vector becomes invalid unless it is stated otherwise in the method documentation.
-    Invalid state means:
-    - There are no guaranties that all items were initialized by a constructor. The rest of items is zero-filled, including item where exception happens.
-    - An invalid vector instance cannot be repaired; it is unable to grow anymore.
-    - Size and capacity reported by the vector are incorrect, and calculated as if the failed operation were successful.
-    - Attempt to access not allocated elements using operator[] or iterators results in access violation or segmentation fault exception, and in case of using at() method a C++ exception is thrown.
-    .
-    If a concurrent grow operation successfully completes, all the elements it has added to the vector will remain valid and accessible even if one of subsequent grow operations fails.
-
-@par Fragmentation
-    Unlike an STL vector, a concurrent_vector does not move existing elements if it needs
-    to allocate more memory. The container is divided into a series of contiguous arrays of
-    elements. The first reservation, growth, or assignment operation determines the size of
-    the first array. Using small number of elements as initial size incurs fragmentation that
-    may increase element access time. Internal layout can be optimized by method compact() that
-    merges several smaller arrays into one solid.
-
-@par Changes since TBB 2.1
-    - Fixed guarantees of concurrent_vector::size() and grow_to_at_least() methods to assure elements are allocated.
-    - Methods end()/rbegin()/back() are partly thread-safe since they use size() to get the end of vector
-    - Added resize() methods (not thread-safe)
-    - Added cbegin/cend/crbegin/crend methods
-    - Changed return type of methods grow* and push_back to iterator
-
-@par Changes since TBB 2.0
-    - Implemented exception-safety guaranties
-    - Added template argument for allocator
-    - Added allocator argument in constructors
-    - Faster index calculation
-    - First growth call specifies a number of segments to be merged in the first allocation.
-    - Fixed memory blow up for swarm of vector's instances of small size
-    - Added grow_by(size_type n, const_reference t) growth using copying constructor to init new items. 
-    - Added STL-like constructors.
-    - Added operators ==, < and derivatives
-    - Added at() method, approved for using after an exception was thrown inside the vector
-    - Added get_allocator() method.
-    - Added assign() methods
-    - Added compact() method to defragment first segments
-    - Added swap() method
-    - range() defaults on grainsize = 1 supporting auto grainsize algorithms. 
-
-    @ingroup containers */
-template<typename T, class A>
-class concurrent_vector: protected internal::allocator_base<T, A>,
-                         private internal::concurrent_vector_base {
-private:
-    template<typename I>
-    class generic_range_type: public blocked_range<I> {
-    public:
-        typedef T value_type;
-        typedef T& reference;
-        typedef const T& const_reference;
-        typedef I iterator;
-        typedef ptrdiff_t difference_type;
-        generic_range_type( I begin_, I end_, size_t grainsize_ = 1) : blocked_range<I>(begin_,end_,grainsize_) {} 
-        template<typename U>
-        generic_range_type( const generic_range_type<U>& r) : blocked_range<I>(r.begin(),r.end(),r.grainsize()) {} 
-        generic_range_type( generic_range_type& r, split ) : blocked_range<I>(r,split()) {}
-    };
-
-    template<typename C, typename U>
-    friend class internal::vector_iterator;
-public:
-    //------------------------------------------------------------------------
-    // STL compatible types
-    //------------------------------------------------------------------------
-    typedef internal::concurrent_vector_base_v3::size_type size_type;
-    typedef typename internal::allocator_base<T, A>::allocator_type allocator_type;
-
-    typedef T value_type;
-    typedef ptrdiff_t difference_type;
-    typedef T& reference;
-    typedef const T& const_reference;
-    typedef T *pointer;
-    typedef const T *const_pointer;
-
-    typedef internal::vector_iterator<concurrent_vector,T> iterator;
-    typedef internal::vector_iterator<concurrent_vector,const T> const_iterator;
-
-#if !defined(_MSC_VER) || _CPPLIB_VER>=300 
-    // Assume ISO standard definition of std::reverse_iterator
-    typedef std::reverse_iterator<iterator> reverse_iterator;
-    typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
-#else
-    // Use non-standard std::reverse_iterator
-    typedef std::reverse_iterator<iterator,T,T&,T*> reverse_iterator;
-    typedef std::reverse_iterator<const_iterator,T,const T&,const T*> const_reverse_iterator;
-#endif /* defined(_MSC_VER) && (_MSC_VER<1300) */
-
-    //------------------------------------------------------------------------
-    // Parallel algorithm support
-    //------------------------------------------------------------------------
-    typedef generic_range_type<iterator> range_type;
-    typedef generic_range_type<const_iterator> const_range_type;
-
-    //------------------------------------------------------------------------
-    // STL compatible constructors & destructors
-    //------------------------------------------------------------------------
-
-    //! Construct empty vector.
-    explicit concurrent_vector(const allocator_type &a = allocator_type())
-        : internal::allocator_base<T, A>(a), internal::concurrent_vector_base()
-    {
-        vector_allocator_ptr = &internal_allocator;
-    }
-
-    //! Copying constructor
-    concurrent_vector( const concurrent_vector& vector, const allocator_type& a = allocator_type() )
-        : internal::allocator_base<T, A>(a), internal::concurrent_vector_base()
-    {
-        vector_allocator_ptr = &internal_allocator;
-        __TBB_TRY {
-            internal_copy(vector, sizeof(T), &copy_array);
-        } __TBB_CATCH(...) {
-            segment_t *table = my_segment;
-            internal_free_segments( reinterpret_cast<void**>(table), internal_clear(&destroy_array), my_first_block );
-            __TBB_RETHROW();
-        }
-    }
-
-    //! Copying constructor for vector with different allocator type
-    template<class M>
-    concurrent_vector( const concurrent_vector<T, M>& vector, const allocator_type& a = allocator_type() )
-        : internal::allocator_base<T, A>(a), internal::concurrent_vector_base()
-    {
-        vector_allocator_ptr = &internal_allocator;
-        __TBB_TRY {
-            internal_copy(vector.internal_vector_base(), sizeof(T), &copy_array);
-        } __TBB_CATCH(...) {
-            segment_t *table = my_segment;
-            internal_free_segments( reinterpret_cast<void**>(table), internal_clear(&destroy_array), my_first_block );
-            __TBB_RETHROW();
-        }
-    }
-
-    //! Construction with initial size specified by argument n
-    explicit concurrent_vector(size_type n)
-    {
-        vector_allocator_ptr = &internal_allocator;
-        __TBB_TRY {
-            internal_resize( n, sizeof(T), max_size(), NULL, &destroy_array, &initialize_array );
-        } __TBB_CATCH(...) {
-            segment_t *table = my_segment;
-            internal_free_segments( reinterpret_cast<void**>(table), internal_clear(&destroy_array), my_first_block );
-            __TBB_RETHROW();
-        }
-    }
-
-    //! Construction with initial size specified by argument n, initialization by copying of t, and given allocator instance
-    concurrent_vector(size_type n, const_reference t, const allocator_type& a = allocator_type())
-        : internal::allocator_base<T, A>(a)
-    {
-        vector_allocator_ptr = &internal_allocator;
-        __TBB_TRY {
-            internal_resize( n, sizeof(T), max_size(), static_cast<const void*>(&t), &destroy_array, &initialize_array_by );
-        } __TBB_CATCH(...) {
-            segment_t *table = my_segment;
-            internal_free_segments( reinterpret_cast<void**>(table), internal_clear(&destroy_array), my_first_block );
-            __TBB_RETHROW();
-        }
-    }
-
-    //! Construction with copying iteration range and given allocator instance
-    template<class I>
-    concurrent_vector(I first, I last, const allocator_type &a = allocator_type())
-        : internal::allocator_base<T, A>(a)
-    {
-        vector_allocator_ptr = &internal_allocator;
-        __TBB_TRY {
-            internal_assign_range(first, last, static_cast<is_integer_tag<std::numeric_limits<I>::is_integer> *>(0) );
-        } __TBB_CATCH(...) {
-            segment_t *table = my_segment;
-            internal_free_segments( reinterpret_cast<void**>(table), internal_clear(&destroy_array), my_first_block );
-            __TBB_RETHROW();
-        }
-    }
-
-    //! Assignment
-    concurrent_vector& operator=( const concurrent_vector& vector ) {
-        if( this != &vector )
-            internal_assign(vector, sizeof(T), &destroy_array, &assign_array, &copy_array);
-        return *this;
-    }
-
-    //! Assignment for vector with different allocator type
-    template<class M>
-    concurrent_vector& operator=( const concurrent_vector<T, M>& vector ) {
-        if( static_cast<void*>( this ) != static_cast<const void*>( &vector ) )
-            internal_assign(vector.internal_vector_base(),
-                sizeof(T), &destroy_array, &assign_array, &copy_array);
-        return *this;
-    }
-
-    //------------------------------------------------------------------------
-    // Concurrent operations
-    //------------------------------------------------------------------------
-    //! Grow by "delta" elements.
-#if TBB_DEPRECATED
-    /** Returns old size. */
-    size_type grow_by( size_type delta ) {
-        return delta ? internal_grow_by( delta, sizeof(T), &initialize_array, NULL ) : my_early_size;
-    }
-#else
-    /** Returns iterator pointing to the first new element. */
-    iterator grow_by( size_type delta ) {
-        return iterator(*this, delta ? internal_grow_by( delta, sizeof(T), &initialize_array, NULL ) : my_early_size);
-    }
-#endif
-
-    //! Grow by "delta" elements using copying constuctor.
-#if TBB_DEPRECATED
-    /** Returns old size. */
-    size_type grow_by( size_type delta, const_reference t ) {
-        return delta ? internal_grow_by( delta, sizeof(T), &initialize_array_by, static_cast<const void*>(&t) ) : my_early_size;
-    }
-#else
-    /** Returns iterator pointing to the first new element. */
-    iterator grow_by( size_type delta, const_reference t ) {
-        return iterator(*this, delta ? internal_grow_by( delta, sizeof(T), &initialize_array_by, static_cast<const void*>(&t) ) : my_early_size);
-    }
-#endif
-
-    //! Append minimal sequence of elements such that size()>=n.  
-#if TBB_DEPRECATED
-    /** The new elements are default constructed.  Blocks until all elements in range [0..n) are allocated.
-        May return while other elements are being constructed by other threads. */
-    void grow_to_at_least( size_type n ) {
-        if( n ) internal_grow_to_at_least_with_result( n, sizeof(T), &initialize_array, NULL );
-    };
-#else
-    /** The new elements are default constructed.  Blocks until all elements in range [0..n) are allocated.
-        May return while other elements are being constructed by other threads.
-        Returns iterator that points to beginning of appended sequence.
-        If no elements were appended, returns iterator pointing to nth element. */
-    iterator grow_to_at_least( size_type n ) {
-        size_type m=0;
-        if( n ) {
-            m = internal_grow_to_at_least_with_result( n, sizeof(T), &initialize_array, NULL );
-            if( m>n ) m=n;
-        }
-        return iterator(*this, m);
-    };
-#endif
-
-    //! Push item 
-#if TBB_DEPRECATED
-    size_type push_back( const_reference item )
-#else
-    /** Returns iterator pointing to the new element. */
-    iterator push_back( const_reference item )
-#endif
-    {
-        size_type k;
-        void *ptr = internal_push_back(sizeof(T),k);
-        internal_loop_guide loop(1, ptr);
-        loop.init(&item);
-#if TBB_DEPRECATED
-        return k;
-#else
-        return iterator(*this, k, ptr);
-#endif
-    }
-
-    //! Get reference to element at given index.
-    /** This method is thread-safe for concurrent reads, and also while growing the vector,
-        as long as the calling thread has checked that index&lt;size(). */
-    reference operator[]( size_type index ) {
-        return internal_subscript(index);
-    }
-
-    //! Get const reference to element at given index.
-    const_reference operator[]( size_type index ) const {
-        return internal_subscript(index);
-    }
-
-    //! Get reference to element at given index. Throws exceptions on errors.
-    reference at( size_type index ) {
-        return internal_subscript_with_exceptions(index);
-    }
-
-    //! Get const reference to element at given index. Throws exceptions on errors.
-    const_reference at( size_type index ) const {
-        return internal_subscript_with_exceptions(index);
-    }
-
-    //! Get range for iterating with parallel algorithms
-    range_type range( size_t grainsize = 1) {
-        return range_type( begin(), end(), grainsize );
-    }
-
-    //! Get const range for iterating with parallel algorithms
-    const_range_type range( size_t grainsize = 1 ) const {
-        return const_range_type( begin(), end(), grainsize );
-    }
-    //------------------------------------------------------------------------
-    // Capacity
-    //------------------------------------------------------------------------
-    //! Return size of vector. It may include elements under construction
-    size_type size() const {
-        size_type sz = my_early_size, cp = internal_capacity();
-        return cp < sz ? cp : sz;
-    }
-
-    //! Return false if vector is not empty or has elements under construction at least.
-    bool empty() const {return !my_early_size;}
-
-    //! Maximum size to which array can grow without allocating more memory. Concurrent allocations are not included in the value.
-    size_type capacity() const {return internal_capacity();}
-
-    //! Allocate enough space to grow to size n without having to allocate more memory later.
-    /** Like most of the methods provided for STL compatibility, this method is *not* thread safe. 
-        The capacity afterwards may be bigger than the requested reservation. */
-    void reserve( size_type n ) {
-        if( n )
-            internal_reserve(n, sizeof(T), max_size());
-    }
-
-    //! Resize the vector. Not thread-safe.
-    void resize( size_type n ) {
-        internal_resize( n, sizeof(T), max_size(), NULL, &destroy_array, &initialize_array );
-    }
-    
-    //! Resize the vector, copy t for new elements. Not thread-safe.
-    void resize( size_type n, const_reference t ) {
-        internal_resize( n, sizeof(T), max_size(), static_cast<const void*>(&t), &destroy_array, &initialize_array_by );
-    }
-   
-#if TBB_DEPRECATED 
-    //! An alias for shrink_to_fit()
-    void compact() {shrink_to_fit();}
-#endif /* TBB_DEPRECATED */
-
-    //! Optimize memory usage and fragmentation.
-    void shrink_to_fit();
-
-    //! Upper bound on argument to reserve.
-    size_type max_size() const {return (~size_type(0))/sizeof(T);}
-
-    //------------------------------------------------------------------------
-    // STL support
-    //------------------------------------------------------------------------
-
-    //! start iterator
-    iterator begin() {return iterator(*this,0);}
-    //! end iterator
-    iterator end() {return iterator(*this,size());}
-    //! start const iterator
-    const_iterator begin() const {return const_iterator(*this,0);}
-    //! end const iterator
-    const_iterator end() const {return const_iterator(*this,size());}
-    //! start const iterator
-    const_iterator cbegin() const {return const_iterator(*this,0);}
-    //! end const iterator
-    const_iterator cend() const {return const_iterator(*this,size());}
-    //! reverse start iterator
-    reverse_iterator rbegin() {return reverse_iterator(end());}
-    //! reverse end iterator
-    reverse_iterator rend() {return reverse_iterator(begin());}
-    //! reverse start const iterator
-    const_reverse_iterator rbegin() const {return const_reverse_iterator(end());}
-    //! reverse end const iterator
-    const_reverse_iterator rend() const {return const_reverse_iterator(begin());}
-    //! reverse start const iterator
-    const_reverse_iterator crbegin() const {return const_reverse_iterator(end());}
-    //! reverse end const iterator
-    const_reverse_iterator crend() const {return const_reverse_iterator(begin());}
-    //! the first item
-    reference front() {
-        __TBB_ASSERT( size()>0, NULL);
-        return static_cast<T*>(my_segment[0].array)[0];
-    }
-    //! the first item const
-    const_reference front() const {
-        __TBB_ASSERT( size()>0, NULL);
-        return static_cast<const T*>(my_segment[0].array)[0];
-    }
-    //! the last item
-    reference back() {
-        __TBB_ASSERT( size()>0, NULL);
-        return internal_subscript( size()-1 );
-    }
-    //! the last item const
-    const_reference back() const {
-        __TBB_ASSERT( size()>0, NULL);
-        return internal_subscript( size()-1 );
-    }
-    //! return allocator object
-    allocator_type get_allocator() const { return this->my_allocator; }
-
-    //! assign n items by copying t item
-    void assign(size_type n, const_reference t) {
-        clear();
-        internal_resize( n, sizeof(T), max_size(), static_cast<const void*>(&t), &destroy_array, &initialize_array_by );
-    }
-
-    //! assign range [first, last)
-    template<class I>
-    void assign(I first, I last) {
-        clear(); internal_assign_range( first, last, static_cast<is_integer_tag<std::numeric_limits<I>::is_integer> *>(0) );
-    }
-
-    //! swap two instances
-    void swap(concurrent_vector &vector) {
-        if( this != &vector ) {
-            concurrent_vector_base_v3::internal_swap(static_cast<concurrent_vector_base_v3&>(vector));
-            std::swap(this->my_allocator, vector.my_allocator);
-        }
-    }
-
-    //! Clear container while keeping memory allocated.
-    /** To free up the memory, use in conjunction with method compact(). Not thread safe **/
-    void clear() {
-        internal_clear(&destroy_array);
-    }
-
-    //! Clear and destroy vector.
-    ~concurrent_vector() {
-        segment_t *table = my_segment;
-        internal_free_segments( reinterpret_cast<void**>(table), internal_clear(&destroy_array), my_first_block );
-        // base class destructor call should be then
-    }
-
-    const internal::concurrent_vector_base_v3 &internal_vector_base() const { return *this; }
-private:
-    //! Allocate k items
-    static void *internal_allocator(internal::concurrent_vector_base_v3 &vb, size_t k) {
-        return static_cast<concurrent_vector<T, A>&>(vb).my_allocator.allocate(k);
-    }
-    //! Free k segments from table
-    void internal_free_segments(void *table[], segment_index_t k, segment_index_t first_block);
-
-    //! Get reference to element at given index.
-    T& internal_subscript( size_type index ) const;
-
-    //! Get reference to element at given index with errors checks
-    T& internal_subscript_with_exceptions( size_type index ) const;
-
-    //! assign n items by copying t
-    void internal_assign_n(size_type n, const_pointer p) {
-        internal_resize( n, sizeof(T), max_size(), static_cast<const void*>(p), &destroy_array, p? &initialize_array_by : &initialize_array );
-    }
-
-    //! helper class
-    template<bool B> class is_integer_tag;
-
-    //! assign integer items by copying when arguments are treated as iterators. See C++ Standard 2003 23.1.1p9
-    template<class I>
-    void internal_assign_range(I first, I last, is_integer_tag<true> *) {
-        internal_assign_n(static_cast<size_type>(first), &static_cast<T&>(last));
-    }
-    //! inline proxy assign by iterators
-    template<class I>
-    void internal_assign_range(I first, I last, is_integer_tag<false> *) {
-        internal_assign_iterators(first, last);
-    }
-    //! assign by iterators
-    template<class I>
-    void internal_assign_iterators(I first, I last);
-
-    //! Construct n instances of T, starting at "begin".
-    static void __TBB_EXPORTED_FUNC initialize_array( void* begin, const void*, size_type n );
-
-    //! Construct n instances of T, starting at "begin".
-    static void __TBB_EXPORTED_FUNC initialize_array_by( void* begin, const void* src, size_type n );
-
-    //! Construct n instances of T, starting at "begin".
-    static void __TBB_EXPORTED_FUNC copy_array( void* dst, const void* src, size_type n );
-
-    //! Assign n instances of T, starting at "begin".
-    static void __TBB_EXPORTED_FUNC assign_array( void* dst, const void* src, size_type n );
-
-    //! Destroy n instances of T, starting at "begin".
-    static void __TBB_EXPORTED_FUNC destroy_array( void* begin, size_type n );
-
-    //! Exception-aware helper class for filling a segment by exception-danger operators of user class
-    class internal_loop_guide : internal::no_copy {
-    public:
-        const pointer array;
-        const size_type n;
-        size_type i;
-        internal_loop_guide(size_type ntrials, void *ptr)
-            : array(static_cast<pointer>(ptr)), n(ntrials), i(0) {}
-        void init() {   for(; i < n; ++i) new( &array[i] ) T(); }
-        void init(const void *src) { for(; i < n; ++i) new( &array[i] ) T(*static_cast<const T*>(src)); }
-        void copy(const void *src) { for(; i < n; ++i) new( &array[i] ) T(static_cast<const T*>(src)[i]); }
-        void assign(const void *src) { for(; i < n; ++i) array[i] = static_cast<const T*>(src)[i]; }
-        template<class I> void iterate(I &src) { for(; i < n; ++i, ++src) new( &array[i] ) T( *src ); }
-        ~internal_loop_guide() {
-            if(i < n) // if exception raised, do zerroing on the rest of items
-                std::memset(array+i, 0, (n-i)*sizeof(value_type));
-        }
-    };
-};
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER) 
-#pragma warning (push)
-#pragma warning (disable: 4701) // potentially uninitialized local variable "old"
-#endif
-template<typename T, class A>
-void concurrent_vector<T, A>::shrink_to_fit() {
-    internal_segments_table old;
-    __TBB_TRY {
-        if( internal_compact( sizeof(T), &old, &destroy_array, &copy_array ) )
-            internal_free_segments( old.table, pointers_per_long_table, old.first_block ); // free joined and unnecessary segments
-    } __TBB_CATCH(...) {
-        if( old.first_block ) // free segment allocated for compacting. Only for support of exceptions in ctor of user T[ype]
-            internal_free_segments( old.table, 1, old.first_block );
-        __TBB_RETHROW();
-    }
-}
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER) 
-#pragma warning (pop)
-#endif // warning 4701 is back 
-
-template<typename T, class A>
-void concurrent_vector<T, A>::internal_free_segments(void *table[], segment_index_t k, segment_index_t first_block) {
-    // Free the arrays
-    while( k > first_block ) {
-        --k;
-        T* array = static_cast<T*>(table[k]);
-        table[k] = NULL;
-        if( array > internal::vector_allocation_error_flag ) // check for correct segment pointer
-            this->my_allocator.deallocate( array, segment_size(k) );
-    }
-    T* array = static_cast<T*>(table[0]);
-    if( array > internal::vector_allocation_error_flag ) {
-        __TBB_ASSERT( first_block > 0, NULL );
-        while(k > 0) table[--k] = NULL;
-        this->my_allocator.deallocate( array, segment_size(first_block) );
-    }
-}
-
-template<typename T, class A>
-T& concurrent_vector<T, A>::internal_subscript( size_type index ) const {
-    __TBB_ASSERT( index < my_early_size, "index out of bounds" );
-    size_type j = index;
-    segment_index_t k = segment_base_index_of( j );
-    __TBB_ASSERT( (segment_t*)my_segment != my_storage || k < pointers_per_short_table, "index is being allocated" );
-    // no need in __TBB_load_with_acquire since thread works in own space or gets 
-    T* array = static_cast<T*>( tbb::internal::itt_hide_load_word(my_segment[k].array));
-    __TBB_ASSERT( array != internal::vector_allocation_error_flag, "the instance is broken by bad allocation. Use at() instead" );
-    __TBB_ASSERT( array, "index is being allocated" );
-    return array[j];
-}
-
-template<typename T, class A>
-T& concurrent_vector<T, A>::internal_subscript_with_exceptions( size_type index ) const {
-    if( index >= my_early_size )
-        internal::throw_exception(internal::eid_out_of_range); // throw std::out_of_range
-    size_type j = index;
-    segment_index_t k = segment_base_index_of( j );
-    if( (segment_t*)my_segment == my_storage && k >= pointers_per_short_table )
-        internal::throw_exception(internal::eid_segment_range_error); // throw std::range_error
-    void *array = my_segment[k].array; // no need in __TBB_load_with_acquire
-    if( array <= internal::vector_allocation_error_flag ) // check for correct segment pointer
-        internal::throw_exception(internal::eid_index_range_error); // throw std::range_error
-    return static_cast<T*>(array)[j];
-}
-
-template<typename T, class A> template<class I>
-void concurrent_vector<T, A>::internal_assign_iterators(I first, I last) {
-    __TBB_ASSERT(my_early_size == 0, NULL);
-    size_type n = std::distance(first, last);
-    if( !n ) return;
-    internal_reserve(n, sizeof(T), max_size());
-    my_early_size = n;
-    segment_index_t k = 0;
-    size_type sz = segment_size( my_first_block );
-    while( sz < n ) {
-        internal_loop_guide loop(sz, my_segment[k].array);
-        loop.iterate(first);
-        n -= sz;
-        if( !k ) k = my_first_block;
-        else { ++k; sz <<= 1; }
-    }
-    internal_loop_guide loop(n, my_segment[k].array);
-    loop.iterate(first);
-}
-
-template<typename T, class A>
-void concurrent_vector<T, A>::initialize_array( void* begin, const void *, size_type n ) {
-    internal_loop_guide loop(n, begin); loop.init();
-}
-
-template<typename T, class A>
-void concurrent_vector<T, A>::initialize_array_by( void* begin, const void *src, size_type n ) {
-    internal_loop_guide loop(n, begin); loop.init(src);
-}
-
-template<typename T, class A>
-void concurrent_vector<T, A>::copy_array( void* dst, const void* src, size_type n ) {
-    internal_loop_guide loop(n, dst); loop.copy(src);
-}
-
-template<typename T, class A>
-void concurrent_vector<T, A>::assign_array( void* dst, const void* src, size_type n ) {
-    internal_loop_guide loop(n, dst); loop.assign(src);
-}
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER) 
-    // Workaround for overzealous compiler warning
-    #pragma warning (push)
-    #pragma warning (disable: 4189)
-#endif
-template<typename T, class A>
-void concurrent_vector<T, A>::destroy_array( void* begin, size_type n ) {
-    T* array = static_cast<T*>(begin);
-    for( size_type j=n; j>0; --j )
-        array[j-1].~T(); // destructors are supposed to not throw any exceptions
-}
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER) 
-    #pragma warning (pop)
-#endif // warning 4189 is back 
-
-// concurrent_vector's template functions
-template<typename T, class A1, class A2>
-inline bool operator==(const concurrent_vector<T, A1> &a, const concurrent_vector<T, A2> &b) {
-    // Simply:    return a.size() == b.size() && std::equal(a.begin(), a.end(), b.begin());
-    if(a.size() != b.size()) return false;
-    typename concurrent_vector<T, A1>::const_iterator i(a.begin());
-    typename concurrent_vector<T, A2>::const_iterator j(b.begin());
-    for(; i != a.end(); ++i, ++j)
-        if( !(*i == *j) ) return false;
-    return true;
-}
-
-template<typename T, class A1, class A2>
-inline bool operator!=(const concurrent_vector<T, A1> &a, const concurrent_vector<T, A2> &b)
-{    return !(a == b); }
-
-template<typename T, class A1, class A2>
-inline bool operator<(const concurrent_vector<T, A1> &a, const concurrent_vector<T, A2> &b)
-{    return (std::lexicographical_compare(a.begin(), a.end(), b.begin(), b.end())); }
-
-template<typename T, class A1, class A2>
-inline bool operator>(const concurrent_vector<T, A1> &a, const concurrent_vector<T, A2> &b)
-{    return b < a; }
-
-template<typename T, class A1, class A2>
-inline bool operator<=(const concurrent_vector<T, A1> &a, const concurrent_vector<T, A2> &b)
-{    return !(b < a); }
-
-template<typename T, class A1, class A2>
-inline bool operator>=(const concurrent_vector<T, A1> &a, const concurrent_vector<T, A2> &b)
-{    return !(a < b); }
-
-template<typename T, class A>
-inline void swap(concurrent_vector<T, A> &a, concurrent_vector<T, A> &b)
-{    a.swap( b ); }
-
-} // namespace tbb
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER) && defined(_Wp64)
-    #pragma warning (pop)
-#endif // warning 4267 is back
-
-#endif /* __TBB_concurrent_vector_H */
diff --git a/dependencies64/tbb/include/tbb/critical_section.h b/dependencies64/tbb/include/tbb/critical_section.h
deleted file mode 100644 (file)
index ea712d1..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef _TBB_CRITICAL_SECTION_H_
-#define _TBB_CRITICAL_SECTION_H_
-
-#if _WIN32||_WIN64
-#include "machine/windows_api.h"
-#else
-#include <pthread.h>
-#include <errno.h>
-#endif  // _WIN32||WIN64
-
-#include "tbb_stddef.h"
-#include "tbb_thread.h"
-#include "tbb_exception.h"
-
-#include "tbb_profiling.h"
-
-namespace tbb {
-
-    namespace internal {
-class critical_section_v4 : internal::no_copy {
-#if _WIN32||_WIN64
-    CRITICAL_SECTION my_impl;
-#else
-    pthread_mutex_t my_impl;
-#endif
-    tbb_thread::id my_tid;
-public:
-
-    void __TBB_EXPORTED_METHOD internal_construct();
-
-    critical_section_v4() { 
-#if _WIN32||_WIN64
-        InitializeCriticalSection(&my_impl);
-#else
-        pthread_mutex_init(&my_impl, NULL);
-#endif
-        internal_construct();
-    }
-
-    ~critical_section_v4() {
-        __TBB_ASSERT(my_tid == tbb_thread::id(), "Destroying a still-held critical section");
-#if _WIN32||_WIN64
-        DeleteCriticalSection(&my_impl); 
-#else
-        pthread_mutex_destroy(&my_impl);
-#endif
-    }
-
-    class scoped_lock : internal::no_copy {
-    private:
-        critical_section_v4 &my_crit;
-    public:
-        scoped_lock( critical_section_v4& lock_me) :my_crit(lock_me) {
-            my_crit.lock();
-        }
-
-        ~scoped_lock() {
-            my_crit.unlock();
-        }
-    };
-
-    void lock() { 
-        tbb_thread::id local_tid = this_tbb_thread::get_id();
-        if(local_tid == my_tid) throw_exception( eid_improper_lock );
-#if _WIN32||_WIN64
-        EnterCriticalSection( &my_impl );
-#else
-        int rval = pthread_mutex_lock(&my_impl);
-        __TBB_ASSERT_EX(!rval, "critical_section::lock: pthread_mutex_lock failed");
-#endif
-        __TBB_ASSERT(my_tid == tbb_thread::id(), NULL);
-        my_tid = local_tid;
-    }
-
-    bool try_lock() {
-        bool gotlock;
-        tbb_thread::id local_tid = this_tbb_thread::get_id();
-        if(local_tid == my_tid) return false;
-#if _WIN32||_WIN64
-        gotlock = TryEnterCriticalSection( &my_impl ) != 0;
-#else
-        int rval = pthread_mutex_trylock(&my_impl);
-        // valid returns are 0 (locked) and [EBUSY]
-        __TBB_ASSERT(rval == 0 || rval == EBUSY, "critical_section::trylock: pthread_mutex_trylock failed");
-        gotlock = rval == 0;
-#endif
-        if(gotlock)  {
-            my_tid = local_tid;
-        }
-        return gotlock;
-    }
-
-    void unlock() {
-        __TBB_ASSERT(this_tbb_thread::get_id() == my_tid, "thread unlocking critical_section is not thread that locked it");
-        my_tid = tbb_thread::id();
-#if _WIN32||_WIN64
-        LeaveCriticalSection( &my_impl );
-#else
-        int rval = pthread_mutex_unlock(&my_impl);
-        __TBB_ASSERT_EX(!rval, "critical_section::unlock: pthread_mutex_unlock failed");
-#endif
-    }
-
-    static const bool is_rw_mutex = false;
-    static const bool is_recursive_mutex = false;
-    static const bool is_fair_mutex = true;
-}; // critical_section_v4
-} // namespace internal
-typedef internal::critical_section_v4 critical_section;
-
-__TBB_DEFINE_PROFILING_SET_NAME(critical_section)
-} // namespace tbb
-#endif  // _TBB_CRITICAL_SECTION_H_
diff --git a/dependencies64/tbb/include/tbb/enumerable_thread_specific.h b/dependencies64/tbb/include/tbb/enumerable_thread_specific.h
deleted file mode 100644 (file)
index f0a2b57..0000000
+++ /dev/null
@@ -1,999 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_enumerable_thread_specific_H
-#define __TBB_enumerable_thread_specific_H
-
-#include "concurrent_vector.h"
-#include "tbb_thread.h"
-#include "tbb_allocator.h"
-#include "cache_aligned_allocator.h"
-#include "aligned_space.h"
-#include <string.h>  // for memcpy
-
-#if _WIN32||_WIN64
-#include "machine/windows_api.h"
-#else
-#include <pthread.h>
-#endif
-
-namespace tbb {
-
-//! enum for selecting between single key and key-per-instance versions
-enum ets_key_usage_type { ets_key_per_instance, ets_no_key };
-
-namespace interface6 {
-    //! @cond
-    namespace internal { 
-
-        template<ets_key_usage_type ETS_key_type>
-        class ets_base: tbb::internal::no_copy {
-        protected:
-#if _WIN32||_WIN64
-            typedef DWORD key_type;
-#else
-            typedef pthread_t key_type;
-#endif
-#if __TBB_GCC_3_3_PROTECTED_BROKEN
-        public:
-#endif
-            struct slot;
-
-            struct array {
-                array* next;
-                size_t lg_size;
-                slot& at( size_t k ) {
-                    return ((slot*)(void*)(this+1))[k];
-                }
-                size_t size() const {return (size_t)1<<lg_size;}
-                size_t mask() const {return size()-1;}
-                size_t start( size_t h ) const {
-                    return h>>(8*sizeof(size_t)-lg_size);
-                }
-            };
-            struct slot {
-                key_type key;
-                void* ptr;
-                bool empty() const {return !key;}
-                bool match( key_type k ) const {return key==k;}
-                bool claim( key_type k ) {
-                    __TBB_ASSERT(sizeof(tbb::atomic<key_type>)==sizeof(key_type), NULL);
-                    return tbb::internal::punned_cast<tbb::atomic<key_type>*>(&key)->compare_and_swap(k,0)==0;
-                }
-            };
-#if __TBB_GCC_3_3_PROTECTED_BROKEN
-        protected:
-#endif
-        
-            static key_type key_of_current_thread() {
-               tbb::tbb_thread::id id = tbb::this_tbb_thread::get_id();
-               key_type k;
-               memcpy( &k, &id, sizeof(k) );
-               return k;
-            }
-
-            //! Root of linked list of arrays of decreasing size.
-            /** NULL if and only if my_count==0.  
-                Each array in the list is half the size of its predecessor. */
-            atomic<array*> my_root;
-            atomic<size_t> my_count;
-            virtual void* create_local() = 0;
-            virtual void* create_array(size_t _size) = 0;  // _size in bytes
-            virtual void free_array(void* ptr, size_t _size) = 0; // _size in bytes
-            array* allocate( size_t lg_size ) {
-                size_t n = 1<<lg_size;  
-                array* a = static_cast<array*>(create_array( sizeof(array)+n*sizeof(slot) ));
-                a->lg_size = lg_size;
-                std::memset( a+1, 0, n*sizeof(slot) );
-                return a;
-            }
-            void free(array* a) {
-                size_t n = 1<<(a->lg_size);  
-                free_array( (void *)a, size_t(sizeof(array)+n*sizeof(slot)) );
-            }
-            static size_t hash( key_type k ) {
-                // Multiplicative hashing.  Client should use *upper* bits.
-                // casts required for Mac gcc4.* compiler
-#if __TBB_WORDSIZE == 4
-                return uintptr_t(k)*0x9E3779B9;
-#else
-                return uintptr_t(k)*0x9E3779B97F4A7C15;
-#endif 
-            } 
-        
-            ets_base() {my_root=NULL; my_count=0;}
-            virtual ~ets_base();  // g++ complains if this is not virtual...
-            void* table_lookup( bool& exists );
-            void table_clear();
-            slot& table_find( key_type k ) {
-                size_t h = hash(k);
-                array* r = my_root;
-                size_t mask = r->mask();
-                for(size_t i = r->start(h);;i=(i+1)&mask) {
-                    slot& s = r->at(i);
-                    if( s.empty() || s.match(k) )
-                        return s;
-                }
-            }
-            void table_reserve_for_copy( const ets_base& other ) {
-                __TBB_ASSERT(!my_root,NULL);
-                __TBB_ASSERT(!my_count,NULL);
-                if( other.my_root ) {
-                    array* a = allocate(other.my_root->lg_size);
-                    a->next = NULL;
-                    my_root = a;
-                    my_count = other.my_count;
-                }
-            }
-        };
-
-        template<ets_key_usage_type ETS_key_type>
-        ets_base<ETS_key_type>::~ets_base() {
-            __TBB_ASSERT(!my_root, NULL);
-        }
-
-        template<ets_key_usage_type ETS_key_type>
-        void ets_base<ETS_key_type>::table_clear() {
-            while( array* r = my_root ) {
-                my_root = r->next;
-                free(r);
-            }
-            my_count = 0;
-        }
-                
-        template<ets_key_usage_type ETS_key_type>
-        void* ets_base<ETS_key_type>::table_lookup( bool& exists ) {
-            const key_type k = key_of_current_thread(); 
-
-            __TBB_ASSERT(k!=0,NULL);
-            void* found;
-            size_t h = hash(k);
-            for( array* r=my_root; r; r=r->next ) {
-                size_t mask=r->mask();
-                for(size_t i = r->start(h); ;i=(i+1)&mask) {
-                    slot& s = r->at(i);
-                    if( s.empty() ) break;
-                    if( s.match(k) ) {
-                        if( r==my_root ) {
-                            // Success at top level
-                            exists = true;
-                            return s.ptr;
-                        } else {
-                            // Success at some other level.  Need to insert at top level.
-                            exists = true;
-                            found = s.ptr;
-                            goto insert;
-                        }
-                    }
-                }
-            }
-            // Key does not yet exist
-            exists = false;
-            found = create_local();
-            {
-                size_t c = ++my_count;
-                array* r = my_root;
-                if( !r || c>r->size()/2 ) {
-                    size_t s = r ? r->lg_size : 2;
-                    while( c>size_t(1)<<(s-1) ) ++s;
-                    array* a = allocate(s);
-                    for(;;) {
-                        a->next = my_root;
-                        array* new_r = my_root.compare_and_swap(a,r);
-                        if( new_r==r ) break;
-                        if( new_r->lg_size>=s ) {
-                            // Another thread inserted an equal or  bigger array, so our array is superfluous.
-                            free(a);
-                            break;
-                        }
-                        r = new_r;
-                    }
-                }
-            }
-        insert:
-            // Guaranteed to be room for it, and it is not present, so search for empty slot and grab it.
-            array* ir = my_root;
-            size_t mask = ir->mask();
-            for(size_t i = ir->start(h);;i=(i+1)&mask) {
-                slot& s = ir->at(i);
-                if( s.empty() ) {
-                    if( s.claim(k) ) {
-                        s.ptr = found;
-                        return found;
-                    }
-                }
-            }
-        }
-
-        //! Specialization that exploits native TLS 
-        template <>
-        class ets_base<ets_key_per_instance>: protected ets_base<ets_no_key> {
-            typedef ets_base<ets_no_key> super;
-#if _WIN32||_WIN64
-            typedef DWORD tls_key_t;
-            void create_key() { my_key = TlsAlloc(); }
-            void destroy_key() { TlsFree(my_key); }
-            void set_tls(void * value) { TlsSetValue(my_key, (LPVOID)value); }
-            void* get_tls() { return (void *)TlsGetValue(my_key); }
-#else
-            typedef pthread_key_t tls_key_t;
-            void create_key() { pthread_key_create(&my_key, NULL); }
-            void destroy_key() { pthread_key_delete(my_key); }
-            void set_tls( void * value ) const { pthread_setspecific(my_key, value); }
-            void* get_tls() const { return pthread_getspecific(my_key); }
-#endif
-            tls_key_t my_key;
-            virtual void* create_local() = 0;
-            virtual void* create_array(size_t _size) = 0;  // _size in bytes
-            virtual void free_array(void* ptr, size_t _size) = 0; // size in bytes
-        public:
-            ets_base() {create_key();}
-            ~ets_base() {destroy_key();}
-            void* table_lookup( bool& exists ) {
-                void* found = get_tls();
-                if( found ) {
-                    exists=true;
-                } else {
-                    found = super::table_lookup(exists);
-                    set_tls(found);
-                }
-                return found; 
-            }
-            void table_clear() {
-                destroy_key();
-                create_key(); 
-                super::table_clear();
-            }
-        };
-
-        //! Random access iterator for traversing the thread local copies.
-        template< typename Container, typename Value >
-        class enumerable_thread_specific_iterator 
-#if defined(_WIN64) && defined(_MSC_VER) 
-            // Ensure that Microsoft's internal template function _Val_type works correctly.
-            : public std::iterator<std::random_access_iterator_tag,Value>
-#endif /* defined(_WIN64) && defined(_MSC_VER) */
-        {
-            //! current position in the concurrent_vector 
-        
-            Container *my_container;
-            typename Container::size_type my_index;
-            mutable Value *my_value;
-        
-            template<typename C, typename T>
-            friend enumerable_thread_specific_iterator<C,T> operator+( ptrdiff_t offset, 
-                                                                       const enumerable_thread_specific_iterator<C,T>& v );
-        
-            template<typename C, typename T, typename U>
-            friend bool operator==( const enumerable_thread_specific_iterator<C,T>& i, 
-                                    const enumerable_thread_specific_iterator<C,U>& j );
-        
-            template<typename C, typename T, typename U>
-            friend bool operator<( const enumerable_thread_specific_iterator<C,T>& i, 
-                                   const enumerable_thread_specific_iterator<C,U>& j );
-        
-            template<typename C, typename T, typename U>
-            friend ptrdiff_t operator-( const enumerable_thread_specific_iterator<C,T>& i, const enumerable_thread_specific_iterator<C,U>& j );
-            
-            template<typename C, typename U> 
-            friend class enumerable_thread_specific_iterator;
-        
-            public:
-        
-            enumerable_thread_specific_iterator( const Container &container, typename Container::size_type index ) : 
-                my_container(&const_cast<Container &>(container)), my_index(index), my_value(NULL) {}
-        
-            //! Default constructor
-            enumerable_thread_specific_iterator() : my_container(NULL), my_index(0), my_value(NULL) {}
-        
-            template<typename U>
-            enumerable_thread_specific_iterator( const enumerable_thread_specific_iterator<Container, U>& other ) :
-                    my_container( other.my_container ), my_index( other.my_index), my_value( const_cast<Value *>(other.my_value) ) {}
-        
-            enumerable_thread_specific_iterator operator+( ptrdiff_t offset ) const {
-                return enumerable_thread_specific_iterator(*my_container, my_index + offset);
-            }
-        
-            enumerable_thread_specific_iterator &operator+=( ptrdiff_t offset ) {
-                my_index += offset;
-                my_value = NULL;
-                return *this;
-            }
-        
-            enumerable_thread_specific_iterator operator-( ptrdiff_t offset ) const {
-                return enumerable_thread_specific_iterator( *my_container, my_index-offset );
-            }
-        
-            enumerable_thread_specific_iterator &operator-=( ptrdiff_t offset ) {
-                my_index -= offset;
-                my_value = NULL;
-                return *this;
-            }
-        
-            Value& operator*() const {
-                Value* value = my_value;
-                if( !value ) {
-                    value = my_value = reinterpret_cast<Value *>(&(*my_container)[my_index].value);
-                }
-                __TBB_ASSERT( value==reinterpret_cast<Value *>(&(*my_container)[my_index].value), "corrupt cache" );
-                return *value;
-            }
-        
-            Value& operator[]( ptrdiff_t k ) const {
-               return (*my_container)[my_index + k].value;
-            }
-        
-            Value* operator->() const {return &operator*();}
-        
-            enumerable_thread_specific_iterator& operator++() {
-                ++my_index;
-                my_value = NULL;
-                return *this;
-            }
-        
-            enumerable_thread_specific_iterator& operator--() {
-                --my_index;
-                my_value = NULL;
-                return *this;
-            }
-        
-            //! Post increment
-            enumerable_thread_specific_iterator operator++(int) {
-                enumerable_thread_specific_iterator result = *this;
-                ++my_index;
-                my_value = NULL;
-                return result;
-            }
-        
-            //! Post decrement
-            enumerable_thread_specific_iterator operator--(int) {
-                enumerable_thread_specific_iterator result = *this;
-                --my_index;
-                my_value = NULL;
-                return result;
-            }
-        
-            // STL support
-            typedef ptrdiff_t difference_type;
-            typedef Value value_type;
-            typedef Value* pointer;
-            typedef Value& reference;
-            typedef std::random_access_iterator_tag iterator_category;
-        };
-        
-        template<typename Container, typename T>
-        enumerable_thread_specific_iterator<Container,T> operator+( ptrdiff_t offset, 
-                                                                    const enumerable_thread_specific_iterator<Container,T>& v ) {
-            return enumerable_thread_specific_iterator<Container,T>( v.my_container, v.my_index + offset );
-        }
-        
-        template<typename Container, typename T, typename U>
-        bool operator==( const enumerable_thread_specific_iterator<Container,T>& i, 
-                         const enumerable_thread_specific_iterator<Container,U>& j ) {
-            return i.my_index==j.my_index && i.my_container == j.my_container;
-        }
-        
-        template<typename Container, typename T, typename U>
-        bool operator!=( const enumerable_thread_specific_iterator<Container,T>& i, 
-                         const enumerable_thread_specific_iterator<Container,U>& j ) {
-            return !(i==j);
-        }
-        
-        template<typename Container, typename T, typename U>
-        bool operator<( const enumerable_thread_specific_iterator<Container,T>& i, 
-                        const enumerable_thread_specific_iterator<Container,U>& j ) {
-            return i.my_index<j.my_index;
-        }
-        
-        template<typename Container, typename T, typename U>
-        bool operator>( const enumerable_thread_specific_iterator<Container,T>& i, 
-                        const enumerable_thread_specific_iterator<Container,U>& j ) {
-            return j<i;
-        }
-        
-        template<typename Container, typename T, typename U>
-        bool operator>=( const enumerable_thread_specific_iterator<Container,T>& i, 
-                         const enumerable_thread_specific_iterator<Container,U>& j ) {
-            return !(i<j);
-        }
-        
-        template<typename Container, typename T, typename U>
-        bool operator<=( const enumerable_thread_specific_iterator<Container,T>& i, 
-                         const enumerable_thread_specific_iterator<Container,U>& j ) {
-            return !(j<i);
-        }
-        
-        template<typename Container, typename T, typename U>
-        ptrdiff_t operator-( const enumerable_thread_specific_iterator<Container,T>& i, 
-                             const enumerable_thread_specific_iterator<Container,U>& j ) {
-            return i.my_index-j.my_index;
-        }
-
-    template<typename SegmentedContainer, typename Value >
-        class segmented_iterator
-#if defined(_WIN64) && defined(_MSC_VER)
-        : public std::iterator<std::input_iterator_tag, Value>
-#endif
-        {
-            template<typename C, typename T, typename U>
-            friend bool operator==(const segmented_iterator<C,T>& i, const segmented_iterator<C,U>& j);
-
-            template<typename C, typename T, typename U>
-            friend bool operator!=(const segmented_iterator<C,T>& i, const segmented_iterator<C,U>& j);
-            
-            template<typename C, typename U> 
-            friend class segmented_iterator;
-
-            public:
-
-                segmented_iterator() {my_segcont = NULL;}
-
-                segmented_iterator( const SegmentedContainer& _segmented_container ) : 
-                    my_segcont(const_cast<SegmentedContainer*>(&_segmented_container)),
-                    outer_iter(my_segcont->end()) { }
-
-                ~segmented_iterator() {}
-
-                typedef typename SegmentedContainer::iterator outer_iterator;
-                typedef typename SegmentedContainer::value_type InnerContainer;
-                typedef typename InnerContainer::iterator inner_iterator;
-
-                // STL support
-                typedef ptrdiff_t difference_type;
-                typedef Value value_type;
-                typedef typename SegmentedContainer::size_type size_type;
-                typedef Value* pointer;
-                typedef Value& reference;
-                typedef std::input_iterator_tag iterator_category;
-
-                // Copy Constructor
-                template<typename U>
-                segmented_iterator(const segmented_iterator<SegmentedContainer, U>& other) :
-                    my_segcont(other.my_segcont),
-                    outer_iter(other.outer_iter),
-                    // can we assign a default-constructed iterator to inner if we're at the end?
-                    inner_iter(other.inner_iter)
-                {}
-
-                // assignment
-                template<typename U>
-                segmented_iterator& operator=( const segmented_iterator<SegmentedContainer, U>& other) {
-                    if(this != &other) {
-                        my_segcont = other.my_segcont;
-                        outer_iter = other.outer_iter;
-                        if(outer_iter != my_segcont->end()) inner_iter = other.inner_iter;
-                    }
-                    return *this;
-                }
-
-                // allow assignment of outer iterator to segmented iterator.  Once it is
-                // assigned, move forward until a non-empty inner container is found or
-                // the end of the outer container is reached.
-                segmented_iterator& operator=(const outer_iterator& new_outer_iter) {
-                    __TBB_ASSERT(my_segcont != NULL, NULL);
-                    // check that this iterator points to something inside the segmented container
-                    for(outer_iter = new_outer_iter ;outer_iter!=my_segcont->end(); ++outer_iter) {
-                        if( !outer_iter->empty() ) {
-                            inner_iter = outer_iter->begin();
-                            break;
-                        }
-                    }
-                    return *this;
-                }
-
-                // pre-increment
-                segmented_iterator& operator++() {
-                    advance_me();
-                    return *this;
-                }
-
-                // post-increment
-                segmented_iterator operator++(int) {
-                    segmented_iterator tmp = *this;
-                    operator++();
-                    return tmp;
-                }
-
-                bool operator==(const outer_iterator& other_outer) const {
-                    __TBB_ASSERT(my_segcont != NULL, NULL);
-                    return (outer_iter == other_outer &&
-                            (outer_iter == my_segcont->end() || inner_iter == outer_iter->begin()));
-                }
-
-                bool operator!=(const outer_iterator& other_outer) const {
-                    return !operator==(other_outer);
-
-                }
-
-                // (i)* RHS
-                reference operator*() const {
-                    __TBB_ASSERT(my_segcont != NULL, NULL);
-                    __TBB_ASSERT(outer_iter != my_segcont->end(), "Dereferencing a pointer at end of container");
-                    __TBB_ASSERT(inner_iter != outer_iter->end(), NULL); // should never happen
-                    return *inner_iter;
-                }
-
-                // i->
-                pointer operator->() const { return &operator*();}
-
-            private:
-                SegmentedContainer*             my_segcont;
-                outer_iterator outer_iter;
-                inner_iterator inner_iter;
-
-                void advance_me() {
-                    __TBB_ASSERT(my_segcont != NULL, NULL);
-                    __TBB_ASSERT(outer_iter != my_segcont->end(), NULL); // not true if there are no inner containers
-                    __TBB_ASSERT(inner_iter != outer_iter->end(), NULL); // not true if the inner containers are all empty.
-                    ++inner_iter;
-                    while(inner_iter == outer_iter->end() && ++outer_iter != my_segcont->end()) {
-                        inner_iter = outer_iter->begin();
-                    }
-                }
-        };    // segmented_iterator
-
-        template<typename SegmentedContainer, typename T, typename U>
-        bool operator==( const segmented_iterator<SegmentedContainer,T>& i, 
-                         const segmented_iterator<SegmentedContainer,U>& j ) {
-            if(i.my_segcont != j.my_segcont) return false;
-            if(i.my_segcont == NULL) return true;
-            if(i.outer_iter != j.outer_iter) return false;
-            if(i.outer_iter == i.my_segcont->end()) return true;
-            return i.inner_iter == j.inner_iter;
-        }
-
-        // !=
-        template<typename SegmentedContainer, typename T, typename U>
-        bool operator!=( const segmented_iterator<SegmentedContainer,T>& i, 
-                         const segmented_iterator<SegmentedContainer,U>& j ) {
-            return !(i==j);
-        }
-
-        template<typename T>
-        struct destruct_only: tbb::internal::no_copy {
-            tbb::aligned_space<T,1> value;
-            ~destruct_only() {value.begin()[0].~T();}
-        };
-
-        template<typename T>
-        struct construct_by_default: tbb::internal::no_assign {
-            void construct(void*where) {new(where) T();} // C++ note: the () in T() ensure zero initialization.
-            construct_by_default( int ) {}
-        };
-
-        template<typename T>
-        struct construct_by_exemplar: tbb::internal::no_assign {
-            const T exemplar;
-            void construct(void*where) {new(where) T(exemplar);}
-            construct_by_exemplar( const T& t ) : exemplar(t) {}
-        };
-
-        template<typename T, typename Finit>
-        struct construct_by_finit: tbb::internal::no_assign {
-            Finit f;
-            void construct(void* where) {new(where) T(f());}
-            construct_by_finit( const Finit& f_ ) : f(f_) {}
-        };
-
-        // storage for initialization function pointer
-        template<typename T>
-        class callback_base {
-        public:
-            // Clone *this
-            virtual callback_base* clone() = 0;
-            // Destruct and free *this
-            virtual void destroy() = 0;
-            // Need virtual destructor to satisfy GCC compiler warning
-            virtual ~callback_base() { }
-            // Construct T at where
-            virtual void construct(void* where) = 0;
-        };
-
-        template <typename T, typename Constructor>
-        class callback_leaf: public callback_base<T>, Constructor {
-            template<typename X> callback_leaf( const X& x ) : Constructor(x) {}
-
-            typedef typename tbb::tbb_allocator<callback_leaf> my_allocator_type;
-
-            /*override*/ callback_base<T>* clone() {
-                void* where = my_allocator_type().allocate(1);
-                return new(where) callback_leaf(*this);
-            }
-
-            /*override*/ void destroy() {
-                my_allocator_type().destroy(this);
-                my_allocator_type().deallocate(this,1);
-            }
-
-            /*override*/ void construct(void* where) {
-                Constructor::construct(where);
-            }  
-        public:
-            template<typename X>
-            static callback_base<T>* make( const X& x ) {
-                void* where = my_allocator_type().allocate(1);
-                return new(where) callback_leaf(x);
-            }
-        };
-
-        //! Template for adding padding in order to avoid false sharing
-        /** ModularSize should be sizeof(U) modulo the cache line size.
-            All maintenance of the space will be done explicitly on push_back,
-            and all thread local copies must be destroyed before the concurrent
-            vector is deleted.
-        */
-        template<typename U, size_t ModularSize>
-        struct ets_element {
-            char value[ModularSize==0 ? sizeof(U) : sizeof(U)+(tbb::internal::NFS_MaxLineSize-ModularSize)];
-            void unconstruct() {
-                tbb::internal::punned_cast<U*>(&value)->~U();
-            }
-        };
-
-    } // namespace internal
-    //! @endcond
-
-    //! The enumerable_thread_specific container
-    /** enumerable_thread_specific has the following properties:
-        - thread-local copies are lazily created, with default, exemplar or function initialization.
-        - thread-local copies do not move (during lifetime, and excepting clear()) so the address of a copy is invariant.
-        - the contained objects need not have operator=() defined if combine is not used.
-        - enumerable_thread_specific containers may be copy-constructed or assigned.
-        - thread-local copies can be managed by hash-table, or can be accessed via TLS storage for speed.
-        - outside of parallel contexts, the contents of all thread-local copies are accessible by iterator or using combine or combine_each methods
-        
-    @par Segmented iterator
-        When the thread-local objects are containers with input_iterators defined, a segmented iterator may
-        be used to iterate over all the elements of all thread-local copies.
-
-    @par combine and combine_each
-        - Both methods are defined for enumerable_thread_specific. 
-        - combine() requires the the type T have operator=() defined.  
-        - neither method modifies the contents of the object (though there is no guarantee that the applied methods do not modify the object.)  
-        - Both are evaluated in serial context (the methods are assumed to be non-benign.)
-        
-    @ingroup containers */
-    template <typename T, 
-              typename Allocator=cache_aligned_allocator<T>, 
-              ets_key_usage_type ETS_key_type=ets_no_key > 
-    class enumerable_thread_specific: internal::ets_base<ETS_key_type> { 
-
-        template<typename U, typename A, ets_key_usage_type C> friend class enumerable_thread_specific;
-    
-        typedef internal::ets_element<T,sizeof(T)%tbb::internal::NFS_MaxLineSize> padded_element;
-
-        //! A generic range, used to create range objects from the iterators
-        template<typename I>
-        class generic_range_type: public blocked_range<I> {
-        public:
-            typedef T value_type;
-            typedef T& reference;
-            typedef const T& const_reference;
-            typedef I iterator;
-            typedef ptrdiff_t difference_type;
-            generic_range_type( I begin_, I end_, size_t grainsize_ = 1) : blocked_range<I>(begin_,end_,grainsize_) {} 
-            template<typename U>
-            generic_range_type( const generic_range_type<U>& r) : blocked_range<I>(r.begin(),r.end(),r.grainsize()) {} 
-            generic_range_type( generic_range_type& r, split ) : blocked_range<I>(r,split()) {}
-        };
-    
-        typedef typename Allocator::template rebind< padded_element >::other padded_allocator_type;
-        typedef tbb::concurrent_vector< padded_element, padded_allocator_type > internal_collection_type;
-        
-        internal::callback_base<T> *my_construct_callback;
-
-        internal_collection_type my_locals;
-   
-        /*override*/ void* create_local() {
-#if TBB_DEPRECATED
-            void* lref = &my_locals[my_locals.push_back(padded_element())];
-#else
-            void* lref = &*my_locals.push_back(padded_element());
-#endif
-            my_construct_callback->construct(lref);
-            return lref;
-        } 
-
-        void unconstruct_locals() {
-            for(typename internal_collection_type::iterator cvi = my_locals.begin(); cvi != my_locals.end(); ++cvi) {
-                cvi->unconstruct();
-            }
-        }
-
-        typedef typename Allocator::template rebind< uintptr_t >::other array_allocator_type;
-
-        // _size is in bytes
-        /*override*/ void* create_array(size_t _size) {
-            size_t nelements = (_size + sizeof(uintptr_t) -1) / sizeof(uintptr_t);
-            return array_allocator_type().allocate(nelements);
-        }
-
-        /*override*/ void free_array( void* _ptr, size_t _size) {
-            size_t nelements = (_size + sizeof(uintptr_t) -1) / sizeof(uintptr_t);
-            array_allocator_type().deallocate( reinterpret_cast<uintptr_t *>(_ptr),nelements);
-        }
-   
-    public:
-    
-        //! Basic types
-        typedef Allocator allocator_type;
-        typedef T value_type;
-        typedef T& reference;
-        typedef const T& const_reference;
-        typedef T* pointer;
-        typedef const T* const_pointer;
-        typedef typename internal_collection_type::size_type size_type;
-        typedef typename internal_collection_type::difference_type difference_type;
-    
-        // Iterator types
-        typedef typename internal::enumerable_thread_specific_iterator< internal_collection_type, value_type > iterator;
-        typedef typename internal::enumerable_thread_specific_iterator< internal_collection_type, const value_type > const_iterator;
-
-        // Parallel range types
-        typedef generic_range_type< iterator > range_type;
-        typedef generic_range_type< const_iterator > const_range_type;
-    
-        //! Default constructor.  Each local instance of T is default constructed.
-        enumerable_thread_specific() : 
-            my_construct_callback( internal::callback_leaf<T,internal::construct_by_default<T> >::make(/*dummy argument*/0) ) 
-        {}
-
-        //! Constructor with initializer functor.  Each local instance of T is constructed by T(finit()).
-        template <typename Finit>
-        enumerable_thread_specific( Finit finit ) : 
-            my_construct_callback( internal::callback_leaf<T,internal::construct_by_finit<T,Finit> >::make( finit ) ) 
-        {}
-    
-        //! Constuctor with exemplar.  Each local instance of T is copied-constructed from the exemplar.
-        enumerable_thread_specific(const T& exemplar) : 
-            my_construct_callback( internal::callback_leaf<T,internal::construct_by_exemplar<T> >::make( exemplar ) )
-        {}
-    
-        //! Destructor
-        ~enumerable_thread_specific() { 
-            my_construct_callback->destroy();
-            this->clear();  // deallocation before the derived class is finished destructing
-            // So free(array *) is still accessible
-        }
-      
-        //! returns reference to local, discarding exists
-        reference local() {
-            bool exists;
-            return local(exists);
-        }
-
-        //! Returns reference to calling thread's local copy, creating one if necessary
-        reference local(bool& exists)  {
-            void* ptr = this->table_lookup(exists);
-            return *(T*)ptr;
-        }
-
-        //! Get the number of local copies
-        size_type size() const { return my_locals.size(); }
-    
-        //! true if there have been no local copies created
-        bool empty() const { return my_locals.empty(); }
-    
-        //! begin iterator
-        iterator begin() { return iterator( my_locals, 0 ); }
-        //! end iterator
-        iterator end() { return iterator(my_locals, my_locals.size() ); }
-    
-        //! begin const iterator
-        const_iterator begin() const { return const_iterator(my_locals, 0); }
-    
-        //! end const iterator
-        const_iterator end() const { return const_iterator(my_locals, my_locals.size()); }
-
-        //! Get range for parallel algorithms
-        range_type range( size_t grainsize=1 ) { return range_type( begin(), end(), grainsize ); } 
-        
-        //! Get const range for parallel algorithms
-        const_range_type range( size_t grainsize=1 ) const { return const_range_type( begin(), end(), grainsize ); }
-
-        //! Destroys local copies
-        void clear() {
-            unconstruct_locals();
-            my_locals.clear();
-            this->table_clear();
-            // callback is not destroyed
-            // exemplar is not destroyed
-        }
-
-    private:
-
-        template<typename U, typename A2, ets_key_usage_type C2>
-        void internal_copy( const enumerable_thread_specific<U, A2, C2>& other);
-
-    public:
-
-        template<typename U, typename Alloc, ets_key_usage_type Cachetype>
-        enumerable_thread_specific( const enumerable_thread_specific<U, Alloc, Cachetype>& other ) : internal::ets_base<ETS_key_type> ()
-        {
-            internal_copy(other);
-        }
-
-        enumerable_thread_specific( const enumerable_thread_specific& other ) : internal::ets_base<ETS_key_type> ()
-        {
-            internal_copy(other);
-        }
-
-    private:
-
-        template<typename U, typename A2, ets_key_usage_type C2>
-        enumerable_thread_specific &
-        internal_assign(const enumerable_thread_specific<U, A2, C2>& other) {
-            if(static_cast<void *>( this ) != static_cast<const void *>( &other )) {
-                this->clear(); 
-                my_construct_callback->destroy();
-                my_construct_callback = 0;
-                internal_copy( other );
-            }
-            return *this;
-        }
-
-    public:
-
-        // assignment
-        enumerable_thread_specific& operator=(const enumerable_thread_specific& other) {
-            return internal_assign(other);
-        }
-
-        template<typename U, typename Alloc, ets_key_usage_type Cachetype>
-        enumerable_thread_specific& operator=(const enumerable_thread_specific<U, Alloc, Cachetype>& other)
-        {
-            return internal_assign(other);
-        }
-
-        // combine_func_t has signature T(T,T) or T(const T&, const T&)
-        template <typename combine_func_t>
-        T combine(combine_func_t f_combine) {
-            if(begin() == end()) {
-                internal::destruct_only<T> location;
-                my_construct_callback->construct(location.value.begin());
-                return *location.value.begin();
-            }
-            const_iterator ci = begin();
-            T my_result = *ci;
-            while(++ci != end()) 
-                my_result = f_combine( my_result, *ci );
-            return my_result;
-        }
-
-        // combine_func_t has signature void(T) or void(const T&)
-        template <typename combine_func_t>
-        void combine_each(combine_func_t f_combine) {
-            for(const_iterator ci = begin(); ci != end(); ++ci) {
-                f_combine( *ci );
-            }
-        }
-
-    }; // enumerable_thread_specific
-
-    template <typename T, typename Allocator, ets_key_usage_type ETS_key_type> 
-    template<typename U, typename A2, ets_key_usage_type C2>
-    void enumerable_thread_specific<T,Allocator,ETS_key_type>::internal_copy( const enumerable_thread_specific<U, A2, C2>& other) {
-        // Initialize my_construct_callback first, so that it is valid even if rest of this routine throws an exception.
-        my_construct_callback = other.my_construct_callback->clone();
-
-        typedef internal::ets_base<ets_no_key> base;
-        __TBB_ASSERT(my_locals.size()==0,NULL);
-        this->table_reserve_for_copy( other );
-        for( base::array* r=other.my_root; r; r=r->next ) {
-            for( size_t i=0; i<r->size(); ++i ) {
-                base::slot& s1 = r->at(i);
-                if( !s1.empty() ) {
-                    base::slot& s2 = this->table_find(s1.key);
-                    if( s2.empty() ) { 
-#if TBB_DEPRECATED
-                        void* lref = &my_locals[my_locals.push_back(padded_element())];
-#else
-                        void* lref = &*my_locals.push_back(padded_element());
-#endif
-                        s2.ptr = new(lref) T(*(U*)s1.ptr);
-                        s2.key = s1.key;
-                    } else {
-                        // Skip the duplicate
-                    } 
-                }
-            }
-        }
-    }
-
-    template< typename Container >
-    class flattened2d {
-
-        // This intermediate typedef is to address issues with VC7.1 compilers
-        typedef typename Container::value_type conval_type;
-
-    public:
-
-        //! Basic types
-        typedef typename conval_type::size_type size_type;
-        typedef typename conval_type::difference_type difference_type;
-        typedef typename conval_type::allocator_type allocator_type;
-        typedef typename conval_type::value_type value_type;
-        typedef typename conval_type::reference reference;
-        typedef typename conval_type::const_reference const_reference;
-        typedef typename conval_type::pointer pointer;
-        typedef typename conval_type::const_pointer const_pointer;
-
-        typedef typename internal::segmented_iterator<Container, value_type> iterator;
-        typedef typename internal::segmented_iterator<Container, const value_type> const_iterator;
-
-        flattened2d( const Container &c, typename Container::const_iterator b, typename Container::const_iterator e ) : 
-            my_container(const_cast<Container*>(&c)), my_begin(b), my_end(e) { }
-
-        flattened2d( const Container &c ) : 
-            my_container(const_cast<Container*>(&c)), my_begin(c.begin()), my_end(c.end()) { }
-
-        iterator begin() { return iterator(*my_container) = my_begin; }
-        iterator end() { return iterator(*my_container) = my_end; }
-        const_iterator begin() const { return const_iterator(*my_container) = my_begin; }
-        const_iterator end() const { return const_iterator(*my_container) = my_end; }
-
-        size_type size() const {
-            size_type tot_size = 0;
-            for(typename Container::const_iterator i = my_begin; i != my_end; ++i) {
-                tot_size += i->size();
-            }
-            return tot_size;
-        }
-
-    private:
-
-        Container *my_container;
-        typename Container::const_iterator my_begin;
-        typename Container::const_iterator my_end;
-
-    };
-
-    template <typename Container>
-    flattened2d<Container> flatten2d(const Container &c, const typename Container::const_iterator b, const typename Container::const_iterator e) {
-        return flattened2d<Container>(c, b, e);
-    }
-
-    template <typename Container>
-    flattened2d<Container> flatten2d(const Container &c) {
-        return flattened2d<Container>(c);
-    }
-
-} // interface6
-
-namespace internal {
-using interface6::internal::segmented_iterator;
-}
-
-using interface6::enumerable_thread_specific;
-using interface6::flattened2d;
-using interface6::flatten2d;
-
-} // namespace tbb
-
-#endif
diff --git a/dependencies64/tbb/include/tbb/flow_graph.h b/dependencies64/tbb/include/tbb/flow_graph.h
deleted file mode 100644 (file)
index 98da0f5..0000000
+++ /dev/null
@@ -1,1589 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_flow_graph_H
-#define __TBB_flow_graph_H
-
-#include "tbb_stddef.h"
-#include "atomic.h"
-#include "spin_mutex.h"
-#include "null_mutex.h"
-#include "spin_rw_mutex.h"
-#include "null_rw_mutex.h"
-#include "task.h"
-#include "concurrent_vector.h"
-#include "internal/_aggregator_impl.h"
-
-// use the VC10 or gcc version of tuple if it is available.
-#if TBB_IMPLEMENT_CPP0X && (!defined(_MSC_VER) || _MSC_VER < 1600)
-#define TBB_PREVIEW_TUPLE 1
-#include "compat/tuple"
-#else
-#include <tuple>
-#endif
-
-#include<list>
-#include<queue>
-
-/** @file
-  \brief The graph related classes and functions
-
-  There are some applications that best express dependencies as messages
-  passed between nodes in a graph.  These messages may contain data or
-  simply act as signals that a predecessors has completed. The graph
-  class and its associated node classes can be used to express such
-  applcations.
-*/
-
-namespace tbb {
-namespace flow {
-
-//! An enumeration the provides the two most common concurrency levels: unlimited and serial
-enum concurrency { unlimited = 0, serial = 1 };
-
-namespace interface6 {
-
-//! The base of all graph nodes.  Allows them to be stored in a collection for deletion.
-class graph_node {
-public:
-    virtual ~graph_node() {} 
-}; 
-
-//! An empty class used for messages that mean "I'm done" 
-class continue_msg {};
-        
-template< typename T > class sender;
-template< typename T > class receiver;
-class continue_receiver;
-        
-//! Pure virtual template class that defines a sender of messages of type T
-template< typename T >
-class sender {
-public:
-    //! The output type of this sender
-    typedef T output_type;
-        
-    //! The successor type for this node
-    typedef receiver<T> successor_type;
-        
-    virtual ~sender() {}
-        
-    //! Add a new successor to this node
-    virtual bool register_successor( successor_type &r ) = 0;
-        
-    //! Removes a successor from this node
-    virtual bool remove_successor( successor_type &r ) = 0;
-        
-    //! Request an item from the sender
-    virtual bool try_get( T & ) { return false; }
-        
-    //! Reserves an item in the sender 
-    virtual bool try_reserve( T & ) { return false; }
-        
-    //! Releases the reserved item
-    virtual bool try_release( ) { return false; }
-        
-    //! Consumes the reserved item
-    virtual bool try_consume( ) { return false; }
-        
-};
-        
-        
-//! Pure virtual template class that defines a receiver of messages of type T
-template< typename T >
-class receiver {
-public:
-        
-    //! The input type of this receiver
-    typedef T input_type;
-        
-    //! The predecessor type for this node
-    typedef sender<T> predecessor_type;
-        
-    //! Destructor
-    virtual ~receiver() {}
-        
-    //! Put an item to the receiver
-    virtual bool try_put( const T& t ) = 0;
-        
-    //! Add a predecessor to the node
-    virtual bool register_predecessor( predecessor_type & ) { return false; }
-        
-    //! Remove a predecessor from the node
-    virtual bool remove_predecessor( predecessor_type & ) { return false; }
-        
-};
-        
-//! Base class for receivers of completion messages
-/** These receivers automatically reset, but cannot be explicitly waited on */
-class continue_receiver : public receiver< continue_msg > {
-public:
-        
-    //! The input type
-    typedef continue_msg input_type;
-        
-    //! The predecessor type for this node
-    typedef sender< continue_msg > predecessor_type;
-        
-    //! Constructor
-    continue_receiver( int number_of_predecessors = 0 ) { 
-        my_predecessor_count = my_initial_predecessor_count = number_of_predecessors;
-        my_current_count = 0;
-    }
-        
-    //! Copy constructor
-    continue_receiver( const continue_receiver& src ) : receiver<continue_msg>() { 
-        my_predecessor_count = my_initial_predecessor_count = src.my_initial_predecessor_count;
-        my_current_count = 0;
-    }
-        
-    //! Destructor
-    virtual ~continue_receiver() { }
-        
-    //! Increments the trigger threshold
-    /* override */ bool register_predecessor( predecessor_type & ) {
-        spin_mutex::scoped_lock l(my_mutex);
-        ++my_predecessor_count;
-        return true;
-    }
-        
-    //! Decrements the trigger threshold
-    /** Does not check to see if the removal of the predecessor now makes the current count
-        exceed the new threshold.  So removing a predecessor while the graph is active can cause
-        unexpected results. */
-    /* override */ bool remove_predecessor( predecessor_type & ) {
-        spin_mutex::scoped_lock l(my_mutex);
-        --my_predecessor_count;
-        return true;
-    }
-        
-    //! Puts a continue_msg to the receiver
-    /** If the message causes the message count to reach the predecessor count, execute() is called and
-        the message count is reset to 0.  Otherwise the message count is incremented. */
-    /* override */ bool try_put( const input_type & ) {
-        {
-            spin_mutex::scoped_lock l(my_mutex);
-            if ( ++my_current_count < my_predecessor_count ) 
-                return true;
-            else
-                my_current_count = 0;
-        }
-        execute();
-        return true;
-    }
-        
-protected:
-        
-    spin_mutex my_mutex;
-    int my_predecessor_count;
-    int my_current_count;
-    int my_initial_predecessor_count;
-        
-    //! Does whatever should happen when the threshold is reached
-    /** This should be very fast or else spawn a task.  This is
-        called while the sender is blocked in the try_put(). */
-    virtual void execute() = 0;
-        
-};
-
-#include "internal/_flow_graph_impl.h"
-using namespace internal::graph_policy_namespace;
-
-//! The graph class
-/** This class serves as a handle to the graph */
-class graph : tbb::internal::no_copy {
-        
-    template< typename Body >
-    class run_task : public task {
-    public: 
-        run_task( Body& body ) : my_body(body) {}
-        task *execute() {
-            my_body();
-            return NULL;
-        }
-    private:
-        Body my_body;
-    };
-        
-    template< typename Receiver, typename Body >
-    class run_and_put_task : public task {
-    public: 
-        run_and_put_task( Receiver &r, Body& body ) : my_receiver(r), my_body(body) {}
-        task *execute() {
-            my_receiver.try_put( my_body() );
-            return NULL;
-        }
-    private:
-        Receiver &my_receiver;
-        Body my_body;
-    };
-        
-public:
-        
-        
-    //! Constructs a graph withy no nodes.
-    graph() : my_root_task( new ( task::allocate_root( ) ) empty_task ) {
-        my_root_task->set_ref_count(1);
-    }
-        
-    //! Destroys the graph.
-    /** Calls wait_for_all on the graph, deletes all of the nodes appended by calls to add, and then 
-        destroys the root task of the graph. */ 
-    ~graph() {
-        wait_for_all();
-        my_root_task->set_ref_count(0);
-        task::destroy( *my_root_task );
-    }
-        
-        
-    //! Used to register that an external entity may still interact with the graph.
-    /** The graph will not return from wait_for_all until a matching number of decrement_wait_count calls
-        is made. */
-    void increment_wait_count() { 
-        if (my_root_task)
-            my_root_task->increment_ref_count();
-    }
-        
-    //! Deregisters an external entity that may have interacted with the graph.
-    /** The graph will not return from wait_for_all until all the number of decrement_wait_count calls
-        matches the number of increment_wait_count calls. */
-    void decrement_wait_count() { 
-        if (my_root_task)
-            my_root_task->decrement_ref_count(); 
-    }
-        
-    //! Spawns a task that runs a body and puts its output to a specific receiver
-    /** The task is spawned as a child of the graph. This is useful for running tasks 
-        that need to block a wait_for_all() on the graph.  For example a one-off source. */
-    template< typename Receiver, typename Body >
-        void run( Receiver &r, Body body ) {
-       task::enqueue( * new ( task::allocate_additional_child_of( *my_root_task ) ) 
-           run_and_put_task< Receiver, Body >( r, body ) );
-    }
-        
-    //! Spawns a task that runs a function object 
-    /** The task is spawned as a child of the graph. This is useful for running tasks 
-        that need to block a wait_for_all() on the graph. For example a one-off source. */
-    template< typename Body >
-    void run( Body body ) {
-       task::enqueue( * new ( task::allocate_additional_child_of( *my_root_task ) ) 
-           run_task< Body >( body ) );
-    }
-        
-    //! Waits until the graph is idle and the number of decrement_wait_count calls equals the number of increment_wait_count calls.
-    /** The waiting thread will go off and steal work while it is block in the wait_for_all. */
-    void wait_for_all() {
-        if (my_root_task)
-            my_root_task->wait_for_all();
-        my_root_task->set_ref_count(1);
-    }
-        
-    //! Returns the root task of the graph
-    task * root_task() {
-        return my_root_task;
-    }
-        
-private:
-        
-    task *my_root_task;
-        
-};
-
-#include "internal/_flow_graph_node_impl.h"
-
-//! An executable node that acts as a source, i.e. it has no predecessors
-template < typename Output >
-class source_node : public graph_node, public sender< Output > {
-public:
-        
-    //! The type of the output message, which is complete
-    typedef Output output_type;           
-        
-    //! The type of successors of this node
-    typedef receiver< Output > successor_type;
-        
-    //! Constructor for a node with a successor
-    template< typename Body >
-    source_node( graph &g, Body body, bool is_active = true )
-        : my_root_task(g.root_task()), my_active(is_active), init_my_active(is_active),
-        my_body( new internal::source_body_leaf< output_type, Body>(body) ),
-        my_reserved(false), my_has_cached_item(false) 
-    { 
-        my_successors.set_owner(this);
-    }
-        
-    //! Copy constructor
-    source_node( const source_node& src ) :
-        graph_node(), sender<Output>(),
-        my_root_task( src.my_root_task), my_active(src.init_my_active),
-        init_my_active(src.init_my_active), my_body( src.my_body->clone() ),
-        my_reserved(false), my_has_cached_item(false)
-    {
-        my_successors.set_owner(this);
-    }
-
-    //! The destructor
-    ~source_node() { delete my_body; }
-        
-    //! Add a new successor to this node
-    /* override */ bool register_successor( receiver<output_type> &r ) {
-        spin_mutex::scoped_lock lock(my_mutex);
-        my_successors.register_successor(r);
-        if ( my_active )
-            spawn_put();
-        return true;
-    }
-        
-    //! Removes a successor from this node
-    /* override */ bool remove_successor( receiver<output_type> &r ) {
-        spin_mutex::scoped_lock lock(my_mutex);
-        my_successors.remove_successor(r);
-        return true;
-    }
-        
-    //! Request an item from the node
-    /*override */ bool try_get( output_type &v ) {
-        spin_mutex::scoped_lock lock(my_mutex);
-        if ( my_reserved )  
-            return false;
-        
-        if ( my_has_cached_item ) {
-            v = my_cached_item;
-            my_has_cached_item = false;
-        } else if ( (*my_body)(v) == false ) {
-            return false;
-        }
-        return true;
-    }
-        
-    //! Reserves an item.
-    /* override */ bool try_reserve( output_type &v ) {
-        spin_mutex::scoped_lock lock(my_mutex);
-        if ( my_reserved ) {
-            return false;
-        }
-        
-        if ( !my_has_cached_item && (*my_body)(my_cached_item) )  
-            my_has_cached_item = true;
-        
-        if ( my_has_cached_item ) {
-            v = my_cached_item;
-            my_reserved = true;
-            return true;
-        } else {
-            return false;
-        }
-    }
-        
-    //! Release a reserved item.  
-    /**  true = item has been released and so remains in sender, dest must request or reserve future items */
-    /* override */ bool try_release( ) {
-        spin_mutex::scoped_lock lock(my_mutex);
-        __TBB_ASSERT( my_reserved && my_has_cached_item, "releasing non-existent reservation" );
-        my_reserved = false;
-        spawn_put();
-        return true;
-    }
-        
-    //! Consumes a reserved item
-    /* override */ bool try_consume( ) {
-        spin_mutex::scoped_lock lock(my_mutex);
-        __TBB_ASSERT( my_reserved && my_has_cached_item, "consuming non-existent reservation" );
-        my_reserved = false;
-        my_has_cached_item = false;
-        if ( !my_successors.empty() ) {
-            spawn_put();
-        }
-        return true;
-    }
-        
-    //! Activates a node that was created in the inactive state
-    void activate() {
-        spin_mutex::scoped_lock lock(my_mutex);
-        my_active = true;
-        if ( !my_successors.empty() )
-            spawn_put();
-    }
-        
-private:
-        
-    task *my_root_task;
-    spin_mutex my_mutex;
-    bool my_active;
-    bool init_my_active;
-    internal::source_body<output_type> *my_body;
-    internal::broadcast_cache< output_type > my_successors;
-    bool my_reserved;
-    bool my_has_cached_item;
-    output_type my_cached_item;
-        
-    friend class internal::source_task< source_node< output_type > >;
-        
-    //! Applies the body
-    /* override */ void apply_body( ) {
-        output_type v;
-        if ( try_reserve(v) == false )
-            return;
-        
-        if ( my_successors.try_put( v ) ) 
-            try_consume();
-        else
-            try_release();
-    }
-        
-    //! Spawns a task that applies the body
-    /* override */ void spawn_put( ) {
-        task::enqueue( * new ( task::allocate_additional_child_of( *my_root_task ) ) 
-           internal::source_task< source_node< output_type > >( *this ) ); 
-    }
-        
-};
-        
-//! Implements a function node that supports Input -> Output
-template < typename Input, typename Output = continue_msg, graph_buffer_policy = queueing, typename Allocator=cache_aligned_allocator<Input> >
-class function_node : public graph_node, public internal::function_input<Input,Output,Allocator>, public internal::function_output<Output> {
-public:
-        
-    typedef Input input_type;
-    typedef Output output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-    typedef internal::function_output<output_type> fOutput_type;
-        
-    //! Constructor
-    template< typename Body >
-    function_node( graph &g, size_t concurrency, Body body )
-    : internal::function_input<input_type,output_type,Allocator>( g, concurrency, body ) {
-    }
-
-    //! Copy constructor
-    function_node( const function_node& src ) : 
-        graph_node(), internal::function_input<input_type,output_type,Allocator>( src ),
-        fOutput_type() {}
-        
-protected:
-
-    /* override */ internal::broadcast_cache<output_type> &successors () { return fOutput_type::my_successors; }
-        
-};
-
-//! Implements a function node that supports Input -> Output
-template < typename Input, typename Output, typename Allocator >
-class function_node<Input,Output,queueing,Allocator> : public graph_node, public internal::function_input<Input,Output,Allocator>, public internal::function_output<Output> {
-public:
-        
-    typedef Input input_type;
-    typedef Output output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-    typedef internal::function_input<input_type,output_type,Allocator> fInput_type;
-    typedef internal::function_input_queue<input_type, Allocator> queue_type;
-    typedef internal::function_output<output_type> fOutput_type;
-        
-    //! Constructor
-    template< typename Body >
-    function_node( graph &g, size_t concurrency, Body body ) : fInput_type( g, concurrency, body, new queue_type() ) {
-    }
-
-    //! Copy constructor
-    function_node( const function_node& src ) : 
-        graph_node(), fInput_type( src, new queue_type() ) , fOutput_type() { }
-
-protected:
-
-    /* override */ internal::broadcast_cache<output_type> &successors () { return fOutput_type::my_successors; }
-        
-};
-
-#include "tbb/internal/_flow_graph_types_impl.h"
-
-#if TBB_PREVIEW_GRAPH_NODES
-//! implements a function node that supports Input -> (set of outputs)
-// Output is a tuple of output types.
-template < typename Input, typename Output, graph_buffer_policy = queueing, typename Allocator=cache_aligned_allocator<Input> >
-class multioutput_function_node : 
-    public graph_node, 
-    public internal::multioutput_function_input
-    <  
-        Input, 
-        typename internal::wrap_tuple_elements<
-            std::tuple_size<Output>::value,  // #elements in tuple
-            internal::function_output,  // wrap this around each element
-            Output // the tuple providing the types
-        >::type,
-        Allocator
-    > {
-private:
-    static const int N = std::tuple_size<Output>::value;
-public:
-    typedef Input input_type;
-    typedef typename internal::wrap_tuple_elements<N,internal::function_output, Output>::type ports_type;
-private:
-    typedef typename internal::multioutput_function_input<input_type, ports_type, Allocator> base_type;
-    typedef typename internal::function_input_queue<input_type,Allocator> queue_type;
-public:
-    template<typename Body>
-    multioutput_function_node( graph &g, size_t concurrency, Body body ) : base_type(g,concurrency, body) {}
-    multioutput_function_node( const multioutput_function_node &other) :
-        graph_node(), base_type(other) {}
-    // all the guts are in multioutput_function_input...
-
-};  // multioutput_function_node
-        
-template < typename Input, typename Output, typename Allocator >
-class multioutput_function_node<Input,Output,queueing,Allocator> : public graph_node, public internal::multioutput_function_input<Input, 
-    typename internal::wrap_tuple_elements<std::tuple_size<Output>::value, internal::function_output, Output>::type, Allocator> {
-    static const int N = std::tuple_size<Output>::value;
-public:
-    typedef Input input_type;
-    typedef typename internal::wrap_tuple_elements<N, internal::function_output, Output>::type ports_type;
-private:
-    typedef typename internal::multioutput_function_input<input_type, ports_type, Allocator> base_type;
-    typedef typename internal::function_input_queue<input_type,Allocator> queue_type;
-public:
-
-    template<typename Body>
-    multioutput_function_node( graph &g, size_t concurrency, Body body) : base_type(g,concurrency, body, new queue_type()) {}
-    multioutput_function_node( const multioutput_function_node &other) :
-        graph_node(), base_type(other, new queue_type()) {}
-
-};  // multioutput_function_node
-
-//! split_node: accepts a tuple as input, forwards each element of the tuple to its
-//  successors.  The node has unlimited concurrency, so though it is marked as
-//  "rejecting" it does not reject inputs.
-template<typename TupleType, typename Allocator=cache_aligned_allocator<TupleType> >
-class split_node : public multioutput_function_node<TupleType, TupleType, rejecting, Allocator> {
-    static const int N = std::tuple_size<TupleType>::value;
-    typedef multioutput_function_node<TupleType,TupleType,rejecting,Allocator> base_type;
-public:
-    typedef typename base_type::ports_type ports_type;
-private:
-
-    struct splitting_body {
-        void operator()(const TupleType& t, ports_type &p) {
-            internal::emit_element<N>::emit_this(t, p);
-        }
-    };
-public:
-    typedef TupleType input_type;
-    typedef Allocator allocator_type;
-    split_node(graph &g) : base_type(g, unlimited, splitting_body()) { }
-    split_node( const split_node & other) : base_type(other) { }
-};
-#endif  // TBB_PREVIEW_GRAPH_NODES
-
-//! Implements an executable node that supports continue_msg -> Output
-template <typename Output>
-class continue_node : public graph_node, public internal::continue_input<Output>, public internal::function_output<Output> {
-public:
-        
-    typedef continue_msg input_type;
-    typedef Output output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-    typedef internal::function_output<output_type> fOutput_type;
-        
-     //! Constructor for executable node with continue_msg -> Output
-     template <typename Body >
-     continue_node( graph &g, Body body )
-             : internal::continue_input<output_type>( g, body ) {
-     }
-        
-    //! Constructor for executable node with continue_msg -> Output
-    template <typename Body >
-    continue_node( graph &g, int number_of_predecessors, Body body )
-        : internal::continue_input<output_type>( g, number_of_predecessors, body )
-    {
-    }
-    //! Copy constructor       
-    continue_node( const continue_node& src ) :
-        graph_node(), internal::continue_input<output_type>(src),
-        internal::function_output<Output>() { }
-
-protected:
-        
-    /* override */ internal::broadcast_cache<output_type> &successors () { return fOutput_type::my_successors; }
-        
-};
-        
-template< typename T >
-class overwrite_node : public graph_node, public receiver<T>, public sender<T> {
-public:
-        
-    typedef T input_type;
-    typedef T output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-        
-    overwrite_node() : my_buffer_is_valid(false) {
-        my_successors.set_owner( this );
-    }
-
-    // Copy constructor; doesn't take anything from src; default won't work
-    overwrite_node( const overwrite_node& ) : 
-        graph_node(), receiver<T>(), sender<T>(), my_buffer_is_valid(false) {
-        my_successors.set_owner( this );
-    }
-        
-    ~overwrite_node() {}
-        
-    /* override */ bool register_successor( successor_type &s ) {
-        spin_mutex::scoped_lock l( my_mutex );
-        if ( my_buffer_is_valid ) {
-            // We have a valid value that must be forwarded immediately.
-            if ( s.try_put( my_buffer ) || !s.register_predecessor( *this  ) ) {
-                // We add the successor: it accepted our put or it rejected it but won't let use become a predecessor
-                my_successors.register_successor( s );
-                return true;
-            } else {
-                // We don't add the successor: it rejected our put and we became its predecessor instead
-                return false;
-            }
-        } else {
-            // No valid value yet, just add as successor
-            my_successors.register_successor( s );
-            return true;
-        }
-    }
-        
-    /* override */ bool remove_successor( successor_type &s ) {
-        spin_mutex::scoped_lock l( my_mutex );
-        my_successors.remove_successor(s);
-        return true;
-    }
-        
-    /* override */ bool try_put( const T &v ) {
-        spin_mutex::scoped_lock l( my_mutex );
-        my_buffer = v;
-        my_buffer_is_valid = true;
-        my_successors.try_put(v);
-        return true;
-    }
-        
-    /* override */ bool try_get( T &v ) {
-        spin_mutex::scoped_lock l( my_mutex );
-        if ( my_buffer_is_valid ) {
-            v = my_buffer;
-            return true;
-        } else {
-            return false;
-        }
-    }
-        
-    bool is_valid() {
-       spin_mutex::scoped_lock l( my_mutex );
-       return my_buffer_is_valid;
-    }
-        
-    void clear() {
-       spin_mutex::scoped_lock l( my_mutex );
-       my_buffer_is_valid = false;
-    }
-        
-protected:
-        
-    spin_mutex my_mutex;
-    internal::broadcast_cache< T, null_rw_mutex > my_successors;
-    T my_buffer;
-    bool my_buffer_is_valid;
-        
-};
-        
-template< typename T >
-class write_once_node : public overwrite_node<T> {
-public:
-        
-    typedef T input_type;
-    typedef T output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-        
-    //! Constructor
-    write_once_node() : overwrite_node<T>() {}
-
-    //! Copy constructor: call base class copy constructor
-    write_once_node( const write_once_node& src ) : overwrite_node<T>(src) {}
-
-    /* override */ bool try_put( const T &v ) {
-        spin_mutex::scoped_lock l( this->my_mutex );
-        if ( this->my_buffer_is_valid ) {
-            return false;
-        } else {
-            this->my_buffer = v;
-            this->my_buffer_is_valid = true;
-            this->my_successors.try_put(v);
-            return true;
-        }
-    }
-};
-        
-//! Forwards messages of type T to all successors
-template <typename T>
-class broadcast_node : public graph_node, public receiver<T>, public sender<T> {
-        
-    internal::broadcast_cache<T> my_successors;
-        
-public:
-        
-    typedef T input_type;
-    typedef T output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-        
-    broadcast_node( ) {
-        my_successors.set_owner( this );
-    }
-        
-    // Copy constructor
-    broadcast_node( const broadcast_node& ) : graph_node(), receiver<T>(), sender<T>() {
-        my_successors.set_owner( this );
-    }
-        
-    //! Adds a successor
-    virtual bool register_successor( receiver<T> &r ) {
-        my_successors.register_successor( r );
-        return true;
-    }
-        
-    //! Removes s as a successor
-    virtual bool remove_successor( receiver<T> &r ) {
-        my_successors.remove_successor( r );
-        return true;
-    }
-        
-    /* override */ bool try_put( const T &t ) {
-        my_successors.try_put(t);
-        return true;
-    }
-        
-};
-
-#include "internal/_flow_graph_item_buffer_impl.h"
-
-//! Forwards messages in arbitrary order
-template <typename T, typename A=cache_aligned_allocator<T> >
-class buffer_node : public graph_node, public reservable_item_buffer<T, A>, public receiver<T>, public sender<T> {
-public:
-    typedef T input_type;
-    typedef T output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-    typedef buffer_node<T, A> my_class;
-protected:
-    typedef size_t size_type;
-    internal::round_robin_cache< T, null_rw_mutex > my_successors;
-        
-    task *my_parent;
-        
-    friend class internal::forward_task< buffer_node< T, A > >;
-        
-    enum op_type {reg_succ, rem_succ, req_item, res_item, rel_res, con_res, put_item, try_fwd};
-    enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        
-    // implements the aggregator_operation concept
-    class buffer_operation : public internal::aggregated_operation< buffer_operation > {
-    public:
-        char type;
-        T *elem;
-        successor_type *r;
-        buffer_operation(const T& e, op_type t) :
-            type(char(t)), elem(const_cast<T*>(&e)), r(NULL) {}
-        buffer_operation(op_type t) : type(char(t)), r(NULL) {}
-    };
-        
-    bool forwarder_busy;
-    typedef internal::aggregating_functor<my_class, buffer_operation> my_handler;
-    friend class internal::aggregating_functor<my_class, buffer_operation>;
-    internal::aggregator< my_handler, buffer_operation> my_aggregator;
-        
-    virtual void handle_operations(buffer_operation *op_list) {
-        buffer_operation *tmp;
-        bool try_forwarding=false;
-        while (op_list) {
-            tmp = op_list;
-            op_list = op_list->next;
-            switch (tmp->type) {
-            case reg_succ: internal_reg_succ(tmp);  try_forwarding = true; break;
-            case rem_succ: internal_rem_succ(tmp); break;
-            case req_item: internal_pop(tmp); break;
-            case res_item: internal_reserve(tmp); break;
-            case rel_res:  internal_release(tmp);  try_forwarding = true; break;
-            case con_res:  internal_consume(tmp);  try_forwarding = true; break;
-            case put_item: internal_push(tmp);  try_forwarding = true; break;
-            case try_fwd:  internal_forward(tmp); break;
-            }
-        }
-        if (try_forwarding && !forwarder_busy) {
-            forwarder_busy = true;
-            task::enqueue(*new(task::allocate_additional_child_of(*my_parent)) internal::forward_task< buffer_node<input_type, A> >(*this));
-        }
-    }
-        
-    //! This is executed by an enqueued task, the "forwarder"
-    virtual void forward() {
-        buffer_operation op_data(try_fwd);
-        do {
-            op_data.status = WAIT;
-            my_aggregator.execute(&op_data);
-        } while (op_data.status == SUCCEEDED);
-    }
-        
-    //! Register successor
-    virtual void internal_reg_succ(buffer_operation *op) {
-        my_successors.register_successor(*(op->r));
-        __TBB_store_with_release(op->status, SUCCEEDED);
-    }
-        
-    //! Remove successor
-    virtual void internal_rem_succ(buffer_operation *op) {
-        my_successors.remove_successor(*(op->r));
-        __TBB_store_with_release(op->status, SUCCEEDED);
-    }
-        
-    //! Tries to forward valid items to successors
-    virtual void internal_forward(buffer_operation *op) {
-        T i_copy;
-        bool success = false; // flagged when a successor accepts
-        size_type counter = my_successors.size();
-        // Try forwarding, giving each successor a chance
-        while (counter>0 && !this->buffer_empty() && this->item_valid(this->my_tail-1)) {
-            this->fetch_back(i_copy);
-            if( my_successors.try_put(i_copy) ) {
-                this->invalidate_back();
-                --(this->my_tail);
-                success = true; // found an accepting successor
-            }
-            --counter;
-        }
-        if (success && !counter)
-            __TBB_store_with_release(op->status, SUCCEEDED);
-        else {
-            __TBB_store_with_release(op->status, FAILED);
-            forwarder_busy = false;
-        }
-    }
-        
-    virtual void internal_push(buffer_operation *op) {
-        this->push_back(*(op->elem));
-        __TBB_store_with_release(op->status, SUCCEEDED);
-    }
-        
-    virtual void internal_pop(buffer_operation *op) {
-        if(this->pop_back(*(op->elem))) {
-            __TBB_store_with_release(op->status, SUCCEEDED);
-        }
-        else {
-            __TBB_store_with_release(op->status, FAILED);
-        }
-    }
-        
-    virtual void internal_reserve(buffer_operation *op) {
-        if(this->reserve_front(*(op->elem))) {
-            __TBB_store_with_release(op->status, SUCCEEDED);
-        }
-        else {
-            __TBB_store_with_release(op->status, FAILED);
-        }
-    }
-        
-    virtual void internal_consume(buffer_operation *op) {
-        this->consume_front();
-        __TBB_store_with_release(op->status, SUCCEEDED);
-    }
-        
-    virtual void internal_release(buffer_operation *op) {
-        this->release_front();
-        __TBB_store_with_release(op->status, SUCCEEDED);
-    }
-        
-public:
-    //! Constructor
-    buffer_node( graph &g ) : reservable_item_buffer<T>(),
-        my_parent( g.root_task() ), forwarder_busy(false) {
-        my_successors.set_owner(this);
-        my_aggregator.initialize_handler(my_handler(this));
-    }
-
-    //! Copy constructor
-    buffer_node( const buffer_node& src ) :
-        graph_node(), reservable_item_buffer<T>(), receiver<T>(), sender<T>(),
-        my_parent( src.my_parent ) {
-        forwarder_busy = false;
-        my_successors.set_owner(this);
-        my_aggregator.initialize_handler(my_handler(this));
-    }
-
-    virtual ~buffer_node() {}
-        
-    //
-    // message sender implementation
-    //
-        
-    //! Adds a new successor.
-    /** Adds successor r to the list of successors; may forward tasks.  */
-    /* override */ bool register_successor( receiver<output_type> &r ) {
-        buffer_operation op_data(reg_succ);
-        op_data.r = &r;
-        my_aggregator.execute(&op_data);
-        return true;
-    }
-        
-    //! Removes a successor.
-    /** Removes successor r from the list of successors.
-        It also calls r.remove_predecessor(*this) to remove this node as a predecessor. */
-    /* override */ bool remove_successor( receiver<output_type> &r ) {
-        r.remove_predecessor(*this);
-        buffer_operation op_data(rem_succ);
-        op_data.r = &r;
-        my_aggregator.execute(&op_data);
-        return true;
-    }
-        
-    //! Request an item from the buffer_node
-    /**  true = v contains the returned item<BR>
-         false = no item has been returned */
-    /* override */ bool try_get( T &v ) {
-        buffer_operation op_data(req_item);
-        op_data.elem = &v;
-        my_aggregator.execute(&op_data);
-        return (op_data.status==SUCCEEDED);
-    }
-        
-    //! Reserves an item.
-    /**  false = no item can be reserved<BR>
-         true = an item is reserved */
-    /* override */ bool try_reserve( T &v ) {
-        buffer_operation op_data(res_item);
-        op_data.elem = &v;
-        my_aggregator.execute(&op_data);
-        return (op_data.status==SUCCEEDED);
-    }
-        
-    //! Release a reserved item.
-    /**  true = item has been released and so remains in sender */
-    /* override */ bool try_release() {
-        buffer_operation op_data(rel_res);
-        my_aggregator.execute(&op_data);
-        return true;
-    }
-        
-    //! Consumes a reserved item.
-    /** true = item is removed from sender and reservation removed */
-    /* override */ bool try_consume() {
-        buffer_operation op_data(con_res);
-        my_aggregator.execute(&op_data);
-        return true;
-    }
-        
-    //! Receive an item
-    /** true is always returned */
-    /* override */ bool try_put(const T &t) {
-        buffer_operation op_data(t, put_item);
-        my_aggregator.execute(&op_data);
-        return true;
-    }
-};
-        
-        
-//! Forwards messages in FIFO order
-template <typename T, typename A=cache_aligned_allocator<T> >
-class queue_node : public buffer_node<T, A> {
-protected:
-typedef typename buffer_node<T, A>::size_type size_type;
-typedef typename buffer_node<T, A>::buffer_operation queue_operation;
-        
-    enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        
-    //! Tries to forward valid items to successors
-    /* override */ void internal_forward(queue_operation *op) {
-        T i_copy;
-        bool success = false; // flagged when a successor accepts
-        size_type counter = this->my_successors.size();
-        if (this->my_reserved || !this->item_valid(this->my_head)){
-            __TBB_store_with_release(op->status, FAILED);
-            this->forwarder_busy = false;
-            return;
-        }
-        // Keep trying to send items while there is at least one accepting successor
-        while (counter>0 && this->item_valid(this->my_head)) {
-            this->fetch_front(i_copy);
-            if(this->my_successors.try_put(i_copy)) {
-                 this->invalidate_front();
-                 ++(this->my_head);
-                success = true; // found an accepting successor
-            }
-            --counter;
-        }
-        if (success && !counter)
-            __TBB_store_with_release(op->status, SUCCEEDED);
-        else {
-            __TBB_store_with_release(op->status, FAILED);
-            this->forwarder_busy = false;
-        }
-    }
-        
-    /* override */ void internal_pop(queue_operation *op) {
-        if ( this->my_reserved || !this->item_valid(this->my_head)){
-            __TBB_store_with_release(op->status, FAILED);
-        }
-        else {
-            this->pop_front(*(op->elem));
-            __TBB_store_with_release(op->status, SUCCEEDED);
-        }
-    }
-    /* override */ void internal_reserve(queue_operation *op) {
-        if (this->my_reserved || !this->item_valid(this->my_head)) {
-            __TBB_store_with_release(op->status, FAILED);
-        }
-        else {
-            this->my_reserved = true;
-            this->fetch_front(*(op->elem));
-            this->invalidate_front();
-            __TBB_store_with_release(op->status, SUCCEEDED);
-        }
-    }
-    /* override */ void internal_consume(queue_operation *op) {
-        this->consume_front();
-        __TBB_store_with_release(op->status, SUCCEEDED);
-    }
-        
-public:
-        
-    typedef T input_type;
-    typedef T output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-        
-    //! Constructor
-    queue_node( graph &g ) : buffer_node<T, A>(g) {}
-
-    //! Copy constructor
-    queue_node( const queue_node& src) : buffer_node<T, A>(src) {}
-};
-        
-//! Forwards messages in sequence order
-template< typename T, typename A=cache_aligned_allocator<T> >
-class sequencer_node : public queue_node<T, A> {
-    internal::function_body< T, size_t > *my_sequencer;
-public:
-        
-    typedef T input_type;
-    typedef T output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-        
-    //! Constructor
-    template< typename Sequencer >
-    sequencer_node( graph &g, const Sequencer& s ) : queue_node<T, A>(g),
-        my_sequencer(new internal::function_body_leaf< T, size_t, Sequencer>(s) ) {}
-
-    //! Copy constructor
-    sequencer_node( const sequencer_node& src ) : queue_node<T, A>(src),
-        my_sequencer( src.my_sequencer->clone() ) {}
-        
-    //! Destructor
-    ~sequencer_node() { delete my_sequencer; }
-protected:
-    typedef typename buffer_node<T, A>::size_type size_type;
-    typedef typename buffer_node<T, A>::buffer_operation sequencer_operation;
-        
-    enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        
-private:
-    /* override */ void internal_push(sequencer_operation *op) {
-        size_type tag = (*my_sequencer)(*(op->elem));
-        
-        this->my_tail = (tag+1 > this->my_tail) ? tag+1 : this->my_tail;
-        
-        if(this->size() > this->capacity())
-            this->grow_my_array(this->size());  // tail already has 1 added to it
-        this->item(tag) = std::make_pair( *(op->elem), true );
-        __TBB_store_with_release(op->status, SUCCEEDED);
-    }
-};
-        
-//! Forwards messages in priority order
-template< typename T, typename Compare = std::less<T>, typename A=cache_aligned_allocator<T> >
-class priority_queue_node : public buffer_node<T, A> {
-public:
-    typedef T input_type;
-    typedef T output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-        
-    //! Constructor
-    priority_queue_node( graph &g ) : buffer_node<T, A>(g), mark(0) {}
-
-    //! Copy constructor
-    priority_queue_node( const priority_queue_node &src ) : buffer_node<T, A>(src), mark(0) {}
-        
-protected:
-    typedef typename buffer_node<T, A>::size_type size_type;
-    typedef typename buffer_node<T, A>::item_type item_type;
-    typedef typename buffer_node<T, A>::buffer_operation prio_operation;
-        
-    enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        
-    /* override */ void handle_operations(prio_operation *op_list) {
-        prio_operation *tmp /*, *pop_list*/ ;
-        bool try_forwarding=false;
-        while (op_list) {
-            tmp = op_list;
-            op_list = op_list->next;
-            switch (tmp->type) {
-            case buffer_node<T, A>::reg_succ: this->internal_reg_succ(tmp); try_forwarding = true; break;
-            case buffer_node<T, A>::rem_succ: this->internal_rem_succ(tmp); break;
-            case buffer_node<T, A>::put_item: internal_push(tmp); try_forwarding = true; break;
-            case buffer_node<T, A>::try_fwd: internal_forward(tmp); break;
-            case buffer_node<T, A>::rel_res: internal_release(tmp); try_forwarding = true; break;
-            case buffer_node<T, A>::con_res: internal_consume(tmp); try_forwarding = true; break;
-            case buffer_node<T, A>::req_item: internal_pop(tmp); break;
-            case buffer_node<T, A>::res_item: internal_reserve(tmp); break;
-            }
-        }
-        // process pops!  for now, no special pop processing
-        if (mark<this->my_tail) heapify();
-        if (try_forwarding && !this->forwarder_busy) {
-            this->forwarder_busy = true;
-            task::enqueue(*new(task::allocate_additional_child_of(*(this->my_parent))) internal::forward_task< buffer_node<input_type, A> >(*this));
-        }
-    }
-        
-    //! Tries to forward valid items to successors
-    /* override */ void internal_forward(prio_operation *op) {
-        T i_copy;
-        bool success = false; // flagged when a successor accepts
-        size_type counter = this->my_successors.size();
-        
-        if (this->my_reserved || this->my_tail == 0) {
-            __TBB_store_with_release(op->status, FAILED);
-            this->forwarder_busy = false;
-            return;
-        }
-        // Keep trying to send while there exists an accepting successor
-        while (counter>0 && this->my_tail > 0) {
-            i_copy = this->my_array[0].first;
-            bool msg = this->my_successors.try_put(i_copy);
-            if ( msg == true ) {
-                 if (mark == this->my_tail) --mark;
-                --(this->my_tail);
-                this->my_array[0].first=this->my_array[this->my_tail].first;
-                if (this->my_tail > 1) // don't reheap for heap of size 1
-                    reheap();
-                success = true; // found an accepting successor
-            }
-            --counter;
-        }
-        if (success && !counter)
-            __TBB_store_with_release(op->status, SUCCEEDED);
-        else {
-            __TBB_store_with_release(op->status, FAILED);
-            this->forwarder_busy = false;
-        }
-    }
-        
-    /* override */ void internal_push(prio_operation *op) {
-        if ( this->my_tail >= this->my_array_size )
-            this->grow_my_array( this->my_tail + 1 );
-        this->my_array[this->my_tail] = std::make_pair( *(op->elem), true );
-        ++(this->my_tail);
-        __TBB_store_with_release(op->status, SUCCEEDED);
-    }
-    /* override */ void internal_pop(prio_operation *op) {
-        if ( this->my_reserved == true || this->my_tail == 0 ) {
-            __TBB_store_with_release(op->status, FAILED);
-        }
-        else {
-            if (mark<this->my_tail &&
-                compare(this->my_array[0].first,
-                        this->my_array[this->my_tail-1].first)) {
-                // there are newly pushed elems; last one higher than top
-                // copy the data
-                *(op->elem) = this->my_array[this->my_tail-1].first;
-                --(this->my_tail);
-                __TBB_store_with_release(op->status, SUCCEEDED);
-            }
-            else { // extract and push the last element down heap
-                *(op->elem) = this->my_array[0].first; // copy the data
-                if (mark == this->my_tail) --mark;
-                --(this->my_tail);
-                __TBB_store_with_release(op->status, SUCCEEDED);
-                this->my_array[0].first=this->my_array[this->my_tail].first;
-                if (this->my_tail > 1) // don't reheap for heap of size 1
-                    reheap();
-            }
-        }
-    }
-    /* override */ void internal_reserve(prio_operation *op) {
-        if (this->my_reserved == true || this->my_tail == 0) {
-            __TBB_store_with_release(op->status, FAILED);
-        }
-        else {
-            this->my_reserved = true;
-            *(op->elem) = reserved_item = this->my_array[0].first;
-            if (mark == this->my_tail) --mark;
-            --(this->my_tail);
-            __TBB_store_with_release(op->status, SUCCEEDED);
-            this->my_array[0].first = this->my_array[this->my_tail].first;
-            if (this->my_tail > 1) // don't reheap for heap of size 1
-                reheap();
-        }
-    }
-    /* override */ void internal_consume(prio_operation *op) {
-        this->my_reserved = false;
-        __TBB_store_with_release(op->status, SUCCEEDED);
-    }
-    /* override */ void internal_release(prio_operation *op) {
-        if (this->my_tail >= this->my_array_size)
-            this->grow_my_array( this->my_tail + 1 );
-        this->my_array[this->my_tail] = std::make_pair(reserved_item, true);
-        ++(this->my_tail);
-        this->my_reserved = false;
-        __TBB_store_with_release(op->status, SUCCEEDED);
-        heapify();
-    }
-private:
-    Compare compare;
-    size_type mark;
-    input_type reserved_item;
-        
-    void heapify() {
-        if (!mark) mark = 1;
-        for (; mark<this->my_tail; ++mark) { // for each unheaped element
-            size_type cur_pos = mark;
-            input_type to_place = this->my_array[mark].first;
-            do { // push to_place up the heap
-                size_type parent = (cur_pos-1)>>1;
-                if (!compare(this->my_array[parent].first, to_place))
-                    break;
-                this->my_array[cur_pos].first = this->my_array[parent].first;
-                cur_pos = parent;
-            } while( cur_pos );
-            this->my_array[cur_pos].first = to_place;
-        }
-    }
-        
-    void reheap() {
-        size_type cur_pos=0, child=1;
-        while (child < mark) {
-            size_type target = child;
-            if (child+1<mark &&
-                compare(this->my_array[child].first,
-                        this->my_array[child+1].first))
-                ++target;
-            // target now has the higher priority child
-            if (compare(this->my_array[target].first,
-                        this->my_array[this->my_tail].first))
-                break;
-            this->my_array[cur_pos].first = this->my_array[target].first;
-            cur_pos = target;
-            child = (cur_pos<<1)+1;
-        }
-        this->my_array[cur_pos].first = this->my_array[this->my_tail].first;
-    }
-};
-        
-//! Forwards messages only if the threshold has not been reached
-/** This node forwards items until its threshold is reached.
-    It contains no buffering.  If the downstream node rejects, the
-    message is dropped. */
-template< typename T >
-class limiter_node : public graph_node, public receiver< T >, public sender< T > {
-public:
-        
-    typedef T input_type;
-    typedef T output_type;
-    typedef sender< input_type > predecessor_type;
-    typedef receiver< output_type > successor_type;
-        
-private:
-        
-    task *my_root_task;
-    size_t my_threshold;
-    size_t my_count;
-    internal::predecessor_cache< T > my_predecessors;
-    spin_mutex my_mutex;
-    internal::broadcast_cache< T > my_successors;
-    int init_decrement_predecessors;
-
-    friend class internal::forward_task< limiter_node<T> >;
-        
-    // Let decrementer call decrement_counter()
-    friend class internal::decrementer< limiter_node<T> >;
-        
-    void decrement_counter() {
-        input_type v;
-        
-        // If we can't get / put an item immediately then drop the count
-        if ( my_predecessors.get_item( v ) == false 
-             || my_successors.try_put(v) == false ) {
-            spin_mutex::scoped_lock lock(my_mutex);
-            --my_count;
-            if ( !my_predecessors.empty() ) 
-                task::enqueue( * new ( task::allocate_additional_child_of( *my_root_task ) ) 
-                            internal::forward_task< limiter_node<T> >( *this ) );
-        }
-    }
-        
-    void forward() {
-        {
-            spin_mutex::scoped_lock lock(my_mutex);
-            if ( my_count < my_threshold ) 
-                ++my_count;
-            else
-                return;
-        }
-        decrement_counter();
-    }
-        
-public:
-        
-    //! The internal receiver< continue_msg > that decrements the count
-    internal::decrementer< limiter_node<T> > decrement;
-        
-    //! Constructor
-    limiter_node(graph &g, size_t threshold, int num_decrement_predecessors=0) : 
-        my_root_task(g.root_task()), my_threshold(threshold), my_count(0), 
-        init_decrement_predecessors(num_decrement_predecessors), 
-        decrement(num_decrement_predecessors) 
-    {
-        my_predecessors.set_owner(this);
-        my_successors.set_owner(this);
-        decrement.set_owner(this);
-    }
-        
-    //! Copy constructor
-    limiter_node( const limiter_node& src ) : 
-        graph_node(), receiver<T>(), sender<T>(),
-        my_root_task(src.my_root_task), my_threshold(src.my_threshold), my_count(0), 
-        init_decrement_predecessors(src.init_decrement_predecessors), 
-        decrement(src.init_decrement_predecessors) 
-    {
-        my_predecessors.set_owner(this);
-        my_successors.set_owner(this);
-        decrement.set_owner(this);
-    }
-
-    //! Replace the current successor with this new successor
-    /* override */ bool register_successor( receiver<output_type> &r ) {
-        my_successors.register_successor(r);
-        return true;
-    }
-        
-    //! Removes a successor from this node
-    /** r.remove_predecessor(*this) is also called. */
-    /* override */ bool remove_successor( receiver<output_type> &r ) {
-        r.remove_predecessor(*this);
-        my_successors.remove_successor(r);
-        return true;
-    }
-        
-    //! Puts an item to this receiver
-    /* override */ bool try_put( const T &t ) {
-        {
-            spin_mutex::scoped_lock lock(my_mutex);
-            if ( my_count >= my_threshold ) 
-                return false;
-            else
-                ++my_count; 
-        }
-        
-        bool msg = my_successors.try_put(t);
-        
-        if ( msg != true ) {
-            spin_mutex::scoped_lock lock(my_mutex);
-            --my_count;
-            if ( !my_predecessors.empty() ) 
-                task::enqueue( * new ( task::allocate_additional_child_of( *my_root_task ) ) 
-                            internal::forward_task< limiter_node<T> >( *this ) );
-        }
-        
-        return msg;
-    }
-        
-    //! Removes src from the list of cached predecessors.
-    /* override */ bool register_predecessor( predecessor_type &src ) {
-        spin_mutex::scoped_lock lock(my_mutex);
-        my_predecessors.add( src );
-        if ( my_count < my_threshold && !my_successors.empty() ) 
-            task::enqueue( * new ( task::allocate_additional_child_of( *my_root_task ) ) 
-                           internal::forward_task< limiter_node<T> >( *this ) );
-        return true;
-    }
-        
-    //! Removes src from the list of cached predecessors.
-    /* override */ bool remove_predecessor( predecessor_type &src ) {
-        my_predecessors.remove( src );
-        return true;
-    }
-        
-};
-
-#include "internal/_flow_graph_join_impl.h"
-
-using internal::reserving_port;
-using internal::queueing_port;
-using internal::tag_matching_port;
-using internal::input_port;
-using internal::tag_value;
-using internal::NO_TAG;
-
-template<typename OutputTuple, graph_buffer_policy JP=queueing> class join_node;
-
-template<typename OutputTuple>
-class join_node<OutputTuple,reserving>: public internal::unfolded_join_node<std::tuple_size<OutputTuple>::value, reserving_port, OutputTuple, reserving> {
-private:
-    static const int N = std::tuple_size<OutputTuple>::value;
-    typedef typename internal::unfolded_join_node<N, reserving_port, OutputTuple, reserving> unfolded_type;
-public:
-    typedef OutputTuple output_type;
-    typedef typename unfolded_type::input_ports_tuple_type input_ports_tuple_type;
-    join_node(graph &g) : unfolded_type(g) { }
-    join_node(const join_node &other) : unfolded_type(other) {}
-};
-
-template<typename OutputTuple>
-class join_node<OutputTuple,queueing>: public internal::unfolded_join_node<std::tuple_size<OutputTuple>::value, queueing_port, OutputTuple, queueing> {
-private:
-    static const int N = std::tuple_size<OutputTuple>::value;
-    typedef typename internal::unfolded_join_node<N, queueing_port, OutputTuple, queueing> unfolded_type;
-public:
-    typedef OutputTuple output_type;
-    typedef typename unfolded_type::input_ports_tuple_type input_ports_tuple_type;
-    join_node(graph &g) : unfolded_type(g) { }
-    join_node(const join_node &other) : unfolded_type(other) {}
-};
-
-// template for tag_matching join_node
-template<typename OutputTuple>
-class join_node<OutputTuple, tag_matching> : public internal::unfolded_join_node<std::tuple_size<OutputTuple>::value,
-      tag_matching_port, OutputTuple, tag_matching> {
-private:
-    static const int N = std::tuple_size<OutputTuple>::value;
-    typedef typename internal::unfolded_join_node<N, tag_matching_port, OutputTuple, tag_matching> unfolded_type;
-public:
-    typedef OutputTuple output_type;
-    typedef typename unfolded_type::input_ports_tuple_type input_ports_tuple_type;
-    template<typename B0, typename B1>
-    join_node(graph &g, B0 b0, B1 b1) : unfolded_type(g, b0, b1) { }
-    template<typename B0, typename B1, typename B2>
-    join_node(graph &g, B0 b0, B1 b1, B2 b2) : unfolded_type(g, b0, b1, b2) { }
-    template<typename B0, typename B1, typename B2, typename B3>
-    join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3) : unfolded_type(g, b0, b1, b2, b3) { }
-    template<typename B0, typename B1, typename B2, typename B3, typename B4>
-    join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4) : unfolded_type(g, b0, b1, b2, b3, b4) { }
-    template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5>
-    join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5) : unfolded_type(g, b0, b1, b2, b3, b4, b5) { }
-    template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5, typename B6>
-    join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5, B6 b6) : unfolded_type(g, b0, b1, b2, b3, b4, b5, b6) { }
-    template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5, typename B6, typename B7>
-    join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5, B6 b6, B7 b7) : unfolded_type(g, b0, b1, b2, b3, b4, b5, b6, b7) { }
-    template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5, typename B6, typename B7, typename B8>
-    join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5, B6 b6, B7 b7, B8 b8) : unfolded_type(g, b0, b1, b2, b3, b4, b5, b6, b7, b8) { }
-    template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5, typename B6, typename B7, typename B8, typename B9>
-    join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5, B6 b6, B7 b7, B8 b8, B9 b9) : unfolded_type(g, b0, b1, b2, b3, b4, b5, b6, b7, b8, b9) { }
-    join_node(const join_node &other) : unfolded_type(other) {}
-};
-
-#if TBB_PREVIEW_GRAPH_NODES
-// or node
-#include "internal/_flow_graph_or_impl.h"
-
-template<typename InputTuple>
-class or_node : public internal::unfolded_or_node<InputTuple> {
-private:
-    static const int N = std::tuple_size<InputTuple>::value;
-public:
-    typedef typename internal::or_output_type<InputTuple>::type output_type;
-    typedef typename internal::unfolded_or_node<InputTuple> unfolded_type;
-    or_node() : unfolded_type() { }
-    // Copy constructor
-    or_node( const or_node& /*other*/ ) : unfolded_type() { }
-};
-#endif  // TBB_PREVIEW_GRAPH_NODES
-
-//! Makes an edge between a single predecessor and a single successor
-template< typename T >
-inline void make_edge( sender<T> &p, receiver<T> &s ) {
-    p.register_successor( s );
-}
-        
-//! Makes an edge between a single predecessor and a single successor
-template< typename T >
-inline void remove_edge( sender<T> &p, receiver<T> &s ) {
-    p.remove_successor( s );
-}
-
-//! Returns a copy of the body from a function or continue node
-template< typename Body, typename Node >
-Body copy_body( Node &n ) {
-    return n.template copy_function_object<Body>();
-}
-        
-        
-} // interface6
-
-    using interface6::graph;
-    using interface6::graph_node;
-    using interface6::continue_msg;
-    using interface6::sender;
-    using interface6::receiver;
-    using interface6::continue_receiver;
-
-    using interface6::source_node;
-    using interface6::function_node;
-#if TBB_PREVIEW_GRAPH_NODES
-    using interface6::multioutput_function_node;
-    using interface6::split_node;
-    using interface6::internal::output_port;
-    using interface6::or_node;
-#endif
-    using interface6::continue_node;
-    using interface6::overwrite_node;
-    using interface6::write_once_node;
-    using interface6::broadcast_node;
-    using interface6::buffer_node;
-    using interface6::queue_node;
-    using interface6::sequencer_node;
-    using interface6::priority_queue_node;
-    using interface6::limiter_node;
-    using namespace interface6::internal::graph_policy_namespace;
-    using interface6::join_node;
-    using interface6::input_port;
-    using interface6::copy_body; 
-    using interface6::make_edge; 
-    using interface6::remove_edge; 
-    using interface6::internal::NO_TAG;
-    using interface6::internal::tag_value;
-
-} // flow
-} // tbb
-
-#endif // __TBB_flow_graph_H
diff --git a/dependencies64/tbb/include/tbb/index.html b/dependencies64/tbb/include/tbb/index.html
deleted file mode 100644 (file)
index 5eaf53e..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-<HTML>
-<BODY>
-
-<H2>Overview</H2>
-Include files for Threading Building Blocks classes and functions.
-
-<BR><A HREF=".">Click here</A> to see all files in the directory.
-
-<H2>Directories</H2>
-<DL>
-<DT><A HREF="machine">machine</A>
-<DD>Include files for low-level architecture specific functionality.
-<DT><A HREF="compat">compat</A>
-<DD>Include files for source level compatibility with other frameworks.
-</DL>
-
-<HR>
-<A HREF="../index.html">Up to parent directory</A>
-<p></p>
-Copyright &copy; 2005-2011 Intel Corporation.  All Rights Reserved.
-<P></P>
-Intel is a registered trademark or trademark of Intel Corporation
-or its subsidiaries in the United States and other countries.
-<p></p>
-* Other names and brands may be claimed as the property of others.
-</BODY>
-</HTML>
diff --git a/dependencies64/tbb/include/tbb/internal/_aggregator_impl.h b/dependencies64/tbb/include/tbb/internal/_aggregator_impl.h
deleted file mode 100644 (file)
index 33384c1..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB__aggregator_impl_H
-#define __TBB__aggregator_impl_H
-
-#include "../atomic.h"
-#include "../tbb_profiling.h"
-
-namespace tbb {
-namespace interface6 {
-namespace internal {
-
-using namespace tbb::internal;
-
-//! aggregated_operation base class
-template <typename Derived>
-class aggregated_operation {
- public:
-    uintptr_t status;
-    Derived *next;
-    aggregated_operation() : status(0), next(NULL) {}
-};
-
-//! Aggregator base class
-/** An aggregator for collecting operations coming from multiple sources and executing
-    them serially on a single thread.  operation_type must be derived from
-    aggregated_operation. The parameter handler_type is a functor that will be passed the
-    list of operations and is expected to handle each operation appropriately, setting the
-    status of each operation to non-zero.*/
- template < typename handler_type, typename operation_type >
-class aggregator {
- public:
-    aggregator() : handler_busy(false) { pending_operations = NULL; }
-    explicit aggregator(handler_type h) : handler_busy(false), handle_operations(h) {
-        pending_operations = NULL; 
-    }
-
-    void initialize_handler(handler_type h) { handle_operations = h; }
-
-    //! Place operation in list
-    /** Place operation in list and either handle list or wait for operation to
-        complete.  */
-    void execute(operation_type *op) {
-        operation_type *res;
-
-        // ITT note: &(op->status) tag is used to cover accesses to this op node. This
-        // thread has created the operation, and now releases it so that the handler
-        // thread may handle the associated operation w/o triggering a race condition;
-        // thus this tag will be acquired just before the operation is handled in the
-        // handle_operations functor.
-        call_itt_notify(releasing, &(op->status));
-        // insert the operation in the queue
-        do {
-            // ITT may flag the following line as a race; it is a false positive:
-            // This is an atomic read; we don't provide itt_hide_load_word for atomics
-            op->next = res = pending_operations; // NOT A RACE 
-        } while (pending_operations.compare_and_swap(op, res) != res);
-        if (!res) { // first in the list; handle the operations
-            // ITT note: &pending_operations tag covers access to the handler_busy flag,
-            // which this waiting handler thread will try to set before entering
-            // handle_operations.
-            call_itt_notify(acquired, &pending_operations);
-            start_handle_operations();
-            __TBB_ASSERT(op->status, NULL);
-        }
-        else { // not first; wait for op to be ready
-            call_itt_notify(prepare, &(op->status));
-            spin_wait_while_eq(op->status, uintptr_t(0));
-            itt_load_word_with_acquire(op->status);
-        }
-    }
-
- private:
-    //! An atomically updated list (aka mailbox) of pending operations
-    atomic<operation_type *> pending_operations;
-    //! Controls thread access to handle_operations
-    uintptr_t handler_busy;
-    handler_type handle_operations;
-
-    //! Trigger the handling of operations when the handler is free
-    void start_handle_operations() {
-        operation_type *op_list;
-
-        // ITT note: &handler_busy tag covers access to pending_operations as it is passed
-        // between active and waiting handlers.  Below, the waiting handler waits until
-        // the active handler releases, and the waiting handler acquires &handler_busy as
-        // it becomes the active_handler. The release point is at the end of this
-        // function, when all operations in pending_operations have been handled by the
-        // owner of this aggregator.
-        call_itt_notify(prepare, &handler_busy);
-        // get the handler_busy:
-        // only one thread can possibly spin here at a time
-        spin_wait_until_eq(handler_busy, uintptr_t(0));
-        call_itt_notify(acquired, &handler_busy);
-        // acquire fence not necessary here due to causality rule and surrounding atomics
-        __TBB_store_with_release(handler_busy, uintptr_t(1));
-
-        // ITT note: &pending_operations tag covers access to the handler_busy flag
-        // itself. Capturing the state of the pending_operations signifies that
-        // handler_busy has been set and a new active handler will now process that list's
-        // operations.
-        call_itt_notify(releasing, &pending_operations);
-        // grab pending_operations
-        op_list = pending_operations.fetch_and_store(NULL);
-
-        // handle all the operations
-        handle_operations(op_list);
-
-        // release the handler
-        itt_store_word_with_release(handler_busy, uintptr_t(0));
-    }
-};
-
-// the most-compatible friend declaration (vs, gcc, icc) is
-//    template<class U, class V> friend class aggregating_functor;
-template<typename aggregating_class, typename operation_list>
-class aggregating_functor {
-    aggregating_class *fi;
-public:
-    aggregating_functor() {}
-    aggregating_functor(aggregating_class *fi_) : fi(fi_) {}
-    void operator()(operation_list* op_list) { fi->handle_operations(op_list); }
-};
-
-} // namespace internal
-} // namespace interface6
-
-namespace internal {
-    using interface6::internal::aggregated_operation;
-    using interface6::internal::aggregator;
-    using interface6::internal::aggregating_functor;
-} // namespace internal
-
-} // namespace tbb
-
-#endif  // __TBB__aggregator_impl_H
diff --git a/dependencies64/tbb/include/tbb/internal/_concurrent_queue_impl.h b/dependencies64/tbb/include/tbb/internal/_concurrent_queue_impl.h
deleted file mode 100644 (file)
index 4d6adbb..0000000
+++ /dev/null
@@ -1,1023 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB__concurrent_queue_impl_H
-#define __TBB__concurrent_queue_impl_H
-
-#ifndef __TBB_concurrent_queue_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#include "../tbb_stddef.h"
-#include "../tbb_machine.h"
-#include "../atomic.h"
-#include "../spin_mutex.h"
-#include "../cache_aligned_allocator.h"
-#include "../tbb_exception.h"
-#include "../tbb_profiling.h"
-#include <new>
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <iterator>
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-namespace tbb {
-
-#if !__TBB_TEMPLATE_FRIENDS_BROKEN
-
-// forward declaration
-namespace strict_ppl {
-template<typename T, typename A> class concurrent_queue;
-}
-
-template<typename T, typename A> class concurrent_bounded_queue;
-
-namespace deprecated {
-template<typename T, typename A> class concurrent_queue;
-}
-#endif
-
-//! For internal use only.
-namespace strict_ppl {
-
-//! @cond INTERNAL
-namespace internal {
-
-using namespace tbb::internal;
-
-typedef size_t ticket;
-
-template<typename T> class micro_queue ;
-template<typename T> class micro_queue_pop_finalizer ;
-template<typename T> class concurrent_queue_base_v3;
-
-//! parts of concurrent_queue_rep that do not have references to micro_queue
-/**
- * For internal use only.
- */
-struct concurrent_queue_rep_base : no_copy {
-    template<typename T> friend class micro_queue;
-    template<typename T> friend class concurrent_queue_base_v3;
-
-protected:
-    //! Approximately n_queue/golden ratio
-    static const size_t phi = 3;
-
-public:
-    // must be power of 2
-    static const size_t n_queue = 8;
-
-    //! Prefix on a page
-    struct page {
-        page* next;
-        uintptr_t mask; 
-    };
-
-    atomic<ticket> head_counter;
-    char pad1[NFS_MaxLineSize-sizeof(atomic<ticket>)];
-    atomic<ticket> tail_counter;
-    char pad2[NFS_MaxLineSize-sizeof(atomic<ticket>)];
-
-    //! Always a power of 2
-    size_t items_per_page;
-
-    //! Size of an item
-    size_t item_size;
-
-    //! number of invalid entries in the queue
-    atomic<size_t> n_invalid_entries;
-
-    char pad3[NFS_MaxLineSize-sizeof(size_t)-sizeof(size_t)-sizeof(atomic<size_t>)];
-} ;
-
-inline bool is_valid_page(const concurrent_queue_rep_base::page* p) {
-    return uintptr_t(p)>1;
-}
-
-//! Abstract class to define interface for page allocation/deallocation
-/**
- * For internal use only.
- */
-class concurrent_queue_page_allocator
-{
-    template<typename T> friend class micro_queue ;
-    template<typename T> friend class micro_queue_pop_finalizer ;
-protected:
-    virtual ~concurrent_queue_page_allocator() {}
-private:
-    virtual concurrent_queue_rep_base::page* allocate_page() = 0;
-    virtual void deallocate_page( concurrent_queue_rep_base::page* p ) = 0;
-} ;
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-// unary minus operator applied to unsigned type, result still unsigned
-#pragma warning( push )
-#pragma warning( disable: 4146 )
-#endif
-
-//! A queue using simple locking.
-/** For efficiency, this class has no constructor.
-    The caller is expected to zero-initialize it. */
-template<typename T>
-class micro_queue : no_copy {
-    typedef concurrent_queue_rep_base::page page;
-
-    //! Class used to ensure exception-safety of method "pop" 
-    class destroyer: no_copy {
-        T& my_value;
-    public:
-        destroyer( T& value ) : my_value(value) {}
-        ~destroyer() {my_value.~T();}          
-    };
-
-    void copy_item( page& dst, size_t index, const void* src ) {
-        new( &get_ref(dst,index) ) T(*static_cast<const T*>(src)); 
-    }
-
-    void copy_item( page& dst, size_t dindex, const page& src, size_t sindex ) {
-        new( &get_ref(dst,dindex) ) T( get_ref(const_cast<page&>(src),sindex) );
-    }
-
-    void assign_and_destroy_item( void* dst, page& src, size_t index ) {
-        T& from = get_ref(src,index);
-        destroyer d(from);
-        *static_cast<T*>(dst) = from;
-    }
-
-    void spin_wait_until_my_turn( atomic<ticket>& counter, ticket k, concurrent_queue_rep_base& rb ) const ;
-
-public:
-    friend class micro_queue_pop_finalizer<T>;
-
-    struct padded_page: page {
-        //! Not defined anywhere - exists to quiet warnings.
-        padded_page(); 
-        //! Not defined anywhere - exists to quiet warnings.
-        void operator=( const padded_page& );
-        //! Must be last field.
-        T last;
-    };
-
-    static T& get_ref( page& p, size_t index ) {
-        return (&static_cast<padded_page*>(static_cast<void*>(&p))->last)[index];
-    }
-
-    atomic<page*> head_page;
-    atomic<ticket> head_counter;
-
-    atomic<page*> tail_page;
-    atomic<ticket> tail_counter;
-
-    spin_mutex page_mutex;
-    
-    void push( const void* item, ticket k, concurrent_queue_base_v3<T>& base ) ;
-
-    bool pop( void* dst, ticket k, concurrent_queue_base_v3<T>& base ) ;
-
-    micro_queue& assign( const micro_queue& src, concurrent_queue_base_v3<T>& base ) ;
-
-    page* make_copy( concurrent_queue_base_v3<T>& base, const page* src_page, size_t begin_in_page, size_t end_in_page, ticket& g_index ) ;
-
-    void invalidate_page_and_rethrow( ticket k ) ;
-};
-
-template<typename T>
-void micro_queue<T>::spin_wait_until_my_turn( atomic<ticket>& counter, ticket k, concurrent_queue_rep_base& rb ) const {
-    atomic_backoff backoff;
-    do {
-        backoff.pause();
-        if( counter&1 ) {
-            ++rb.n_invalid_entries;
-            throw_exception( eid_bad_last_alloc );
-        }
-    } while( counter!=k ) ;
-}
-
-template<typename T>
-void micro_queue<T>::push( const void* item, ticket k, concurrent_queue_base_v3<T>& base ) {
-    k &= -concurrent_queue_rep_base::n_queue;
-    page* p = NULL;
-    size_t index = k/concurrent_queue_rep_base::n_queue & (base.my_rep->items_per_page-1);
-    if( !index ) {
-        __TBB_TRY {
-            concurrent_queue_page_allocator& pa = base;
-            p = pa.allocate_page();
-        } __TBB_CATCH (...) {
-            ++base.my_rep->n_invalid_entries;
-            invalidate_page_and_rethrow( k );
-        }
-        p->mask = 0;
-        p->next = NULL;
-    }
-
-    if( tail_counter!=k ) spin_wait_until_my_turn( tail_counter, k, *base.my_rep );
-    call_itt_notify(acquired, &tail_counter);
-        
-    if( p ) {
-        spin_mutex::scoped_lock lock( page_mutex );
-        page* q = tail_page;
-        if( is_valid_page(q) )
-            q->next = p;
-        else
-            head_page = p; 
-        tail_page = p;
-    } else {
-        p = tail_page;
-    }
-    __TBB_TRY {
-        copy_item( *p, index, item );
-        // If no exception was thrown, mark item as present.
-        itt_hide_store_word(p->mask,  p->mask | uintptr_t(1)<<index);
-        call_itt_notify(releasing, &tail_counter);
-        tail_counter += concurrent_queue_rep_base::n_queue; 
-    } __TBB_CATCH (...) {
-        ++base.my_rep->n_invalid_entries;
-        call_itt_notify(releasing, &tail_counter);
-        tail_counter += concurrent_queue_rep_base::n_queue; 
-        __TBB_RETHROW();
-    }
-}
-
-template<typename T>
-bool micro_queue<T>::pop( void* dst, ticket k, concurrent_queue_base_v3<T>& base ) {
-    k &= -concurrent_queue_rep_base::n_queue;
-    if( head_counter!=k ) spin_wait_until_eq( head_counter, k );
-    call_itt_notify(acquired, &head_counter);
-    if( tail_counter==k ) spin_wait_while_eq( tail_counter, k );
-    call_itt_notify(acquired, &tail_counter);
-    page& p = *head_page;
-    __TBB_ASSERT( &p, NULL );
-    size_t index = k/concurrent_queue_rep_base::n_queue & (base.my_rep->items_per_page-1);
-    bool success = false; 
-    {
-        micro_queue_pop_finalizer<T> finalizer( *this, base, k+concurrent_queue_rep_base::n_queue, index==base.my_rep->items_per_page-1 ? &p : NULL ); 
-        if( p.mask & uintptr_t(1)<<index ) {
-            success = true;
-            assign_and_destroy_item( dst, p, index );
-        } else {
-            --base.my_rep->n_invalid_entries;
-        }
-    }
-    return success;
-}
-
-template<typename T>
-micro_queue<T>& micro_queue<T>::assign( const micro_queue<T>& src, concurrent_queue_base_v3<T>& base ) {
-    head_counter = src.head_counter;
-    tail_counter = src.tail_counter;
-    page_mutex   = src.page_mutex;
-
-    const page* srcp = src.head_page;
-    if( is_valid_page(srcp) ) {
-        ticket g_index = head_counter;
-        __TBB_TRY {
-            size_t n_items  = (tail_counter-head_counter)/concurrent_queue_rep_base::n_queue;
-            size_t index = head_counter/concurrent_queue_rep_base::n_queue & (base.my_rep->items_per_page-1);
-            size_t end_in_first_page = (index+n_items<base.my_rep->items_per_page)?(index+n_items):base.my_rep->items_per_page;
-
-            head_page = make_copy( base, srcp, index, end_in_first_page, g_index );
-            page* cur_page = head_page;
-
-            if( srcp != src.tail_page ) {
-                for( srcp = srcp->next; srcp!=src.tail_page; srcp=srcp->next ) {
-                    cur_page->next = make_copy( base, srcp, 0, base.my_rep->items_per_page, g_index );
-                    cur_page = cur_page->next;
-                }
-
-                __TBB_ASSERT( srcp==src.tail_page, NULL );
-                size_t last_index = tail_counter/concurrent_queue_rep_base::n_queue & (base.my_rep->items_per_page-1);
-                if( last_index==0 ) last_index = base.my_rep->items_per_page;
-
-                cur_page->next = make_copy( base, srcp, 0, last_index, g_index );
-                cur_page = cur_page->next;
-            }
-            tail_page = cur_page;
-        } __TBB_CATCH (...) {
-            invalidate_page_and_rethrow( g_index );
-        }
-    } else {
-        head_page = tail_page = NULL;
-    }
-    return *this;
-}
-
-template<typename T>
-void micro_queue<T>::invalidate_page_and_rethrow( ticket k ) {
-    // Append an invalid page at address 1 so that no more pushes are allowed.
-    page* invalid_page = (page*)uintptr_t(1);
-    {
-        spin_mutex::scoped_lock lock( page_mutex );
-        itt_store_word_with_release(tail_counter, k+concurrent_queue_rep_base::n_queue+1);
-        page* q = tail_page;
-        if( is_valid_page(q) )
-            q->next = invalid_page;
-        else
-            head_page = invalid_page;
-        tail_page = invalid_page;
-    }
-    __TBB_RETHROW();
-}
-
-template<typename T>
-concurrent_queue_rep_base::page* micro_queue<T>::make_copy( concurrent_queue_base_v3<T>& base, const concurrent_queue_rep_base::page* src_page, size_t begin_in_page, size_t end_in_page, ticket& g_index ) {
-    concurrent_queue_page_allocator& pa = base;
-    page* new_page = pa.allocate_page();
-    new_page->next = NULL;
-    new_page->mask = src_page->mask;
-    for( ; begin_in_page!=end_in_page; ++begin_in_page, ++g_index )
-        if( new_page->mask & uintptr_t(1)<<begin_in_page )
-            copy_item( *new_page, begin_in_page, *src_page, begin_in_page );
-    return new_page;
-}
-
-template<typename T>
-class micro_queue_pop_finalizer: no_copy {
-    typedef concurrent_queue_rep_base::page page;
-    ticket my_ticket;
-    micro_queue<T>& my_queue;
-    page* my_page; 
-    concurrent_queue_page_allocator& allocator;
-public:
-    micro_queue_pop_finalizer( micro_queue<T>& queue, concurrent_queue_base_v3<T>& b, ticket k, page* p ) :
-        my_ticket(k), my_queue(queue), my_page(p), allocator(b)
-    {}
-    ~micro_queue_pop_finalizer() ;
-};
-
-template<typename T>
-micro_queue_pop_finalizer<T>::~micro_queue_pop_finalizer() {
-    page* p = my_page;
-    if( is_valid_page(p) ) {
-        spin_mutex::scoped_lock lock( my_queue.page_mutex );
-        page* q = p->next;
-        my_queue.head_page = q;
-        if( !is_valid_page(q) ) {
-            my_queue.tail_page = NULL;
-        }
-    }
-    itt_store_word_with_release(my_queue.head_counter, my_ticket);
-    if( is_valid_page(p) ) {
-        allocator.deallocate_page( p );
-    }
-}
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-#pragma warning( pop )
-#endif // warning 4146 is back
-
-template<typename T> class concurrent_queue_iterator_rep ;
-template<typename T> class concurrent_queue_iterator_base_v3;
-
-//! representation of concurrent_queue_base
-/**
- * the class inherits from concurrent_queue_rep_base and defines an array of micro_queue<T>'s
- */
-template<typename T>
-struct concurrent_queue_rep : public concurrent_queue_rep_base {
-    micro_queue<T> array[n_queue];
-
-    //! Map ticket to an array index
-    static size_t index( ticket k ) {
-        return k*phi%n_queue;
-    }
-
-    micro_queue<T>& choose( ticket k ) {
-        // The formula here approximates LRU in a cache-oblivious way.
-        return array[index(k)];
-    }
-};
-
-//! base class of concurrent_queue
-/**
- * The class implements the interface defined by concurrent_queue_page_allocator
- * and has a pointer to an instance of concurrent_queue_rep.
- */
-template<typename T>
-class concurrent_queue_base_v3: public concurrent_queue_page_allocator {
-    //! Internal representation
-    concurrent_queue_rep<T>* my_rep;
-
-    friend struct concurrent_queue_rep<T>;
-    friend class micro_queue<T>;
-    friend class concurrent_queue_iterator_rep<T>;
-    friend class concurrent_queue_iterator_base_v3<T>;
-
-protected:
-    typedef typename concurrent_queue_rep<T>::page page;
-
-private:
-    typedef typename micro_queue<T>::padded_page padded_page;
-
-    /* override */ virtual page *allocate_page() {
-        concurrent_queue_rep<T>& r = *my_rep;
-        size_t n = sizeof(padded_page) + (r.items_per_page-1)*sizeof(T);
-        return reinterpret_cast<page*>(allocate_block ( n ));
-    }
-
-    /* override */ virtual void deallocate_page( concurrent_queue_rep_base::page *p ) {
-        concurrent_queue_rep<T>& r = *my_rep;
-        size_t n = sizeof(padded_page) + (r.items_per_page-1)*sizeof(T);
-        deallocate_block( reinterpret_cast<void*>(p), n );
-    }
-
-    //! custom allocator
-    virtual void *allocate_block( size_t n ) = 0;
-
-    //! custom de-allocator
-    virtual void deallocate_block( void *p, size_t n ) = 0;
-
-protected:
-    concurrent_queue_base_v3();
-
-    /* override */ virtual ~concurrent_queue_base_v3() {
-#if TBB_USE_ASSERT
-        size_t nq = my_rep->n_queue;
-        for( size_t i=0; i<nq; i++ )
-            __TBB_ASSERT( my_rep->array[i].tail_page==NULL, "pages were not freed properly" );
-#endif /* TBB_USE_ASSERT */
-        cache_aligned_allocator<concurrent_queue_rep<T> >().deallocate(my_rep,1);
-    }
-
-    //! Enqueue item at tail of queue
-    void internal_push( const void* src ) {
-        concurrent_queue_rep<T>& r = *my_rep;
-        ticket k = r.tail_counter++;
-        r.choose(k).push( src, k, *this );
-    }
-
-    //! Attempt to dequeue item from queue.
-    /** NULL if there was no item to dequeue. */
-    bool internal_try_pop( void* dst ) ;
-
-    //! Get size of queue; result may be invalid if queue is modified concurrently
-    size_t internal_size() const ;
-
-    //! check if the queue is empty; thread safe
-    bool internal_empty() const ;
-
-    //! free any remaining pages
-    /* note that the name may be misleading, but it remains so due to a historical accident. */
-    void internal_finish_clear() ;
-
-    //! Obsolete
-    void internal_throw_exception() const {
-        throw_exception( eid_bad_alloc );
-    }
-
-    //! copy internal representation
-    void assign( const concurrent_queue_base_v3& src ) ;
-};
-
-template<typename T>
-concurrent_queue_base_v3<T>::concurrent_queue_base_v3() {
-    const size_t item_size = sizeof(T);
-    my_rep = cache_aligned_allocator<concurrent_queue_rep<T> >().allocate(1);
-    __TBB_ASSERT( (size_t)my_rep % NFS_GetLineSize()==0, "alignment error" );
-    __TBB_ASSERT( (size_t)&my_rep->head_counter % NFS_GetLineSize()==0, "alignment error" );
-    __TBB_ASSERT( (size_t)&my_rep->tail_counter % NFS_GetLineSize()==0, "alignment error" );
-    __TBB_ASSERT( (size_t)&my_rep->array % NFS_GetLineSize()==0, "alignment error" );
-    memset(my_rep,0,sizeof(concurrent_queue_rep<T>));
-    my_rep->item_size = item_size;
-    my_rep->items_per_page = item_size<=8 ? 32 :
-                             item_size<=16 ? 16 : 
-                             item_size<=32 ? 8 :
-                             item_size<=64 ? 4 :
-                             item_size<=128 ? 2 :
-                             1;
-}
-
-template<typename T>
-bool concurrent_queue_base_v3<T>::internal_try_pop( void* dst ) {
-    concurrent_queue_rep<T>& r = *my_rep;
-    ticket k;
-    do {
-        k = r.head_counter;
-        for(;;) {
-            if( r.tail_counter<=k ) {
-                // Queue is empty 
-                return false;
-            }
-            // Queue had item with ticket k when we looked.  Attempt to get that item.
-            ticket tk=k;
-#if defined(_MSC_VER) && defined(_Wp64)
-    #pragma warning (push)
-    #pragma warning (disable: 4267)
-#endif
-            k = r.head_counter.compare_and_swap( tk+1, tk );
-#if defined(_MSC_VER) && defined(_Wp64)
-    #pragma warning (pop)
-#endif
-            if( k==tk )
-                break;
-            // Another thread snatched the item, retry.
-        }
-    } while( !r.choose( k ).pop( dst, k, *this ) );
-    return true;
-}
-
-template<typename T>
-size_t concurrent_queue_base_v3<T>::internal_size() const {
-    concurrent_queue_rep<T>& r = *my_rep;
-    __TBB_ASSERT( sizeof(ptrdiff_t)<=sizeof(size_t), NULL );
-    ticket hc = r.head_counter;
-    size_t nie = r.n_invalid_entries;
-    ticket tc = r.tail_counter;
-    __TBB_ASSERT( hc!=tc || !nie, NULL );
-    ptrdiff_t sz = tc-hc-nie;
-    return sz<0 ? 0 :  size_t(sz);
-}
-
-template<typename T>
-bool concurrent_queue_base_v3<T>::internal_empty() const {
-    concurrent_queue_rep<T>& r = *my_rep;
-    ticket tc = r.tail_counter;
-    ticket hc = r.head_counter;
-    // if tc!=r.tail_counter, the queue was not empty at some point between the two reads.
-    return tc==r.tail_counter && tc==hc+r.n_invalid_entries ;
-}
-
-template<typename T>
-void concurrent_queue_base_v3<T>::internal_finish_clear() {
-    concurrent_queue_rep<T>& r = *my_rep;
-    size_t nq = r.n_queue;
-    for( size_t i=0; i<nq; ++i ) {
-        page* tp = r.array[i].tail_page;
-        if( is_valid_page(tp) ) {
-            __TBB_ASSERT( r.array[i].head_page==tp, "at most one page should remain" );
-            deallocate_page( tp );
-            r.array[i].tail_page = NULL;
-        } else 
-            __TBB_ASSERT( !is_valid_page(r.array[i].head_page), "head page pointer corrupt?" );
-    }
-}
-
-template<typename T>
-void concurrent_queue_base_v3<T>::assign( const concurrent_queue_base_v3& src ) {
-    concurrent_queue_rep<T>& r = *my_rep;
-    r.items_per_page = src.my_rep->items_per_page;
-
-    // copy concurrent_queue_rep.
-    r.head_counter = src.my_rep->head_counter;
-    r.tail_counter = src.my_rep->tail_counter;
-    r.n_invalid_entries = src.my_rep->n_invalid_entries;
-
-    // copy micro_queues
-    for( size_t i = 0; i<r.n_queue; ++i )
-        r.array[i].assign( src.my_rep->array[i], *this);
-
-    __TBB_ASSERT( r.head_counter==src.my_rep->head_counter && r.tail_counter==src.my_rep->tail_counter, 
-            "the source concurrent queue should not be concurrently modified." );
-}
-
-template<typename Container, typename Value> class concurrent_queue_iterator;
-
-template<typename T>
-class concurrent_queue_iterator_rep: no_assign {
-    typedef typename micro_queue<T>::padded_page padded_page;
-public:
-    ticket head_counter;
-    const concurrent_queue_base_v3<T>& my_queue;
-    typename concurrent_queue_base_v3<T>::page* array[concurrent_queue_rep<T>::n_queue];
-    concurrent_queue_iterator_rep( const concurrent_queue_base_v3<T>& queue ) :
-        head_counter(queue.my_rep->head_counter),
-        my_queue(queue)
-    {
-        for( size_t k=0; k<concurrent_queue_rep<T>::n_queue; ++k )
-            array[k] = queue.my_rep->array[k].head_page;
-    }
-
-    //! Set item to point to kth element.  Return true if at end of queue or item is marked valid; false otherwise.
-    bool get_item( T*& item, size_t k ) ;
-};
-
-template<typename T>
-bool concurrent_queue_iterator_rep<T>::get_item( T*& item, size_t k ) {
-    if( k==my_queue.my_rep->tail_counter ) {
-        item = NULL;
-        return true;
-    } else {
-        typename concurrent_queue_base_v3<T>::page* p = array[concurrent_queue_rep<T>::index(k)];
-        __TBB_ASSERT(p,NULL);
-        size_t i = k/concurrent_queue_rep<T>::n_queue & (my_queue.my_rep->items_per_page-1);
-        item = &micro_queue<T>::get_ref(*p,i);
-        return (p->mask & uintptr_t(1)<<i)!=0;
-    }
-}
-
-//! Constness-independent portion of concurrent_queue_iterator.
-/** @ingroup containers */
-template<typename Value>
-class concurrent_queue_iterator_base_v3 : no_assign {
-    //! Represents concurrent_queue over which we are iterating.
-    /** NULL if one past last element in queue. */
-    concurrent_queue_iterator_rep<Value>* my_rep;
-
-    template<typename C, typename T, typename U>
-    friend bool operator==( const concurrent_queue_iterator<C,T>& i, const concurrent_queue_iterator<C,U>& j );
-
-    template<typename C, typename T, typename U>
-    friend bool operator!=( const concurrent_queue_iterator<C,T>& i, const concurrent_queue_iterator<C,U>& j );
-protected:
-    //! Pointer to current item
-    Value* my_item;
-
-    //! Default constructor
-    concurrent_queue_iterator_base_v3() : my_rep(NULL), my_item(NULL) {
-#if __TBB_GCC_OPTIMIZER_ORDERING_BROKEN
-        __TBB_compiler_fence();
-#endif
-    }
-
-    //! Copy constructor
-    concurrent_queue_iterator_base_v3( const concurrent_queue_iterator_base_v3& i )
-    : no_assign(), my_rep(NULL), my_item(NULL) {
-        assign(i);
-    }
-
-    //! Construct iterator pointing to head of queue.
-    concurrent_queue_iterator_base_v3( const concurrent_queue_base_v3<Value>& queue ) ;
-
-    //! Assignment
-    void assign( const concurrent_queue_iterator_base_v3<Value>& other ) ;
-
-    //! Advance iterator one step towards tail of queue.
-    void advance() ;
-
-    //! Destructor
-    ~concurrent_queue_iterator_base_v3() {
-        cache_aligned_allocator<concurrent_queue_iterator_rep<Value> >().deallocate(my_rep, 1);
-        my_rep = NULL;
-    }
-};
-
-template<typename Value>
-concurrent_queue_iterator_base_v3<Value>::concurrent_queue_iterator_base_v3( const concurrent_queue_base_v3<Value>& queue ) {
-    my_rep = cache_aligned_allocator<concurrent_queue_iterator_rep<Value> >().allocate(1);
-    new( my_rep ) concurrent_queue_iterator_rep<Value>(queue);
-    size_t k = my_rep->head_counter;
-    if( !my_rep->get_item(my_item, k) ) advance();
-}
-
-template<typename Value>
-void concurrent_queue_iterator_base_v3<Value>::assign( const concurrent_queue_iterator_base_v3<Value>& other ) {
-    if( my_rep!=other.my_rep ) {
-        if( my_rep ) {
-            cache_aligned_allocator<concurrent_queue_iterator_rep<Value> >().deallocate(my_rep, 1);
-            my_rep = NULL;
-        }
-        if( other.my_rep ) {
-            my_rep = cache_aligned_allocator<concurrent_queue_iterator_rep<Value> >().allocate(1);
-            new( my_rep ) concurrent_queue_iterator_rep<Value>( *other.my_rep );
-        }
-    }
-    my_item = other.my_item;
-}
-
-template<typename Value>
-void concurrent_queue_iterator_base_v3<Value>::advance() {
-    __TBB_ASSERT( my_item, "attempt to increment iterator past end of queue" );  
-    size_t k = my_rep->head_counter;
-    const concurrent_queue_base_v3<Value>& queue = my_rep->my_queue;
-#if TBB_USE_ASSERT
-    Value* tmp;
-    my_rep->get_item(tmp,k);
-    __TBB_ASSERT( my_item==tmp, NULL );
-#endif /* TBB_USE_ASSERT */
-    size_t i = k/concurrent_queue_rep<Value>::n_queue & (queue.my_rep->items_per_page-1);
-    if( i==queue.my_rep->items_per_page-1 ) {
-        typename concurrent_queue_base_v3<Value>::page*& root = my_rep->array[concurrent_queue_rep<Value>::index(k)];
-        root = root->next;
-    }
-    // advance k
-    my_rep->head_counter = ++k;
-    if( !my_rep->get_item(my_item, k) ) advance();
-}
-
-//! Similar to C++0x std::remove_cv
-/** "tbb_" prefix added to avoid overload confusion with C++0x implementations. */
-template<typename T> struct tbb_remove_cv {typedef T type;};
-template<typename T> struct tbb_remove_cv<const T> {typedef T type;};
-template<typename T> struct tbb_remove_cv<volatile T> {typedef T type;};
-template<typename T> struct tbb_remove_cv<const volatile T> {typedef T type;};
-
-//! Meets requirements of a forward iterator for STL.
-/** Value is either the T or const T type of the container.
-    @ingroup containers */
-template<typename Container, typename Value>
-class concurrent_queue_iterator: public concurrent_queue_iterator_base_v3<typename tbb_remove_cv<Value>::type>,
-        public std::iterator<std::forward_iterator_tag,Value> {
-#if !__TBB_TEMPLATE_FRIENDS_BROKEN
-    template<typename T, class A>
-    friend class ::tbb::strict_ppl::concurrent_queue;
-#else
-public: // workaround for MSVC
-#endif 
-    //! Construct iterator pointing to head of queue.
-    concurrent_queue_iterator( const concurrent_queue_base_v3<Value>& queue ) :
-        concurrent_queue_iterator_base_v3<typename tbb_remove_cv<Value>::type>(queue)
-    {
-    }
-
-public:
-    concurrent_queue_iterator() {}
-
-    concurrent_queue_iterator( const concurrent_queue_iterator<Container,typename Container::value_type>& other ) :
-        concurrent_queue_iterator_base_v3<typename tbb_remove_cv<Value>::type>(other)
-    {}
-
-    //! Iterator assignment
-    concurrent_queue_iterator& operator=( const concurrent_queue_iterator& other ) {
-        this->assign(other);
-        return *this;
-    }
-
-    //! Reference to current item 
-    Value& operator*() const {
-        return *static_cast<Value*>(this->my_item);
-    }
-
-    Value* operator->() const {return &operator*();}
-
-    //! Advance to next item in queue
-    concurrent_queue_iterator& operator++() {
-        this->advance();
-        return *this;
-    }
-
-    //! Post increment
-    Value* operator++(int) {
-        Value* result = &operator*();
-        operator++();
-        return result;
-    }
-}; // concurrent_queue_iterator
-
-
-template<typename C, typename T, typename U>
-bool operator==( const concurrent_queue_iterator<C,T>& i, const concurrent_queue_iterator<C,U>& j ) {
-    return i.my_item==j.my_item;
-}
-
-template<typename C, typename T, typename U>
-bool operator!=( const concurrent_queue_iterator<C,T>& i, const concurrent_queue_iterator<C,U>& j ) {
-    return i.my_item!=j.my_item;
-}
-
-} // namespace internal
-
-//! @endcond
-
-} // namespace strict_ppl
-
-//! @cond INTERNAL
-namespace internal {
-
-class concurrent_queue_rep;
-class concurrent_queue_iterator_rep;
-class concurrent_queue_iterator_base_v3;
-template<typename Container, typename Value> class concurrent_queue_iterator;
-
-//! For internal use only.
-/** Type-independent portion of concurrent_queue.
-    @ingroup containers */
-class concurrent_queue_base_v3: no_copy {
-    //! Internal representation
-    concurrent_queue_rep* my_rep;
-
-    friend class concurrent_queue_rep;
-    friend struct micro_queue;
-    friend class micro_queue_pop_finalizer;
-    friend class concurrent_queue_iterator_rep;
-    friend class concurrent_queue_iterator_base_v3;
-protected:
-    //! Prefix on a page
-    struct page {
-        page* next;
-        uintptr_t mask; 
-    };
-
-    //! Capacity of the queue
-    ptrdiff_t my_capacity;
-   
-    //! Always a power of 2
-    size_t items_per_page;
-
-    //! Size of an item
-    size_t item_size;
-
-#if __TBB_GCC_3_3_PROTECTED_BROKEN
-public:
-#endif
-    template<typename T>
-    struct padded_page: page {
-        //! Not defined anywhere - exists to quiet warnings.
-        padded_page(); 
-        //! Not defined anywhere - exists to quiet warnings.
-        void operator=( const padded_page& );
-        //! Must be last field.
-        T last;
-    };
-
-private:
-    virtual void copy_item( page& dst, size_t index, const void* src ) = 0;
-    virtual void assign_and_destroy_item( void* dst, page& src, size_t index ) = 0;
-protected:
-    __TBB_EXPORTED_METHOD concurrent_queue_base_v3( size_t item_size );
-    virtual __TBB_EXPORTED_METHOD ~concurrent_queue_base_v3();
-
-    //! Enqueue item at tail of queue
-    void __TBB_EXPORTED_METHOD internal_push( const void* src );
-
-    //! Dequeue item from head of queue
-    void __TBB_EXPORTED_METHOD internal_pop( void* dst );
-
-    //! Attempt to enqueue item onto queue.
-    bool __TBB_EXPORTED_METHOD internal_push_if_not_full( const void* src );
-
-    //! Attempt to dequeue item from queue.
-    /** NULL if there was no item to dequeue. */
-    bool __TBB_EXPORTED_METHOD internal_pop_if_present( void* dst );
-
-    //! Get size of queue
-    ptrdiff_t __TBB_EXPORTED_METHOD internal_size() const;
-
-    //! Check if the queue is emtpy
-    bool __TBB_EXPORTED_METHOD internal_empty() const;
-
-    //! Set the queue capacity
-    void __TBB_EXPORTED_METHOD internal_set_capacity( ptrdiff_t capacity, size_t element_size );
-
-    //! custom allocator
-    virtual page *allocate_page() = 0;
-
-    //! custom de-allocator
-    virtual void deallocate_page( page *p ) = 0;
-
-    //! free any remaining pages
-    /* note that the name may be misleading, but it remains so due to a historical accident. */
-    void __TBB_EXPORTED_METHOD internal_finish_clear() ;
-
-    //! throw an exception
-    void __TBB_EXPORTED_METHOD internal_throw_exception() const;
-
-    //! copy internal representation
-    void __TBB_EXPORTED_METHOD assign( const concurrent_queue_base_v3& src ) ;
-
-private:
-    virtual void copy_page_item( page& dst, size_t dindex, const page& src, size_t sindex ) = 0;
-};
-
-//! Type-independent portion of concurrent_queue_iterator.
-/** @ingroup containers */
-class concurrent_queue_iterator_base_v3 {
-    //! concurrent_queue over which we are iterating.
-    /** NULL if one past last element in queue. */
-    concurrent_queue_iterator_rep* my_rep;
-
-    template<typename C, typename T, typename U>
-    friend bool operator==( const concurrent_queue_iterator<C,T>& i, const concurrent_queue_iterator<C,U>& j );
-
-    template<typename C, typename T, typename U>
-    friend bool operator!=( const concurrent_queue_iterator<C,T>& i, const concurrent_queue_iterator<C,U>& j );
-
-    void initialize( const concurrent_queue_base_v3& queue, size_t offset_of_data );
-protected:
-    //! Pointer to current item
-    void* my_item;
-
-    //! Default constructor
-    concurrent_queue_iterator_base_v3() : my_rep(NULL), my_item(NULL) {}
-
-    //! Copy constructor
-    concurrent_queue_iterator_base_v3( const concurrent_queue_iterator_base_v3& i ) : my_rep(NULL), my_item(NULL) {
-        assign(i);
-    }
-
-    //! Obsolete entry point for constructing iterator pointing to head of queue.
-    /** Does not work correctly for SSE types. */
-    __TBB_EXPORTED_METHOD concurrent_queue_iterator_base_v3( const concurrent_queue_base_v3& queue );
-
-    //! Construct iterator pointing to head of queue.
-    __TBB_EXPORTED_METHOD concurrent_queue_iterator_base_v3( const concurrent_queue_base_v3& queue, size_t offset_of_data );
-
-    //! Assignment
-    void __TBB_EXPORTED_METHOD assign( const concurrent_queue_iterator_base_v3& i );
-
-    //! Advance iterator one step towards tail of queue.
-    void __TBB_EXPORTED_METHOD advance();
-
-    //! Destructor
-    __TBB_EXPORTED_METHOD ~concurrent_queue_iterator_base_v3();
-};
-
-typedef concurrent_queue_iterator_base_v3 concurrent_queue_iterator_base;
-
-//! Meets requirements of a forward iterator for STL.
-/** Value is either the T or const T type of the container.
-    @ingroup containers */
-template<typename Container, typename Value>
-class concurrent_queue_iterator: public concurrent_queue_iterator_base,
-        public std::iterator<std::forward_iterator_tag,Value> {
-
-#if !defined(_MSC_VER) || defined(__INTEL_COMPILER)
-    template<typename T, class A>
-    friend class ::tbb::concurrent_bounded_queue;
-
-    template<typename T, class A>
-    friend class ::tbb::deprecated::concurrent_queue;
-#else
-public: // workaround for MSVC
-#endif 
-    //! Construct iterator pointing to head of queue.
-    concurrent_queue_iterator( const concurrent_queue_base_v3& queue ) :
-        concurrent_queue_iterator_base_v3(queue,__TBB_offsetof(concurrent_queue_base_v3::padded_page<Value>,last))
-    {
-    }
-
-public:
-    concurrent_queue_iterator() {}
-
-    /** If Value==Container::value_type, then this routine is the copy constructor. 
-        If Value==const Container::value_type, then this routine is a conversion constructor. */
-    concurrent_queue_iterator( const concurrent_queue_iterator<Container,typename Container::value_type>& other ) :
-        concurrent_queue_iterator_base_v3(other)
-    {}
-
-    //! Iterator assignment
-    concurrent_queue_iterator& operator=( const concurrent_queue_iterator& other ) {
-        assign(other);
-        return *this;
-    }
-
-    //! Reference to current item 
-    Value& operator*() const {
-        return *static_cast<Value*>(my_item);
-    }
-
-    Value* operator->() const {return &operator*();}
-
-    //! Advance to next item in queue
-    concurrent_queue_iterator& operator++() {
-        advance();
-        return *this;
-    }
-
-    //! Post increment
-    Value* operator++(int) {
-        Value* result = &operator*();
-        operator++();
-        return result;
-    }
-}; // concurrent_queue_iterator
-
-
-template<typename C, typename T, typename U>
-bool operator==( const concurrent_queue_iterator<C,T>& i, const concurrent_queue_iterator<C,U>& j ) {
-    return i.my_item==j.my_item;
-}
-
-template<typename C, typename T, typename U>
-bool operator!=( const concurrent_queue_iterator<C,T>& i, const concurrent_queue_iterator<C,U>& j ) {
-    return i.my_item!=j.my_item;
-}
-
-} // namespace internal;
-
-//! @endcond
-
-} // namespace tbb
-
-#endif /* __TBB__concurrent_queue_impl_H */
diff --git a/dependencies64/tbb/include/tbb/internal/_concurrent_unordered_impl.h b/dependencies64/tbb/include/tbb/internal/_concurrent_unordered_impl.h
deleted file mode 100644 (file)
index 9422728..0000000
+++ /dev/null
@@ -1,1429 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-/* Container implementations in this header are based on PPL implementations 
-   provided by Microsoft. */
-
-#ifndef __TBB__concurrent_unordered_impl_H
-#define __TBB__concurrent_unordered_impl_H
-#if !defined(__TBB_concurrent_unordered_map_H) && !defined(__TBB_concurrent_unordered_set_H) && !defined(__TBB_concurrent_hash_map_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#include "../tbb_stddef.h"
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <iterator>
-#include <utility>      // Need std::pair
-#include <functional>
-#include <string>       // For tbb_hasher
-#include <cstring>      // Need std::memset
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-#include "../atomic.h"
-#include "../tbb_exception.h"
-#include "../tbb_allocator.h"
-
-namespace tbb {
-namespace interface5 {
-//! @cond INTERNAL
-namespace internal {
-
-template <typename T, typename Allocator>
-class split_ordered_list;
-template <typename Traits>
-class concurrent_unordered_base;
-
-// Forward list iterators (without skipping dummy elements)
-template<class Solist, typename Value>
-class flist_iterator : public std::iterator<std::forward_iterator_tag, Value>
-{
-    template <typename T, typename Allocator>
-    friend class split_ordered_list;
-    template <typename Traits>
-    friend class concurrent_unordered_base;
-    template<class M, typename V>
-    friend class flist_iterator;
-
-    typedef typename Solist::nodeptr_t nodeptr_t;
-public:
-    typedef typename Solist::value_type value_type;
-    typedef typename Solist::difference_type difference_type;
-    typedef typename Solist::pointer pointer;
-    typedef typename Solist::reference reference;
-
-    flist_iterator() : my_node_ptr(0) {}
-    flist_iterator( const flist_iterator<Solist, typename Solist::value_type> &other )
-        : my_node_ptr(other.my_node_ptr) {}
-
-    reference operator*() const { return my_node_ptr->my_element; }
-    pointer operator->() const { return &**this; }
-
-    flist_iterator& operator++() {
-        my_node_ptr = my_node_ptr->my_next;
-        return *this;
-    }
-
-    flist_iterator operator++(int) {
-        flist_iterator tmp = *this;
-        ++*this;
-        return tmp;
-    }
-
-protected:
-    flist_iterator(nodeptr_t pnode) : my_node_ptr(pnode) {}
-    nodeptr_t get_node_ptr() const { return my_node_ptr; }
-
-    nodeptr_t my_node_ptr;
-
-    template<typename M, typename T, typename U>
-    friend bool operator==( const flist_iterator<M,T> &i, const flist_iterator<M,U> &j );
-    template<typename M, typename T, typename U>
-    friend bool operator!=( const flist_iterator<M,T>& i, const flist_iterator<M,U>& j );
-};
-
-template<typename Solist, typename T, typename U>
-bool operator==( const flist_iterator<Solist,T> &i, const flist_iterator<Solist,U> &j ) {
-    return i.my_node_ptr == j.my_node_ptr;
-}
-template<typename Solist, typename T, typename U>
-bool operator!=( const flist_iterator<Solist,T>& i, const flist_iterator<Solist,U>& j ) {
-    return i.my_node_ptr != j.my_node_ptr;
-}
-
-// Split-order list iterators, needed to skip dummy elements
-template<class Solist, typename Value>
-class solist_iterator : public flist_iterator<Solist, Value>
-{
-    typedef flist_iterator<Solist, Value> base_type;
-    typedef typename Solist::nodeptr_t nodeptr_t;
-    using base_type::get_node_ptr;
-    template <typename T, typename Allocator>
-    friend class split_ordered_list;
-    template<class M, typename V>
-    friend class solist_iterator;
-    template<typename M, typename T, typename U>
-    friend bool operator==( const solist_iterator<M,T> &i, const solist_iterator<M,U> &j );
-    template<typename M, typename T, typename U>
-    friend bool operator!=( const solist_iterator<M,T>& i, const solist_iterator<M,U>& j );
-
-    const Solist *my_list_ptr;
-    solist_iterator(nodeptr_t pnode, const Solist *plist) : base_type(pnode), my_list_ptr(plist) {}
-
-public:
-    typedef typename Solist::value_type value_type;
-    typedef typename Solist::difference_type difference_type;
-    typedef typename Solist::pointer pointer;
-    typedef typename Solist::reference reference;
-
-    solist_iterator() {}
-    solist_iterator(const solist_iterator<Solist, typename Solist::value_type> &other )
-        : base_type(other), my_list_ptr(other.my_list_ptr) {}
-
-    reference operator*() const {
-        return this->base_type::operator*();
-    }
-
-    pointer operator->() const {
-        return (&**this);
-    }
-
-    solist_iterator& operator++() {
-        do ++(*(base_type *)this);
-        while (get_node_ptr() != NULL && get_node_ptr()->is_dummy());
-
-        return (*this);
-    }
-
-    solist_iterator operator++(int) {
-        solist_iterator tmp = *this;
-        do ++*this;
-        while (get_node_ptr() != NULL && get_node_ptr()->is_dummy());
-
-        return (tmp);
-    }
-};
-
-template<typename Solist, typename T, typename U>
-bool operator==( const solist_iterator<Solist,T> &i, const solist_iterator<Solist,U> &j ) {
-    return i.my_node_ptr == j.my_node_ptr && i.my_list_ptr == j.my_list_ptr;
-}
-template<typename Solist, typename T, typename U>
-bool operator!=( const solist_iterator<Solist,T>& i, const solist_iterator<Solist,U>& j ) {
-    return i.my_node_ptr != j.my_node_ptr || i.my_list_ptr != j.my_list_ptr;
-}
-
-// Forward type and class definitions
-typedef size_t sokey_t;
-
-// Forward list in which elements are sorted in a split-order
-template <typename T, typename Allocator>
-class split_ordered_list
-{
-public:
-    typedef split_ordered_list<T, Allocator> self_type;
-    typedef typename Allocator::template rebind<T>::other allocator_type;
-    struct node;
-    typedef node *nodeptr_t;
-
-    typedef typename allocator_type::size_type size_type;
-    typedef typename allocator_type::difference_type difference_type;
-    typedef typename allocator_type::pointer pointer;
-    typedef typename allocator_type::const_pointer const_pointer;
-    typedef typename allocator_type::reference reference;
-    typedef typename allocator_type::const_reference const_reference;
-    typedef typename allocator_type::value_type value_type;
-
-    typedef solist_iterator<self_type, const value_type> const_iterator;
-    typedef solist_iterator<self_type, value_type> iterator;
-    typedef flist_iterator<self_type, const value_type> raw_const_iterator;
-    typedef flist_iterator<self_type, value_type> raw_iterator;
-
-    // Node that holds the element in a split-ordered list
-    struct node : tbb::internal::no_assign
-    {
-        // Initialize the node with the given order key
-        void init(sokey_t order_key) {
-            my_order_key = order_key;
-            my_next = NULL;
-        }
-
-        // Return the order key (needed for hashing)
-        sokey_t get_order_key() const { // TODO: remove
-            return my_order_key;
-        }
-
-        // Inserts the new element in the list in an atomic fashion
-        nodeptr_t atomic_set_next(nodeptr_t new_node, nodeptr_t current_node)
-        {
-            // Try to change the next pointer on the current element to a new element, only if it still points to the cached next
-            nodeptr_t exchange_node = (nodeptr_t) __TBB_CompareAndSwapW((void *) &my_next, (uintptr_t)new_node, (uintptr_t)current_node);
-
-            if (exchange_node == current_node) // TODO: why this branch?
-            {
-                // Operation succeeded, return the new node
-                return new_node;
-            }
-            else
-            {
-                // Operation failed, return the "interfering" node
-                return exchange_node;
-            }
-        }
-
-        // Checks if this element in the list is a dummy, order enforcing node. Dummy nodes are used by buckets
-        // in the hash table to quickly index into the right subsection of the split-ordered list.
-        bool is_dummy() const {
-            return (my_order_key & 0x1) == 0;
-        }
-
-
-        nodeptr_t  my_next;      // Next element in the list
-        value_type my_element;   // Element storage
-        sokey_t    my_order_key; // Order key for this element
-    };
-
-    // Allocate a new node with the given order key and value
-    nodeptr_t create_node(sokey_t order_key, const T &value) {
-        nodeptr_t pnode = my_node_allocator.allocate(1);
-
-        __TBB_TRY {
-            new(static_cast<void*>(&pnode->my_element)) T(value);
-            pnode->init(order_key);
-        } __TBB_CATCH(...) {
-            my_node_allocator.deallocate(pnode, 1);
-            __TBB_RETHROW();
-        }
-
-        return (pnode);
-    }
-
-    // Allocate a new node with the given order key; used to allocate dummy nodes
-    nodeptr_t create_node(sokey_t order_key) {
-        nodeptr_t pnode = my_node_allocator.allocate(1);
-
-        __TBB_TRY {
-            new(static_cast<void*>(&pnode->my_element)) T();
-            pnode->init(order_key);
-        } __TBB_CATCH(...) {
-            my_node_allocator.deallocate(pnode, 1);
-            __TBB_RETHROW();
-        }
-
-        return (pnode);
-    }
-
-   split_ordered_list(allocator_type a = allocator_type())
-       : my_node_allocator(a), my_element_count(0)
-    {
-        // Immediately allocate a dummy node with order key of 0. This node
-        // will always be the head of the list.
-        my_head = create_node(0);
-    }
-
-    ~split_ordered_list()
-    {
-        // Clear the list
-        clear();
-
-        // Remove the head element which is not cleared by clear()
-        nodeptr_t pnode = my_head;
-        my_head = NULL;
-
-        __TBB_ASSERT(pnode != NULL && pnode->my_next == NULL, "Invalid head list node");
-
-        destroy_node(pnode);
-    }
-
-    // Common forward list functions
-
-    allocator_type get_allocator() const {
-        return (my_node_allocator);
-    }
-
-    void clear() {
-        nodeptr_t pnext;
-        nodeptr_t pnode = my_head;
-
-        __TBB_ASSERT(my_head != NULL, "Invalid head list node");
-        pnext = pnode->my_next;
-        pnode->my_next = NULL;
-        pnode = pnext;
-
-        while (pnode != NULL)
-        {
-            pnext = pnode->my_next;
-            destroy_node(pnode);
-            pnode = pnext;
-        }
-
-        my_element_count = 0;
-    }
-
-    // Returns a first non-dummy element in the SOL
-    iterator begin() {
-        return first_real_iterator(raw_begin());
-    }
-
-    // Returns a first non-dummy element in the SOL
-    const_iterator begin() const {
-        return first_real_iterator(raw_begin());
-    }
-
-    iterator end() {
-        return (iterator(0, this));
-    }
-
-    const_iterator end() const {
-        return (const_iterator(0, this));
-    }
-
-    const_iterator cbegin() const {
-        return (((const self_type *)this)->begin());
-    }
-
-    const_iterator cend() const {
-        return (((const self_type *)this)->end());
-    }
-
-    // Checks if the number of elements (non-dummy) is 0
-    bool empty() const {
-        return (my_element_count == 0);
-    }
-
-    // Returns the number of non-dummy elements in the list
-    size_type size() const {
-        return my_element_count;
-    }
-
-    // Returns the maximum size of the list, determined by the allocator
-    size_type max_size() const {
-        return my_node_allocator.max_size();
-    }
-
-    // Swaps 'this' list with the passed in one
-    void swap(self_type& other)
-    {
-        if (this == &other)
-        {
-            // Nothing to do
-            return;
-        }
-
-        std::swap(my_element_count, other.my_element_count);
-        std::swap(my_head, other.my_head);
-    }
-
-    // Split-order list functions
-
-    // Returns a first element in the SOL, which is always a dummy
-    raw_iterator raw_begin() {
-        return raw_iterator(my_head);
-    }
-
-    // Returns a first element in the SOL, which is always a dummy
-    raw_const_iterator raw_begin() const {
-        return raw_const_iterator(my_head);
-    }
-
-    raw_iterator raw_end() {
-        return raw_iterator(0);
-    }
-
-    raw_const_iterator raw_end() const {
-        return raw_const_iterator(0);
-    }
-
-    static sokey_t get_order_key(const raw_const_iterator& it) {
-        return it.get_node_ptr()->get_order_key();
-    }
-
-    static sokey_t get_safe_order_key(const raw_const_iterator& it) {
-        if( !it.get_node_ptr() ) return sokey_t(~0U);
-        return it.get_node_ptr()->get_order_key();
-    }
-
-    // Returns a public iterator version of the internal iterator. Public iterator must not
-    // be a dummy private iterator.
-    iterator get_iterator(raw_iterator it) {
-        __TBB_ASSERT(it.get_node_ptr() == NULL || !it.get_node_ptr()->is_dummy(), "Invalid user node (dummy)");
-        return iterator(it.get_node_ptr(), this);
-    }
-
-    // Returns a public iterator version of the internal iterator. Public iterator must not
-    // be a dummy private iterator.
-    const_iterator get_iterator(raw_const_iterator it) const {
-        __TBB_ASSERT(it.get_node_ptr() == NULL || !it.get_node_ptr()->is_dummy(), "Invalid user node (dummy)");
-        return const_iterator(it.get_node_ptr(), this);
-    }
-
-    // Returns a non-const version of the raw_iterator
-    raw_iterator get_iterator(raw_const_iterator it) {
-        return raw_iterator(it.get_node_ptr());
-    }
-
-    // Returns a non-const version of the iterator
-    static iterator get_iterator(const_iterator it) {
-        return iterator(it.my_node_ptr, it.my_list_ptr);
-    }
-
-    // Returns a public iterator version of a first non-dummy internal iterator at or after
-    // the passed in internal iterator.
-    iterator first_real_iterator(raw_iterator it)
-    {
-        // Skip all dummy, internal only iterators
-        while (it != raw_end() && it.get_node_ptr()->is_dummy())
-            ++it;
-
-        return iterator(it.get_node_ptr(), this);
-    }
-
-    // Returns a public iterator version of a first non-dummy internal iterator at or after
-    // the passed in internal iterator.
-    const_iterator first_real_iterator(raw_const_iterator it) const
-    {
-        // Skip all dummy, internal only iterators
-        while (it != raw_end() && it.get_node_ptr()->is_dummy())
-            ++it;
-
-        return const_iterator(it.get_node_ptr(), this);
-    }
-
-    // Erase an element using the allocator
-    void destroy_node(nodeptr_t pnode) {
-        my_node_allocator.destroy(pnode);
-        my_node_allocator.deallocate(pnode, 1);
-    }
-
-    // Try to insert a new element in the list. If insert fails, return the node that
-    // was inserted instead.
-    nodeptr_t try_insert(nodeptr_t previous, nodeptr_t new_node, nodeptr_t current_node) {
-        new_node->my_next = current_node;
-        return previous->atomic_set_next(new_node, current_node);
-    }
-
-    // Insert a new element between passed in iterators
-    std::pair<iterator, bool> try_insert(raw_iterator it, raw_iterator next, const value_type &value, sokey_t order_key, size_type *new_count)
-    {
-        nodeptr_t pnode = create_node(order_key, value);
-        nodeptr_t inserted_node = try_insert(it.get_node_ptr(), pnode, next.get_node_ptr());
-
-        if (inserted_node == pnode)
-        {
-            // If the insert succeeded, check that the order is correct and increment the element count
-            check_range();
-            *new_count = __TBB_FetchAndAddW((uintptr_t*)&my_element_count, uintptr_t(1));
-            return std::pair<iterator, bool>(iterator(pnode, this), true);
-        }
-        else
-        {
-            // If the insert failed (element already there), then delete the new one
-            destroy_node(pnode);
-            return std::pair<iterator, bool>(end(), false);
-        }
-    }
-
-    // Insert a new dummy element, starting search at a parent dummy element
-    raw_iterator insert_dummy(raw_iterator it, sokey_t order_key)
-    {
-        raw_iterator last = raw_end();
-        raw_iterator where = it;
-
-        __TBB_ASSERT(where != last, "Invalid head node");
-
-        ++where;
-
-        // Create a dummy element up front, even though it may be discarded (due to concurrent insertion)
-        nodeptr_t dummy_node = create_node(order_key);
-
-        for (;;)
-        {
-            __TBB_ASSERT(it != last, "Invalid head list node");
-
-            // If the head iterator is at the end of the list, or past the point where this dummy
-            // node needs to be inserted, then try to insert it.
-            if (where == last || get_order_key(where) > order_key)
-            {
-                __TBB_ASSERT(get_order_key(it) < order_key, "Invalid node order in the list");
-
-                // Try to insert it in the right place
-                nodeptr_t inserted_node = try_insert(it.get_node_ptr(), dummy_node, where.get_node_ptr());
-
-                if (inserted_node == dummy_node)
-                {
-                    // Insertion succeeded, check the list for order violations
-                    check_range();
-                    return raw_iterator(dummy_node);
-                }
-                else
-                {
-                    // Insertion failed: either dummy node was inserted by another thread, or
-                    // a real element was inserted at exactly the same place as dummy node.
-                    // Proceed with the search from the previous location where order key was
-                    // known to be larger (note: this is legal only because there is no safe
-                    // concurrent erase operation supported).
-                    where = it;
-                    ++where;
-                    continue;
-                }
-            }
-            else if (get_order_key(where) == order_key)
-            {
-                // Another dummy node with the same value found, discard the new one.
-                destroy_node(dummy_node);
-                return where;
-            }
-
-            // Move the iterator forward
-            it = where;
-            ++where;
-        }
-
-    }
-
-    // This erase function can handle both real and dummy nodes
-    void erase_node(raw_iterator previous, raw_const_iterator& where)
-    {
-        nodeptr_t pnode = (where++).get_node_ptr();
-        nodeptr_t prevnode = previous.get_node_ptr();
-        __TBB_ASSERT(prevnode->my_next == pnode, "Erase must take consecutive iterators");
-        prevnode->my_next = pnode->my_next;
-
-        destroy_node(pnode);
-    }
-
-    // Erase the element (previous node needs to be passed because this is a forward only list)
-    iterator erase_node(raw_iterator previous, const_iterator where)
-    {
-        raw_const_iterator it = where;
-        erase_node(previous, it);
-        my_element_count--;
-
-        return get_iterator(first_real_iterator(it));
-    }
-
-    // Move all elements from the passed in split-ordered list to this one
-    void move_all(self_type& source)
-    {
-        raw_const_iterator first = source.raw_begin();
-        raw_const_iterator last = source.raw_end();
-
-        if (first == last)
-            return;
-
-        nodeptr_t previous_node = my_head;
-        raw_const_iterator begin_iterator = first++;
-
-        // Move all elements one by one, including dummy ones
-        for (raw_const_iterator it = first; it != last;)
-        {
-            nodeptr_t pnode = it.get_node_ptr();
-
-            nodeptr_t dummy_node = pnode->is_dummy() ? create_node(pnode->get_order_key()) : create_node(pnode->get_order_key(), pnode->my_element);
-            previous_node = try_insert(previous_node, dummy_node, NULL);
-            __TBB_ASSERT(previous_node != NULL, "Insertion must succeed");
-            raw_const_iterator where = it++;
-            source.erase_node(get_iterator(begin_iterator), where);
-        }
-        check_range();
-    }
-
-
-private:
-
-    // Check the list for order violations
-    void check_range()
-    {
-#if TBB_USE_ASSERT
-        for (raw_iterator it = raw_begin(); it != raw_end(); ++it)
-        {
-            raw_iterator next_iterator = it;
-            ++next_iterator;
-
-            __TBB_ASSERT(next_iterator == end() || next_iterator.get_node_ptr()->get_order_key() >= it.get_node_ptr()->get_order_key(), "!!! List order inconsistency !!!");
-        }
-#endif
-    }
-
-    typename allocator_type::template rebind<node>::other my_node_allocator;  // allocator object for nodes
-    size_type                                             my_element_count;   // Total item count, not counting dummy nodes
-    nodeptr_t                                             my_head;            // pointer to head node
-};
-
-// Template class for hash compare
-template<typename Key, typename Hasher, typename Key_equality>
-class hash_compare
-{
-public:
-    hash_compare() {}
-
-    hash_compare(Hasher a_hasher) : my_hash_object(a_hasher) {}
-
-    hash_compare(Hasher a_hasher, Key_equality a_keyeq) : my_hash_object(a_hasher), my_key_compare_object(a_keyeq) {}
-
-    size_t operator()(const Key& key) const {
-        return ((size_t)my_hash_object(key));
-    }
-
-    bool operator()(const Key& key1, const Key& key2) const {
-        return (!my_key_compare_object(key1, key2));
-    }
-
-    Hasher       my_hash_object;        // The hash object
-    Key_equality my_key_compare_object; // The equality comparator object
-};
-
-#if _MSC_VER
-#pragma warning(push)
-#pragma warning(disable: 4127) // warning 4127 -- while (true) has a constant expression in it (for allow_multimapping)
-#endif
-
-template <typename Traits>
-class concurrent_unordered_base : public Traits
-{
-protected:
-    // Type definitions
-    typedef concurrent_unordered_base<Traits> self_type;
-    typedef typename Traits::value_type value_type;
-    typedef typename Traits::key_type key_type;
-    typedef typename Traits::hash_compare hash_compare;
-    typedef typename Traits::value_compare value_compare;
-    typedef typename Traits::allocator_type allocator_type;
-    typedef typename allocator_type::pointer pointer;
-    typedef typename allocator_type::const_pointer const_pointer;
-    typedef typename allocator_type::reference reference;
-    typedef typename allocator_type::const_reference const_reference;
-    typedef typename allocator_type::size_type size_type;
-    typedef typename allocator_type::difference_type difference_type;
-    typedef split_ordered_list<value_type, typename Traits::allocator_type> solist_t;
-    typedef typename solist_t::nodeptr_t nodeptr_t;
-    // Iterators that walk the entire split-order list, including dummy nodes
-    typedef typename solist_t::raw_iterator raw_iterator;
-    typedef typename solist_t::raw_const_iterator raw_const_iterator;
-    typedef typename solist_t::iterator iterator; // TODO: restore const iterator for unordered_sets
-    typedef typename solist_t::const_iterator const_iterator;
-    typedef iterator local_iterator;
-    typedef const_iterator const_local_iterator;
-    using Traits::my_hash_compare;
-    using Traits::get_key;
-    using Traits::allow_multimapping;
-
-private:
-    typedef std::pair<iterator, iterator> pairii_t;
-    typedef std::pair<const_iterator, const_iterator> paircc_t;
-
-    static size_type const pointers_per_table = sizeof(size_type) * 8;              // One bucket segment per bit
-    static const size_type initial_bucket_number = 8;                               // Initial number of buckets
-    static const size_type initial_bucket_load = 4;                                // Initial maximum number of elements per bucket
-
-protected:
-    // Constructors/Destructors
-    concurrent_unordered_base(size_type n_of_buckets = initial_bucket_number,
-        const hash_compare& hc = hash_compare(), const allocator_type& a = allocator_type())
-        : Traits(hc), my_solist(a),
-          my_allocator(a), my_maximum_bucket_size((float) initial_bucket_load)
-    {
-        if( n_of_buckets == 0) ++n_of_buckets;
-        my_number_of_buckets = 1<<__TBB_Log2((uintptr_t)n_of_buckets*2-1); // round up to power of 2
-        internal_init();
-    }
-
-    concurrent_unordered_base(const concurrent_unordered_base& right, const allocator_type& a)
-        : Traits(right.my_hash_compare), my_solist(a), my_allocator(a)
-    {
-        internal_init();
-        internal_copy(right);
-    }
-
-    concurrent_unordered_base(const concurrent_unordered_base& right)
-        : Traits(right.my_hash_compare), my_solist(right.get_allocator()), my_allocator(right.get_allocator())
-    {
-        internal_init();
-        internal_copy(right);
-    }
-
-    concurrent_unordered_base& operator=(const concurrent_unordered_base& right) {
-        if (this != &right)
-            internal_copy(right);
-        return (*this);
-    }
-
-    ~concurrent_unordered_base() {
-        // Delete all node segments
-        internal_clear();
-    }
-
-public:
-    allocator_type get_allocator() const {
-        return my_solist.get_allocator();
-    }
-
-    // Size and capacity function
-    bool empty() const {
-        return my_solist.empty();
-    }
-
-    size_type size() const {
-        return my_solist.size();
-    }
-
-    size_type max_size() const {
-        return my_solist.max_size();
-    }
-
-    // Iterators 
-    iterator begin() {
-        return my_solist.begin();
-    }
-
-    const_iterator begin() const {
-        return my_solist.begin();
-    }
-
-    iterator end() {
-        return my_solist.end();
-    }
-
-    const_iterator end() const {
-        return my_solist.end();
-    }
-
-    const_iterator cbegin() const {
-        return my_solist.cbegin();
-    }
-
-    const_iterator cend() const {
-        return my_solist.cend();
-    }
-
-    // Parallel traversal support
-    class const_range_type : tbb::internal::no_assign {
-        const concurrent_unordered_base &my_table;
-        raw_const_iterator my_begin_node;
-        raw_const_iterator my_end_node;
-        mutable raw_const_iterator my_midpoint_node;
-    public:
-        //! Type for size of a range
-        typedef typename concurrent_unordered_base::size_type size_type;
-        typedef typename concurrent_unordered_base::value_type value_type;
-        typedef typename concurrent_unordered_base::reference reference;
-        typedef typename concurrent_unordered_base::difference_type difference_type;
-        typedef typename concurrent_unordered_base::const_iterator iterator;
-
-        //! True if range is empty.
-        bool empty() const {return my_begin_node == my_end_node;}
-
-        //! True if range can be partitioned into two subranges.
-        bool is_divisible() const {
-            return my_midpoint_node != my_end_node;
-        }
-        //! Split range.
-        const_range_type( const_range_type &r, split ) : 
-            my_table(r.my_table), my_end_node(r.my_end_node)
-        {
-            r.my_end_node = my_begin_node = r.my_midpoint_node;
-            __TBB_ASSERT( !empty(), "Splitting despite the range is not divisible" );
-            __TBB_ASSERT( !r.empty(), "Splitting despite the range is not divisible" );
-            set_midpoint();
-            r.set_midpoint();
-        }
-        //! Init range with container and grainsize specified
-        const_range_type( const concurrent_unordered_base &a_table ) : 
-            my_table(a_table), my_begin_node(a_table.my_solist.begin()),
-            my_end_node(a_table.my_solist.end())
-        {
-            set_midpoint();
-        }
-        iterator begin() const { return my_table.my_solist.get_iterator(my_begin_node); }
-        iterator end() const { return my_table.my_solist.get_iterator(my_end_node); }
-        //! The grain size for this range.
-        size_type grainsize() const { return 1; }
-
-        //! Set my_midpoint_node to point approximately half way between my_begin_node and my_end_node.
-        void set_midpoint() const {
-            if( my_begin_node == my_end_node ) // not divisible
-                my_midpoint_node = my_end_node;
-            else {
-                sokey_t begin_key = solist_t::get_safe_order_key(my_begin_node);
-                sokey_t end_key = solist_t::get_safe_order_key(my_end_node);
-                size_t mid_bucket = __TBB_ReverseBits( begin_key + (end_key-begin_key)/2 ) % my_table.my_number_of_buckets;
-                while ( !my_table.is_initialized(mid_bucket) ) mid_bucket = my_table.get_parent(mid_bucket);
-                my_midpoint_node = my_table.my_solist.first_real_iterator(my_table.get_bucket( mid_bucket ));
-                if( my_midpoint_node == my_begin_node )
-                    my_midpoint_node = my_end_node;
-#if TBB_USE_ASSERT
-                else {
-                    sokey_t mid_key = solist_t::get_safe_order_key(my_midpoint_node);
-                    __TBB_ASSERT( begin_key < mid_key, "my_begin_node is after my_midpoint_node" );
-                    __TBB_ASSERT( mid_key <= end_key, "my_midpoint_node is after my_end_node" );
-                }
-#endif // TBB_USE_ASSERT
-            }
-        }
-    };
-
-    class range_type : public const_range_type {
-    public:
-        typedef typename concurrent_unordered_base::iterator iterator;
-        //! Split range.
-        range_type( range_type &r, split ) : const_range_type( r, split() ) {}
-        //! Init range with container and grainsize specified
-        range_type( const concurrent_unordered_base &a_table ) : const_range_type(a_table) {}
-
-        iterator begin() const { return solist_t::get_iterator( const_range_type::begin() ); }
-        iterator end() const { return solist_t::get_iterator( const_range_type::end() ); }
-    };
-
-    range_type range() {
-        return range_type( *this );
-    }
-
-    const_range_type range() const {
-        return const_range_type( *this );
-    }
-
-    // Modifiers
-    std::pair<iterator, bool> insert(const value_type& value) {
-        return internal_insert(value);
-    }
-
-    iterator insert(const_iterator, const value_type& value) {
-        // Ignore hint
-        return insert(value).first;
-    }
-
-    template<class Iterator>
-    void insert(Iterator first, Iterator last) {
-        for (Iterator it = first; it != last; ++it)
-            insert(*it);
-    }
-
-    iterator unsafe_erase(const_iterator where) {
-        return internal_erase(where);
-    }
-
-    iterator unsafe_erase(const_iterator first, const_iterator last) {
-        while (first != last)
-            unsafe_erase(first++);
-        return my_solist.get_iterator(first);
-    }
-
-    size_type unsafe_erase(const key_type& key) {
-        pairii_t where = equal_range(key);
-        size_type item_count = internal_distance(where.first, where.second);
-        unsafe_erase(where.first, where.second);
-        return item_count;
-    }
-
-    void swap(concurrent_unordered_base& right) {
-        if (this != &right) {
-            std::swap(my_hash_compare, right.my_hash_compare); // TODO: check what ADL meant here
-            my_solist.swap(right.my_solist);
-            internal_swap_buckets(right);
-            std::swap(my_number_of_buckets, right.my_number_of_buckets);
-            std::swap(my_maximum_bucket_size, right.my_maximum_bucket_size);
-        }
-    }
-
-    // Observers
-    void clear() {
-        // Clear list
-        my_solist.clear();
-
-        // Clear buckets
-        internal_clear();
-
-        // Initialize bucket 0
-        __TBB_ASSERT(my_buckets[0] == NULL, NULL);
-        raw_iterator dummy_node = my_solist.raw_begin();
-        set_bucket(0, dummy_node);
-    }
-
-    // Lookup
-    iterator find(const key_type& key) {
-        return internal_find(key);
-    }
-
-    const_iterator find(const key_type& key) const {
-        return const_cast<self_type*>(this)->internal_find(key);
-    }
-
-    size_type count(const key_type& key) const {
-        if(allow_multimapping) {
-            paircc_t answer = equal_range(key);
-            size_type item_count = internal_distance(answer.first, answer.second);
-            return item_count;
-        } else {
-            return const_cast<self_type*>(this)->internal_find(key) == end()?0:1;
-        }
-    }
-
-    std::pair<iterator, iterator> equal_range(const key_type& key) {
-        return internal_equal_range(key);
-    }
-
-    std::pair<const_iterator, const_iterator> equal_range(const key_type& key) const {
-        return const_cast<self_type*>(this)->internal_equal_range(key);
-    }
-
-    // Bucket interface - for debugging 
-    size_type unsafe_bucket_count() const {
-        return my_number_of_buckets;
-    }
-
-    size_type unsafe_max_bucket_count() const {
-        return segment_size(pointers_per_table-1);
-    }
-
-    size_type unsafe_bucket_size(size_type bucket) {
-        size_type item_count = 0;
-        if (is_initialized(bucket)) {
-            raw_iterator it = get_bucket(bucket);
-            ++it;
-            for (; it != my_solist.raw_end() && !it.get_node_ptr()->is_dummy(); ++it)
-                ++item_count;
-        }
-        return item_count;
-    }
-
-    size_type unsafe_bucket(const key_type& key) const {
-        sokey_t order_key = (sokey_t) my_hash_compare(key);
-        size_type bucket = order_key % my_number_of_buckets;
-        return bucket;
-    }
-
-    // If the bucket is initialized, return a first non-dummy element in it
-    local_iterator unsafe_begin(size_type bucket) {
-        if (!is_initialized(bucket))
-            return end();
-
-        raw_iterator it = get_bucket(bucket);
-        return my_solist.first_real_iterator(it);
-    }
-
-    // If the bucket is initialized, return a first non-dummy element in it
-    const_local_iterator unsafe_begin(size_type bucket) const
-    {
-        if (!is_initialized(bucket))
-            return end();
-
-        raw_const_iterator it = get_bucket(bucket);
-        return my_solist.first_real_iterator(it);
-    }
-
-    // @REVIEW: Takes O(n)
-    // Returns the iterator after the last non-dummy element in the bucket
-    local_iterator unsafe_end(size_type bucket)
-    {
-        if (!is_initialized(bucket))
-            return end();
-
-        raw_iterator it = get_bucket(bucket);
-    
-        // Find the end of the bucket, denoted by the dummy element
-        do ++it;
-        while(it != my_solist.raw_end() && !it.get_node_ptr()->is_dummy());
-
-        // Return the first real element past the end of the bucket
-        return my_solist.first_real_iterator(it);
-    }
-
-    // @REVIEW: Takes O(n)
-    // Returns the iterator after the last non-dummy element in the bucket
-    const_local_iterator unsafe_end(size_type bucket) const
-    {
-        if (!is_initialized(bucket))
-            return end();
-
-        raw_const_iterator it = get_bucket(bucket);
-    
-        // Find the end of the bucket, denoted by the dummy element
-        do ++it;
-        while(it != my_solist.raw_end() && !it.get_node_ptr()->is_dummy());
-
-        // Return the first real element past the end of the bucket
-        return my_solist.first_real_iterator(it);
-    }
-
-    const_local_iterator unsafe_cbegin(size_type bucket) const {
-        return ((const self_type *) this)->begin();
-    }
-
-    const_local_iterator unsafe_cend(size_type bucket) const {
-        return ((const self_type *) this)->end();
-    }
-
-    // Hash policy
-    float load_factor() const {
-        return (float) size() / (float) unsafe_bucket_count();
-    }
-
-    float max_load_factor() const {
-        return my_maximum_bucket_size;
-    }
-
-    void max_load_factor(float newmax) {
-        if (newmax != newmax || newmax < 0)
-            tbb::internal::throw_exception(tbb::internal::eid_invalid_load_factor);
-        my_maximum_bucket_size = newmax;
-    }
-
-    // This function is a noop, because the underlying split-ordered list
-    // is already sorted, so an increase in the bucket number will be
-    // reflected next time this bucket is touched.
-    void rehash(size_type buckets) {
-        size_type current_buckets = my_number_of_buckets;
-        if (current_buckets >= buckets)
-            return;
-        my_number_of_buckets = 1<<__TBB_Log2((uintptr_t)buckets*2-1); // round up to power of 2
-    }
-
-private:
-
-    // Initialize the hash and keep the first bucket open
-    void internal_init() {
-        // Allocate an array of segment pointers
-        memset(my_buckets, 0, pointers_per_table * sizeof(void *));
-
-        // Initialize bucket 0
-        raw_iterator dummy_node = my_solist.raw_begin();
-        set_bucket(0, dummy_node);
-    }
-
-    void internal_clear() {
-        for (size_type index = 0; index < pointers_per_table; ++index) {
-            if (my_buckets[index] != NULL) {
-                size_type sz = segment_size(index);
-                for (size_type index2 = 0; index2 < sz; ++index2)
-                    my_allocator.destroy(&my_buckets[index][index2]);
-                my_allocator.deallocate(my_buckets[index], sz);
-                my_buckets[index] = 0;
-            }
-        }
-    }
-
-    void internal_copy(const self_type& right) {
-        clear();
-
-        my_maximum_bucket_size = right.my_maximum_bucket_size;
-        my_number_of_buckets = right.my_number_of_buckets;
-
-        __TBB_TRY {
-            insert(right.begin(), right.end());
-            my_hash_compare = right.my_hash_compare;
-        } __TBB_CATCH(...) {
-            my_solist.clear();
-            __TBB_RETHROW();
-        }
-    }
-
-    void internal_swap_buckets(concurrent_unordered_base& right)
-    {
-        // Swap all node segments
-        for (size_type index = 0; index < pointers_per_table; ++index)
-        {
-            raw_iterator * iterator_pointer = my_buckets[index];
-            my_buckets[index] = right.my_buckets[index];
-            right.my_buckets[index] = iterator_pointer;
-        }
-    }
-
-    // Hash APIs
-    size_type internal_distance(const_iterator first, const_iterator last) const
-    {
-        size_type num = 0;
-
-        for (const_iterator it = first; it != last; ++it)
-            ++num;
-
-        return num;
-    }
-
-    // Insert an element in the hash given its value
-    std::pair<iterator, bool> internal_insert(const value_type& value)
-    {
-        sokey_t order_key = (sokey_t) my_hash_compare(get_key(value));
-        size_type bucket = order_key % my_number_of_buckets;
-
-        // If bucket is empty, initialize it first
-        if (!is_initialized(bucket))
-            init_bucket(bucket);
-
-        size_type new_count;
-        order_key = split_order_key_regular(order_key);
-        raw_iterator it = get_bucket(bucket);
-        raw_iterator last = my_solist.raw_end();
-        raw_iterator where = it;
-
-        __TBB_ASSERT(where != last, "Invalid head node");
-
-        // First node is a dummy node
-        ++where;
-
-        for (;;)
-        {
-            if (where == last || solist_t::get_order_key(where) > order_key)
-            {
-                // Try to insert it in the right place
-                std::pair<iterator, bool> result = my_solist.try_insert(it, where, value, order_key, &new_count);
-                
-                if (result.second)
-                {
-                    // Insertion succeeded, adjust the table size, if needed
-                    adjust_table_size(new_count, my_number_of_buckets);
-                    return result;
-                }
-                else
-                {
-                    // Insertion failed: either the same node was inserted by another thread, or
-                    // another element was inserted at exactly the same place as this node.
-                    // Proceed with the search from the previous location where order key was
-                    // known to be larger (note: this is legal only because there is no safe
-                    // concurrent erase operation supported).
-                    where = it;
-                    ++where;
-                    continue;
-                }
-            }
-            else if (!allow_multimapping && solist_t::get_order_key(where) == order_key && my_hash_compare(get_key(*where), get_key(value)) == 0)
-            {
-                // Element already in the list, return it
-                return std::pair<iterator, bool>(my_solist.get_iterator(where), false);
-            }
-
-            // Move the iterator forward
-            it = where;
-            ++where;
-        }
-    }
-
-    // Find the element in the split-ordered list
-    iterator internal_find(const key_type& key)
-    {
-        sokey_t order_key = (sokey_t) my_hash_compare(key);
-        size_type bucket = order_key % my_number_of_buckets;
-
-        // If bucket is empty, initialize it first
-        if (!is_initialized(bucket))
-            init_bucket(bucket);
-
-        order_key = split_order_key_regular(order_key);
-        raw_iterator last = my_solist.raw_end();
-
-        for (raw_iterator it = get_bucket(bucket); it != last; ++it)
-        {
-            if (solist_t::get_order_key(it) > order_key)
-            {
-                // If the order key is smaller than the current order key, the element
-                // is not in the hash.
-                return end();
-            }
-            else if (solist_t::get_order_key(it) == order_key)
-            {
-                // The fact that order keys match does not mean that the element is found.
-                // Key function comparison has to be performed to check whether this is the
-                // right element. If not, keep searching while order key is the same.
-                if (!my_hash_compare(get_key(*it), key))
-                    return my_solist.get_iterator(it);
-            }
-        }
-
-        return end();
-    }
-
-    // Erase an element from the list. This is not a concurrency safe function.
-    iterator internal_erase(const_iterator it)
-    {
-        key_type key = get_key(*it);
-        sokey_t order_key = (sokey_t) my_hash_compare(key);
-        size_type bucket = order_key % my_number_of_buckets;
-
-        // If bucket is empty, initialize it first
-        if (!is_initialized(bucket))
-            init_bucket(bucket);
-
-        order_key = split_order_key_regular(order_key);
-
-        raw_iterator previous = get_bucket(bucket);
-        raw_iterator last = my_solist.raw_end();
-        raw_iterator where = previous;
-
-        __TBB_ASSERT(where != last, "Invalid head node");
-
-        // First node is a dummy node
-        ++where;
-
-        for (;;) {
-            if (where == last)
-                return end();
-            else if (my_solist.get_iterator(where) == it)
-                return my_solist.erase_node(previous, it);
-
-            // Move the iterator forward
-            previous = where;
-            ++where;
-        }
-    }
-
-    // Return the [begin, end) pair of iterators with the same key values.
-    // This operation makes sense only if mapping is many-to-one.
-    pairii_t internal_equal_range(const key_type& key)
-    {
-        sokey_t order_key = (sokey_t) my_hash_compare(key);
-        size_type bucket = order_key % my_number_of_buckets;
-
-        // If bucket is empty, initialize it first
-        if (!is_initialized(bucket))
-            init_bucket(bucket);
-
-        order_key = split_order_key_regular(order_key);
-        raw_iterator end_it = my_solist.raw_end();
-
-        for (raw_iterator it = get_bucket(bucket); it != end_it; ++it)
-        {
-            if (solist_t::get_order_key(it) > order_key)
-            {
-                // There is no element with the given key
-                return pairii_t(end(), end());
-            }
-            else if (solist_t::get_order_key(it) == order_key && !my_hash_compare(get_key(*it), key))
-            {
-                iterator first = my_solist.get_iterator(it);
-                iterator last = first;
-                do ++last; while( allow_multimapping && last != end() && !my_hash_compare(get_key(*last), key) );
-                return pairii_t(first, last);
-            }
-        }
-
-        return pairii_t(end(), end());
-    }
-
-    // Bucket APIs
-    void init_bucket(size_type bucket)
-    {
-        // Bucket 0 has no parent.
-        __TBB_ASSERT( bucket != 0, "The first bucket must always be initialized");
-
-        size_type parent_bucket = get_parent(bucket);
-
-        // All parent_bucket buckets have to be initialized before this bucket is
-        if (!is_initialized(parent_bucket))
-            init_bucket(parent_bucket);
-
-        raw_iterator parent = get_bucket(parent_bucket);
-
-        // Create a dummy first node in this bucket
-        raw_iterator dummy_node = my_solist.insert_dummy(parent, split_order_key_dummy(bucket));
-        set_bucket(bucket, dummy_node);
-    }
-
-    void adjust_table_size(size_type total_elements, size_type current_size)
-    {
-        // Grow the table by a factor of 2 if possible and needed
-        if ( ((float) total_elements / (float) current_size) > my_maximum_bucket_size )
-        {
-            // Double the size of the hash only if size has not changed inbetween loads
-            __TBB_CompareAndSwapW((uintptr_t*)&my_number_of_buckets, uintptr_t(2u*current_size), uintptr_t(current_size) );
-            //Simple "my_number_of_buckets.compare_and_swap( current_size<<1, current_size );" does not work for VC8
-            //due to overzealous compiler warnings in /Wp64 mode
-        }
-    }
-
-    size_type get_parent(size_type bucket) const
-    {
-        // Unsets bucket's most significant turned-on bit
-        size_type msb = __TBB_Log2((uintptr_t)bucket);
-        return bucket & ~(size_type(1) << msb);
-    }
-
-
-    // Dynamic sized array (segments)
-    //! @return segment index of given index in the array
-    static size_type segment_index_of( size_type index ) {
-        return size_type( __TBB_Log2( uintptr_t(index|1) ) );
-    }
-
-    //! @return the first array index of given segment
-    static size_type segment_base( size_type k ) {
-        return (size_type(1)<<k & ~size_type(1));
-    }
-
-    //! @return segment size
-    static size_type segment_size( size_type k ) {
-        return k? size_type(1)<<k : 2;
-    }
-
-    raw_iterator get_bucket(size_type bucket) const {
-        size_type segment = segment_index_of(bucket);
-        bucket -= segment_base(segment);
-        __TBB_ASSERT( my_buckets[segment], "bucket must be in an allocated segment" );
-        return my_buckets[segment][bucket];
-    }
-
-    void set_bucket(size_type bucket, raw_iterator dummy_head) {
-        size_type segment = segment_index_of(bucket);
-        bucket -= segment_base(segment);
-
-        if (my_buckets[segment] == NULL) {
-            size_type sz = segment_size(segment);
-            raw_iterator * new_segment = my_allocator.allocate(sz);
-            std::memset(new_segment, 0, sz*sizeof(raw_iterator));
-
-            if (__TBB_CompareAndSwapW((void *) &my_buckets[segment], (uintptr_t)new_segment, 0) != 0)
-                my_allocator.deallocate(new_segment, sz);
-        }
-
-        my_buckets[segment][bucket] = dummy_head;
-    }
-
-    bool is_initialized(size_type bucket) const {
-        size_type segment = segment_index_of(bucket);
-        bucket -= segment_base(segment);
-
-        if (my_buckets[segment] == NULL)
-            return false;
-
-        raw_iterator it = my_buckets[segment][bucket];
-        return (it.get_node_ptr() != NULL);
-    }
-
-    // Utilities for keys
-
-    // A regular order key has its original hash value reversed and the last bit set
-    sokey_t split_order_key_regular(sokey_t order_key) const {
-        return __TBB_ReverseBits(order_key) | 0x1;
-    }
-
-    // A dummy order key has its original hash value reversed and the last bit unset
-    sokey_t split_order_key_dummy(sokey_t order_key) const {
-        return __TBB_ReverseBits(order_key) & ~(0x1);
-    }
-
-    // Shared variables
-    atomic<size_type>                                             my_number_of_buckets;       // Current table size
-    solist_t                                                      my_solist;                  // List where all the elements are kept
-    typename allocator_type::template rebind<raw_iterator>::other my_allocator;               // Allocator object for segments
-    float                                                         my_maximum_bucket_size;     // Maximum size of the bucket
-    atomic<raw_iterator*>                                         my_buckets[pointers_per_table]; // The segment table
-};
-#if _MSC_VER
-#pragma warning(pop) // warning 4127 -- while (true) has a constant expression in it
-#endif
-
-//! Hash multiplier
-static const size_t hash_multiplier = sizeof(size_t)==4? 2654435769U : 11400714819323198485ULL;
-} // namespace internal
-//! @endcond
-//! Hasher functions
-template<typename T>
-inline size_t tbb_hasher( const T& t ) {
-    return static_cast<size_t>( t ) * internal::hash_multiplier;
-}
-template<typename P>
-inline size_t tbb_hasher( P* ptr ) {
-    size_t const h = reinterpret_cast<size_t>( ptr );
-    return (h >> 3) ^ h;
-}
-template<typename E, typename S, typename A>
-inline size_t tbb_hasher( const std::basic_string<E,S,A>& s ) {
-    size_t h = 0;
-    for( const E* c = s.c_str(); *c; ++c )
-        h = static_cast<size_t>(*c) ^ (h * internal::hash_multiplier);
-    return h;
-}
-template<typename F, typename S>
-inline size_t tbb_hasher( const std::pair<F,S>& p ) {
-    return tbb_hasher(p.first) ^ tbb_hasher(p.second);
-}
-} // namespace interface5
-using interface5::tbb_hasher;
-
-
-// Template class for hash compare
-template<typename Key>
-class tbb_hash
-{
-public:
-    tbb_hash() {}
-
-    size_t operator()(const Key& key) const
-    {
-        return tbb_hasher(key);
-    }
-};
-
-} // namespace tbb
-#endif// __TBB__concurrent_unordered_impl_H
diff --git a/dependencies64/tbb/include/tbb/internal/_flow_graph_impl.h b/dependencies64/tbb/include/tbb/internal/_flow_graph_impl.h
deleted file mode 100644 (file)
index 6e7ea56..0000000
+++ /dev/null
@@ -1,582 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB__flow_graph_impl_H
-#define __TBB__flow_graph_impl_H
-
-#ifndef __TBB_flow_graph_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-namespace internal {
-
-    namespace graph_policy_namespace {
-        enum graph_buffer_policy { rejecting, reserving, queueing, tag_matching };
-    }
-
-    //! A functor that takes no input and generates a value of type Output
-    template< typename Output >
-    class source_body : tbb::internal::no_assign {
-    public:
-        virtual ~source_body() {}
-        virtual bool operator()(Output &output) = 0;
-        virtual source_body* clone() = 0;
-    };
-    
-    //! The leaf for source_body
-    template< typename Output, typename Body>
-    class source_body_leaf : public source_body<Output> {
-    public:
-        source_body_leaf( const Body &_body ) : body(_body), init_body(_body) { }
-        /*override*/ bool operator()(Output &output) { return body( output ); }
-        /*override*/ source_body_leaf* clone() { 
-            return new source_body_leaf< Output, Body >(init_body); 
-        }
-    private:
-        Body body;
-        Body init_body;
-    };
-    
-    //! A functor that takes an Input and generates an Output
-    template< typename Input, typename Output >
-    class function_body : tbb::internal::no_assign {
-    public:
-        virtual ~function_body() {}
-        virtual Output operator()(const Input &input) = 0;
-        virtual function_body* clone() = 0;
-    };
-    
-    //! the leaf for function_body
-    template <typename Input, typename Output, typename B>
-    class function_body_leaf : public function_body< Input, Output > {
-    public:
-        function_body_leaf( const B &_body ) : body(_body), init_body(_body) { }
-        Output operator()(const Input &i) { return body(i); }
-        B get_body() { return body; }
-        /*override*/ function_body_leaf* clone() {
-            return new function_body_leaf< Input, Output, B >(init_body);
-        }
-    private:
-        B body;
-        B init_body;
-    };
-    
-    //! the leaf for function_body specialized for Input and output of continue_msg
-    template <typename B>
-    class function_body_leaf< continue_msg, continue_msg, B> : public function_body< continue_msg, continue_msg > {
-    public:
-        function_body_leaf( const B &_body ) : body(_body), init_body(_body) { }
-        continue_msg operator()( const continue_msg &i ) { 
-            body(i); 
-            return i; 
-        }
-        B get_body() { return body; }
-        /*override*/ function_body_leaf* clone() {
-           return new function_body_leaf< continue_msg, continue_msg, B >(init_body);
-        }    
-    private:
-        B body;
-        B init_body;
-    };
-    
-    //! the leaf for function_body specialized for Output of continue_msg
-    template <typename Input, typename B>
-    class function_body_leaf< Input, continue_msg, B> : public function_body< Input, continue_msg > {
-    public:
-        function_body_leaf( const B &_body ) : body(_body), init_body(_body) { }
-        continue_msg operator()(const Input &i) { 
-            body(i); 
-            return continue_msg();
-        }
-        B get_body() { return body; }
-        /*override*/ function_body_leaf* clone() {
-            return new function_body_leaf< Input, continue_msg, B >(init_body);
-        }    
-    private:
-        B body;
-        B init_body;
-    };
-    
-    //! the leaf for function_body specialized for Input of continue_msg
-    template <typename Output, typename B>
-    class function_body_leaf< continue_msg, Output, B > : public function_body< continue_msg, Output > {
-    public:
-        function_body_leaf( const B &_body ) : body(_body), init_body(_body) { }
-        Output operator()(const continue_msg &i) { 
-            return body(i); 
-        }
-        B get_body() { return body; }
-        /*override*/ function_body_leaf* clone() {
-            return new function_body_leaf< continue_msg, Output, B >(init_body);
-        }    
-    private:
-        B body;
-        B init_body;
-    };
-
-# if TBB_PREVIEW_GRAPH_NODES
-    //! function_body that takes an Input and a set of output ports
-    template<typename Input, typename OutputSet>
-    class multioutput_function_body {
-    public:
-        virtual ~multioutput_function_body () {}
-        virtual void operator()(const Input &/* input*/, OutputSet &/*oset*/) = 0;
-        virtual multioutput_function_body* clone() = 0;
-    };
-
-    //! leaf for multi-output function.  OutputSet can be a std::tuple or a vector.
-    template<typename Input, typename OutputSet, typename B>
-    class multioutput_function_body_leaf : public multioutput_function_body<Input, OutputSet> {
-    public:
-        multioutput_function_body_leaf(const B &_body) : body(_body), init_body(_body) { }
-        void operator()(const Input &input, OutputSet &oset) {
-            body(input, oset); // body should explicitly put() to one or more of oset.
-        }
-        B get_body() { return body; }
-        /*override*/ multioutput_function_body_leaf* clone() {
-            return new multioutput_function_body_leaf<Input, OutputSet,B>(init_body);
-        }
-    private:
-        B body;
-        B init_body;
-    };
-#endif  // TBB_PREVIEW_GRAPH_NODES
-    
-    //! A task that calls a node's forward function
-    template< typename NodeType >
-    class forward_task : public task {
-    
-        NodeType &my_node;
-    
-    public:
-    
-        forward_task( NodeType &n ) : my_node(n) {}
-    
-        task *execute() {
-            my_node.forward();
-            return NULL;
-        }
-    };
-    
-    //! A task that calls a node's apply_body function, passing in an input of type Input
-    template< typename NodeType, typename Input >
-    class apply_body_task : public task {
-    
-        NodeType &my_node;
-        Input my_input;
-        
-    public:
-        
-        apply_body_task( NodeType &n, const Input &i ) : my_node(n), my_input(i) {}
-        
-        task *execute() {
-            my_node.apply_body( my_input );
-            return NULL;
-        }
-    };
-    
-    //! A task that calls a node's apply_body function with no input
-    template< typename NodeType >
-    class source_task : public task {
-    
-        NodeType &my_node;
-    
-    public:
-    
-        source_task( NodeType &n ) : my_node(n) {}
-    
-        task *execute() {
-            my_node.apply_body( );
-            return NULL;
-        }
-    };
-    
-    //! An empty functor that takes an Input and returns a default constructed Output
-    template< typename Input, typename Output >
-    struct empty_body {
-       Output operator()( const Input & ) const { return Output(); } 
-    };
-    
-    //! A node_cache maintains a std::queue of elements of type T.  Each operation is protected by a lock. 
-    template< typename T, typename M=spin_mutex >
-    class node_cache {
-        public:
-    
-        typedef size_t size_type;
-        
-        bool empty() {
-            typename my_mutex_type::scoped_lock lock( my_mutex );
-            return internal_empty();
-        }
-    
-        void add( T &n ) {
-            typename my_mutex_type::scoped_lock lock( my_mutex );
-            internal_push(n);
-        }
-    
-        void remove( T &n ) {
-            typename my_mutex_type::scoped_lock lock( my_mutex );
-            for ( size_t i = internal_size(); i != 0; --i ) {
-                T &s = internal_pop();
-                if ( &s != &n ) {
-                    internal_push(s);
-                }
-            }
-        }
-        
-    protected:
-    
-        typedef M my_mutex_type;
-        my_mutex_type my_mutex;
-        std::queue< T * > my_q;
-    
-        // Assumes lock is held
-        inline bool internal_empty( )  {
-            return my_q.empty();
-        }
-    
-        // Assumes lock is held
-        inline size_type internal_size( )  {
-            return my_q.size(); 
-        }
-    
-        // Assumes lock is held
-        inline void internal_push( T &n )  {
-            my_q.push(&n);
-        }
-    
-        // Assumes lock is held
-        inline T &internal_pop() {
-            T *v = my_q.front();
-            my_q.pop();
-            return *v;
-        }
-    
-    };
-    
-    //! A cache of predecessors that only supports try_get
-    template< typename T, typename M=spin_mutex >
-    class predecessor_cache : public node_cache< sender<T>, M > {
-        public:
-        typedef M my_mutex_type;
-        typedef T output_type; 
-        typedef sender<output_type> predecessor_type;
-        typedef receiver<output_type> successor_type;
-    
-        predecessor_cache( ) : my_owner( NULL ) { }
-        
-        void set_owner( successor_type *owner ) { my_owner = owner; }
-        
-        bool get_item( output_type &v ) {
-        
-            bool msg = false;
-        
-            do {
-                predecessor_type *src;
-                {
-                    typename my_mutex_type::scoped_lock lock(this->my_mutex);
-                    if ( this->internal_empty() ) {
-                        break;
-                    }
-                    src = &this->internal_pop();
-                }
-        
-                // Try to get from this sender
-                msg = src->try_get( v );
-        
-                if (msg == false) {
-                    // Relinquish ownership of the edge
-                    if ( my_owner) 
-                        src->register_successor( *my_owner );
-                } else {
-                    // Retain ownership of the edge
-                    this->add(*src);
-                }
-            } while ( msg == false );
-            return msg;
-        }
-    
-    protected:
-        successor_type *my_owner;
-    };
-    
-    //! An cache of predecessors that supports requests and reservations
-    template< typename T, typename M=spin_mutex >
-    class reservable_predecessor_cache : public predecessor_cache< T, M > {
-    public:
-        typedef M my_mutex_type;
-        typedef T output_type; 
-        typedef sender<T> predecessor_type;
-        typedef receiver<T> successor_type;
-        
-        reservable_predecessor_cache( ) : reserved_src(NULL) { }
-        
-        bool 
-        try_reserve( output_type &v ) {
-            bool msg = false;
-        
-            do {
-                {
-                    typename my_mutex_type::scoped_lock lock(this->my_mutex);
-                    if ( reserved_src || this->internal_empty() ) 
-                        return false;
-        
-                    reserved_src = &this->internal_pop();
-                }
-        
-                // Try to get from this sender
-                msg = reserved_src->try_reserve( v );
-        
-                if (msg == false) {
-                    typename my_mutex_type::scoped_lock lock(this->my_mutex);
-                    // Relinquish ownership of the edge
-                    reserved_src->register_successor( *this->my_owner );
-                    reserved_src = NULL;
-                } else {
-                    // Retain ownership of the edge
-                    this->add( *reserved_src );
-                }
-            } while ( msg == false );
-        
-            return msg;
-        }
-        
-        bool 
-        try_release( ) {
-            reserved_src->try_release( );
-            reserved_src = NULL;
-            return true;
-        }
-        
-        bool 
-        try_consume( ) {
-            reserved_src->try_consume( );
-            reserved_src = NULL;
-            return true;
-        }
-    
-    private:
-        predecessor_type *reserved_src;
-    };
-    
-    
-    //! An abstract cache of succesors
-    template<typename T, typename M=spin_rw_mutex >
-    class successor_cache : tbb::internal::no_copy {
-    protected:
-        
-        typedef M my_mutex_type;
-        my_mutex_type my_mutex;
-        
-        typedef std::list< receiver<T> * > my_successors_type;
-        my_successors_type my_successors;
-        
-        sender<T> *my_owner;
-        
-    public:
-        
-        successor_cache( ) : my_owner(NULL) {}
-        
-        void set_owner( sender<T> *owner ) { my_owner = owner; }
-        
-        virtual ~successor_cache() {}
-        
-        void register_successor( receiver<T> &r ) {
-            typename my_mutex_type::scoped_lock l(my_mutex, true);
-            my_successors.push_back( &r ); 
-        }
-    
-        void remove_successor( receiver<T> &r ) {
-            typename my_mutex_type::scoped_lock l(my_mutex, true);
-            for ( typename my_successors_type::iterator i = my_successors.begin();
-                  i != my_successors.end(); ++i ) { 
-                if ( *i == & r ) { 
-                    my_successors.erase(i);
-                    break;
-                }
-            }
-        }
-        
-        bool empty() { 
-            typename my_mutex_type::scoped_lock l(my_mutex, false);
-            return my_successors.empty(); 
-        }
-        
-        virtual bool try_put( const T &t ) = 0; 
-     };
-    
-    //! An abstract cache of succesors, specialized to continue_msg
-    template<>
-    class successor_cache< continue_msg > : tbb::internal::no_copy {
-    protected:
-        
-        typedef spin_rw_mutex my_mutex_type;
-        my_mutex_type my_mutex;
-        
-        typedef std::list< receiver<continue_msg> * > my_successors_type;
-        my_successors_type my_successors;
-        
-        sender<continue_msg> *my_owner;
-        
-    public:
-        
-        successor_cache( ) : my_owner(NULL) {}
-        
-        void set_owner( sender<continue_msg> *owner ) { my_owner = owner; }
-        
-        virtual ~successor_cache() {}
-        
-        void register_successor( receiver<continue_msg> &r ) {
-            my_mutex_type::scoped_lock l(my_mutex, true);
-            my_successors.push_back( &r ); 
-            if ( my_owner ) {
-                continue_receiver *cr = dynamic_cast< continue_receiver * >(&r);
-                if ( cr ) 
-                    cr->register_predecessor( *my_owner );
-            }
-        }
-        
-        void remove_successor( receiver<continue_msg> &r ) {
-            my_mutex_type::scoped_lock l(my_mutex, true);
-            for ( my_successors_type::iterator i = my_successors.begin();
-                  i != my_successors.end(); ++i ) { 
-                if ( *i == & r ) { 
-                    if ( my_owner )
-                        r.remove_predecessor( *my_owner );
-                    my_successors.erase(i);
-                    break;
-                }
-            }
-        }
-    
-        bool empty() { 
-            my_mutex_type::scoped_lock l(my_mutex, false);
-            return my_successors.empty(); 
-        }
-    
-        virtual bool try_put( const continue_msg &t ) = 0; 
-        
-     };
-    
-    //! A cache of successors that are broadcast to
-    template<typename T, typename M=spin_rw_mutex>
-    class broadcast_cache : public successor_cache<T, M> {
-        typedef M my_mutex_type;
-        typedef std::list< receiver<T> * > my_successors_type;
-        
-    public:
-        
-        broadcast_cache( ) {}
-        
-        bool try_put( const T &t ) {
-            bool msg = false;
-            bool upgraded = false;
-            typename my_mutex_type::scoped_lock l(this->my_mutex, false);
-            typename my_successors_type::iterator i = this->my_successors.begin();
-            while ( i != this->my_successors.end() ) {
-               if ( (*i)->try_put( t ) == true ) {
-                   ++i;
-                   msg = true;
-               } else {
-                  if ( (*i)->register_predecessor(*this->my_owner) ) {
-                      if (!upgraded) {
-                          l.upgrade_to_writer();
-                          upgraded = true;
-                      }
-                      i = this->my_successors.erase(i);
-                  }
-                  else {
-                      ++i;
-                  }
-               }
-            }
-            return msg;
-        }
-    };
-
-    //! A cache of successors that are put in a round-robin fashion
-    template<typename T, typename M=spin_rw_mutex >
-    class round_robin_cache : public successor_cache<T, M> {
-        typedef size_t size_type;
-        typedef M my_mutex_type;
-        typedef std::list< receiver<T> * > my_successors_type;
-    
-    public:
-        
-        round_robin_cache( ) {}
-        
-        size_type size() {
-            typename my_mutex_type::scoped_lock l(this->my_mutex, false);
-            return this->my_successors.size();
-        }
-        
-        bool try_put( const T &t ) {
-            bool upgraded = false;
-            typename my_mutex_type::scoped_lock l(this->my_mutex, false);
-            typename my_successors_type::iterator i = this->my_successors.begin();
-            while ( i != this->my_successors.end() ) {
-               if ( (*i)->try_put( t ) ) {
-                   return true;
-               } else {
-                  if ( (*i)->register_predecessor(*this->my_owner) ) {
-                      if (!upgraded) {
-                          l.upgrade_to_writer();
-                          upgraded = true;
-                      }
-                      i = this->my_successors.erase(i);
-                  }
-                  else {
-                      ++i;
-                  }
-               }
-            }
-            return false;
-        }
-    };
-    
-    template<typename T>
-    class decrementer : public continue_receiver, tbb::internal::no_copy {
-        
-        T *my_node;
-        
-        void execute() {
-            my_node->decrement_counter();
-        }
-        
-    public:
-       
-        typedef continue_msg input_type;
-        typedef continue_msg output_type;
-        decrementer( int number_of_predecessors = 0 ) : continue_receiver( number_of_predecessors ) { }
-        void set_owner( T *node ) { my_node = node; }
-    };
-    
-}
-
-#endif // __TBB__flow_graph_impl_H
-
diff --git a/dependencies64/tbb/include/tbb/internal/_flow_graph_item_buffer_impl.h b/dependencies64/tbb/include/tbb/internal/_flow_graph_item_buffer_impl.h
deleted file mode 100644 (file)
index 85c0069..0000000
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB__flow_graph_item_buffer_impl_H
-#define __TBB__flow_graph_item_buffer_impl_H
-
-#ifndef __TBB_flow_graph_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-    //! Expandable buffer of items.  The possible operations are push, pop,
-    //* tests for empty and so forth.  No mutual exclusion is built in.
-    template <typename T, typename A=cache_aligned_allocator<T> >
-    class item_buffer {
-    public:
-        typedef T input_type;
-        typedef T output_type;
-    protected:
-        typedef size_t size_type;
-        typedef std::pair< T, bool > item_type;
-        typedef typename A::template rebind<item_type>::other allocator_type;
-
-        item_type *my_array;
-        size_type my_array_size;
-        static const size_type initial_buffer_size = 4;
-        size_type my_head;
-        size_type my_tail;
-
-        bool buffer_empty() { return my_head == my_tail; }
-
-        item_type &item(size_type i) { return my_array[i & (my_array_size - 1) ]; } // may not be marked valid
-
-        bool item_valid(size_type i) { return item(i).second; }
-
-        void fetch_front(T &v) { __TBB_ASSERT(item_valid(my_head), "front not valid"); v = item(my_head).first; }
-        void fetch_back(T &v) { __TBB_ASSERT(item_valid(my_tail-1), "back not valid"); v = item(my_tail-1).first; }
-
-        void invalidate(size_type i) { __TBB_ASSERT(item_valid(i), "Item not valid"); item(i).second = false; }
-        void validate(size_type i) { __TBB_ASSERT(!item_valid(i), "Item already valid"); item(i).second = true; }
-
-        void invalidate_front() { invalidate(my_head); }
-        void validate_front() { validate(my_head); }
-        void invalidate_back() { invalidate(my_tail-1); }
-
-        size_type size() { return my_tail - my_head; }
-        size_type capacity() { return my_array_size; }
-        bool buffer_full() { return size() == capacity(); }
-
-        //! Grows the internal array.
-        void grow_my_array( size_t minimum_size ) {
-            size_type old_size = my_array_size;
-            size_type new_size = old_size ? 2*old_size : initial_buffer_size;
-            while( new_size<minimum_size )
-                new_size*=2;
-
-            item_type* new_array = allocator_type().allocate(new_size);
-            item_type* old_array = my_array;
-
-            for( size_type i=0; i<new_size; ++i ) {
-                new (&(new_array[i].first)) input_type;
-                new_array[i].second = false;
-            }
-
-            size_t t=my_head;
-            for( size_type i=0; i<old_size; ++i, ++t )
-                new_array[t&(new_size-1)] = old_array[t&(old_size-1)];
-            my_array = new_array;
-            my_array_size = new_size;
-            if( old_array ) {
-                for( size_type i=0; i<old_size; ++i, ++t )
-                    old_array[i].first.~input_type();
-                allocator_type().deallocate(old_array,old_size);
-            }
-        }
-
-        bool push_back(T &v) {
-            if(buffer_full()) {
-                grow_my_array(size() + 1);
-            }
-            item(my_tail) = std::make_pair( v, true );
-            ++my_tail;
-            return true;
-        }
-
-        bool pop_back(T &v) {
-            if (!item_valid(my_tail-1)) {
-                return false;
-            }
-            fetch_back(v);
-            invalidate_back();
-            --my_tail;
-            return true;
-        }
-
-        bool pop_front(T &v) {
-            if(!item_valid(my_head)) {
-                return false;
-            }
-            fetch_front(v);
-            invalidate_front();
-            ++my_head;
-            return true;
-        }
-
-    public:
-        //! Constructor
-        item_buffer( ) : my_array(NULL), my_array_size(0),
-            my_head(0), my_tail(0) {
-            grow_my_array(initial_buffer_size);
-        }
-
-        ~item_buffer() {
-            if (my_array) {
-                for( size_type i=0; i<my_array_size; ++i ) {
-                    my_array[i].first.~input_type();
-                }
-                allocator_type().deallocate(my_array,my_array_size); 
-            }
-        }
-
-    };
-
-    //! item_buffer with reservable front-end.  NOTE: if reserving, do not
-    //* complete operation with pop_front(); use consume_front().  
-    //* No synchronization built-in.
-    template<typename T, typename A=cache_aligned_allocator<T> >
-    class reservable_item_buffer : public item_buffer<T, A> {
-    protected:
-        using item_buffer<T, A>::buffer_empty;
-        using item_buffer<T, A>::fetch_front;
-        using item_buffer<T, A>::invalidate_front;
-        using item_buffer<T, A>::validate_front;
-        using item_buffer<T, A>::item_valid;
-        using item_buffer<T, A>::my_head;
-
-    public:
-        reservable_item_buffer() : item_buffer<T, A>(), my_reserved(false) {}
-    protected:
-
-        bool reserve_front(T &v) {
-            if(my_reserved || !item_valid(my_head)) return false;
-            my_reserved = true;
-            // reserving the head
-            fetch_front(v);
-            // invalidate the head, but don't commit until consume is called
-            invalidate_front();
-            return true;
-        }
-
-        void consume_front() {
-            __TBB_ASSERT(my_reserved, "Attempt to consume a non-reserved item");
-            ++my_head;
-            my_reserved = false;
-        }
-
-        void release_front() {
-            __TBB_ASSERT(my_reserved, "Attempt to release a non-reserved item");
-            validate_front();
-            my_reserved = false;
-        }
-
-        bool my_reserved;
-    };
-
-#endif // __TBB__flow_graph_item_buffer_impl_H
diff --git a/dependencies64/tbb/include/tbb/internal/_flow_graph_join_impl.h b/dependencies64/tbb/include/tbb/internal/_flow_graph_join_impl.h
deleted file mode 100644 (file)
index f24cfa4..0000000
+++ /dev/null
@@ -1,1702 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB__flow_graph_join_impl_H
-#define __TBB__flow_graph_join_impl_H
-
-#ifndef __TBB_flow_graph_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-namespace internal {
-
-    typedef size_t tag_value;
-    static const tag_value NO_TAG = tag_value(-1);
-
-    struct forwarding_base {
-        forwarding_base(task *rt) : my_root_task(rt), current_tag(NO_TAG) {}
-        virtual ~forwarding_base() {}
-        virtual void decrement_port_count() = 0;
-        virtual void increment_port_count() = 0;
-        virtual void increment_tag_count(tag_value /*t*/) {}
-        // moved here so input ports can queue tasks
-        task* my_root_task;
-        tag_value current_tag; // so ports can refer to FE's desired items
-    };
-
-    template< int N >
-    struct join_helper {
-
-        template< typename TupleType, typename PortType >
-        static inline void set_join_node_pointer(TupleType &my_input, PortType *port) {
-            std::get<N-1>( my_input ).set_join_node_pointer(port);
-            join_helper<N-1>::set_join_node_pointer( my_input, port );
-        }
-        template< typename TupleType >
-        static inline void consume_reservations( TupleType &my_input ) {
-            std::get<N-1>( my_input ).consume();
-            join_helper<N-1>::consume_reservations( my_input );
-        }
-
-        template< typename TupleType >
-        static inline void release_my_reservation( TupleType &my_input ) {
-            std::get<N-1>( my_input ).release();
-        }
-
-        template <typename TupleType>
-        static inline void release_reservations( TupleType &my_input) {
-            join_helper<N-1>::release_reservations(my_input);
-            release_my_reservation(my_input);
-        }
-
-        template< typename InputTuple, typename OutputTuple >
-        static inline bool reserve( InputTuple &my_input, OutputTuple &out) {
-            if ( !std::get<N-1>( my_input ).reserve( std::get<N-1>( out ) ) ) return false;
-            if ( !join_helper<N-1>::reserve( my_input, out ) ) {
-                release_my_reservation( my_input );
-                return false;
-            }
-            return true;
-        }
-
-        template<typename InputTuple, typename OutputTuple>
-        static inline bool get_my_item( InputTuple &my_input, OutputTuple &out) {
-            bool res = std::get<N-1>(my_input).get_item(std::get<N-1>(out) ); // may fail
-            return join_helper<N-1>::get_my_item(my_input, out) && res;       // do get on other inputs before returning
-        }
-
-        template<typename InputTuple, typename OutputTuple>
-        static inline bool get_items(InputTuple &my_input, OutputTuple &out) {
-            return get_my_item(my_input, out);
-        }
-
-        template<typename InputTuple>
-        static inline void reset_my_port(InputTuple &my_input) {
-            join_helper<N-1>::reset_my_port(my_input);
-            std::get<N-1>(my_input).reset_port();
-        }
-
-        template<typename InputTuple>
-        static inline void reset_ports(InputTuple& my_input) {
-            reset_my_port(my_input);
-        }
-
-        template<typename InputTuple, typename TagFuncTuple>
-        static inline void set_tag_func(InputTuple &my_input, TagFuncTuple &my_tag_funcs) {
-            std::get<N-1>(my_input).set_my_original_tag_func(std::get<N-1>(my_tag_funcs));
-            std::get<N-1>(my_input).set_my_tag_func(std::get<N-1>(my_input).my_original_func()->clone());
-            std::get<N-1>(my_tag_funcs) = NULL;
-            join_helper<N-1>::set_tag_func(my_input, my_tag_funcs);
-        }
-
-        template< typename TagFuncTuple1, typename TagFuncTuple2>
-        static inline void copy_tag_functors(TagFuncTuple1 &my_inputs, TagFuncTuple2 &other_inputs) {
-            if(std::get<N-1>(other_inputs).my_original_func()) {
-                std::get<N-1>(my_inputs).set_my_tag_func(std::get<N-1>(other_inputs).my_original_func()->clone());
-                std::get<N-1>(my_inputs).set_my_original_tag_func(std::get<N-1>(other_inputs).my_original_func()->clone());
-            }
-            join_helper<N-1>::copy_tag_functors(my_inputs, other_inputs);
-        }
-    };
-
-    template< >
-    struct join_helper<1> {
-
-        template< typename TupleType, typename PortType >
-        static inline void set_join_node_pointer(TupleType &my_input, PortType *port) {
-            std::get<0>( my_input ).set_join_node_pointer(port);
-        }
-
-        template< typename TupleType >
-        static inline void consume_reservations( TupleType &my_input ) {
-            std::get<0>( my_input ).consume();
-        }
-
-        template< typename TupleType >
-        static inline void release_my_reservation( TupleType &my_input ) {
-            std::get<0>( my_input ).release();
-        }
-
-        template<typename TupleType>
-        static inline void release_reservations( TupleType &my_input) {
-            release_my_reservation(my_input);
-        }
-
-        template< typename InputTuple, typename OutputTuple >
-        static inline bool reserve( InputTuple &my_input, OutputTuple &out) {
-            return std::get<0>( my_input ).reserve( std::get<0>( out ) );
-        }
-
-        template<typename InputTuple, typename OutputTuple>
-        static inline bool get_my_item( InputTuple &my_input, OutputTuple &out) {
-            return std::get<0>(my_input).get_item(std::get<0>(out));
-        }
-
-        template<typename InputTuple, typename OutputTuple>
-        static inline bool get_items(InputTuple &my_input, OutputTuple &out) {
-            return get_my_item(my_input, out);
-        }
-
-        template<typename InputTuple>
-        static inline void reset_my_port(InputTuple &my_input) {
-            std::get<0>(my_input).reset_port();
-        }
-
-        template<typename InputTuple>
-        static inline void reset_ports(InputTuple& my_input) {
-            reset_my_port(my_input);
-        }
-
-        template<typename InputTuple, typename TagFuncTuple>
-        static inline void set_tag_func(InputTuple &my_input, TagFuncTuple &my_tag_funcs) {
-            std::get<0>(my_input).set_my_original_tag_func(std::get<0>(my_tag_funcs));
-            std::get<0>(my_input).set_my_tag_func(std::get<0>(my_input).my_original_func()->clone());
-            std::get<0>(my_tag_funcs) = NULL;
-        }
-
-        template< typename TagFuncTuple1, typename TagFuncTuple2>
-        static inline void copy_tag_functors(TagFuncTuple1 &my_inputs, TagFuncTuple2 &other_inputs) {
-            if(std::get<0>(other_inputs).my_original_func()) {
-                std::get<0>(my_inputs).set_my_tag_func(std::get<0>(other_inputs).my_original_func()->clone());
-                std::get<0>(my_inputs).set_my_original_tag_func(std::get<0>(other_inputs).my_original_func()->clone());
-            }
-        }
-    };
-
-    //! The two-phase join port
-    template< typename T >
-    class reserving_port : public receiver<T> {
-    public:
-        typedef T input_type;
-        typedef sender<T> predecessor_type;
-    private:
-        // ----------- Aggregator ------------
-        enum op_type { reg_pred, rem_pred, res_item, rel_res, con_res };
-        enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        typedef reserving_port<T> my_class;
-
-        class reserving_port_operation : public aggregated_operation<reserving_port_operation> {
-        public:
-            char type;
-            union {
-                T *my_arg;
-                predecessor_type *my_pred;
-            };
-            reserving_port_operation(const T& e, op_type t) :
-                type(char(t)), my_arg(const_cast<T*>(&e)) {}
-            reserving_port_operation(const predecessor_type &s, op_type t) : type(char(t)), 
-                my_pred(const_cast<predecessor_type *>(&s)) {}
-            reserving_port_operation(op_type t) : type(char(t)) {}
-        };
-
-        typedef internal::aggregating_functor<my_class, reserving_port_operation> my_handler;
-        friend class internal::aggregating_functor<my_class, reserving_port_operation>;
-        aggregator<my_handler, reserving_port_operation> my_aggregator;
-
-        void handle_operations(reserving_port_operation* op_list) {
-            reserving_port_operation *current;
-            bool no_predecessors;
-            while(op_list) {
-                current = op_list;
-                op_list = op_list->next;
-                switch(current->type) {
-                case reg_pred:
-                    no_predecessors = my_predecessors.empty();
-                    my_predecessors.add(*(current->my_pred));
-                    if ( no_predecessors ) {
-                        my_join->decrement_port_count( ); // may try to forward
-                    }
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                case rem_pred:
-                    my_predecessors.remove(*(current->my_pred));
-                    if(my_predecessors.empty()) my_join->increment_port_count();
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                case res_item:
-                    if ( reserved ) {
-                        __TBB_store_with_release(current->status, FAILED);
-                    }
-                    else if ( my_predecessors.try_reserve( *(current->my_arg) ) ) {
-                        reserved = true;
-                        __TBB_store_with_release(current->status, SUCCEEDED);
-                    } else {
-                        if ( my_predecessors.empty() ) {
-                            my_join->increment_port_count();
-                        }
-                        __TBB_store_with_release(current->status, FAILED);
-                    }
-                    break;
-                case rel_res:
-                    reserved = false;
-                    my_predecessors.try_release( );
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                case con_res:
-                    reserved = false;
-                    my_predecessors.try_consume( );
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                }
-            }
-        }
-
-    public:
-
-        //! Constructor
-        reserving_port() : reserved(false) {
-            my_join = NULL;
-            my_predecessors.set_owner( this );
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        // copy constructor
-        reserving_port(const reserving_port& /* other */) : receiver<T>() {
-            reserved = false;
-            my_join = NULL;
-            my_predecessors.set_owner( this );
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        void set_join_node_pointer(forwarding_base *join) {
-            my_join = join;
-        }
-
-        // always rejects, so arc is reversed (and reserves can be done.)
-        bool try_put( const T & ) {
-            return false;
-        }
-
-        //! Add a predecessor
-        bool register_predecessor( sender<T> &src ) {
-            reserving_port_operation op_data(src, reg_pred);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        //! Remove a predecessor
-        bool remove_predecessor( sender<T> &src ) {
-            reserving_port_operation op_data(src, rem_pred);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        //! Reserve an item from the port
-        bool reserve( T &v ) {
-            reserving_port_operation op_data(v, res_item);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        //! Release the port
-        void release( ) {
-            reserving_port_operation op_data(rel_res);
-            my_aggregator.execute(&op_data);
-        }
-
-        //! Complete use of the port
-        void consume( ) {
-            reserving_port_operation op_data(con_res);
-            my_aggregator.execute(&op_data);
-        }
-
-    private:
-        forwarding_base *my_join;
-        reservable_predecessor_cache< T, null_mutex > my_predecessors;
-        bool reserved;
-    };
-
-    //! queueing join_port
-    template<typename T>
-    class queueing_port : public receiver<T>, public item_buffer<T> {
-    public:
-        typedef T input_type;
-        typedef sender<T> predecessor_type;
-        typedef queueing_port<T> my_node_type;
-
-    // ----------- Aggregator ------------
-    private:
-        enum op_type { try__put, get__item, res_port };
-        enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        typedef queueing_port<T> my_class;
-
-        class queueing_port_operation : public aggregated_operation<queueing_port_operation> {
-        public:
-            char type;
-            T my_val;
-            T *my_arg;
-            // constructor for value parameter
-            queueing_port_operation(const T& e, op_type t) :
-                // type(char(t)), my_val(const_cast<T>(e)) {}
-                type(char(t)), my_val(e) {}
-            // constructor for pointer parameter
-            queueing_port_operation(const T* p, op_type t) :
-                type(char(t)), my_arg(const_cast<T*>(p)) {}
-            // constructor with no parameter
-            queueing_port_operation(op_type t) : type(char(t)) {}
-        };
-
-        typedef internal::aggregating_functor<my_class, queueing_port_operation> my_handler;
-        friend class internal::aggregating_functor<my_class, queueing_port_operation>;
-        aggregator<my_handler, queueing_port_operation> my_aggregator;
-
-        void handle_operations(queueing_port_operation* op_list) {
-            queueing_port_operation *current;
-            bool was_empty;
-            while(op_list) {
-                current = op_list;
-                op_list = op_list->next;
-                switch(current->type) {
-                case try__put:
-                    was_empty = this->buffer_empty();
-                    this->push_back(current->my_val);
-                    if (was_empty) my_join->decrement_port_count();
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                case get__item:
-                    if(!this->buffer_empty()) {
-                        this->fetch_front(*(current->my_arg));
-                        __TBB_store_with_release(current->status, SUCCEEDED);
-                    }
-                    else {
-                        __TBB_store_with_release(current->status, FAILED);
-                    }
-                    break;
-                case res_port:
-                    __TBB_ASSERT(this->item_valid(this->my_head), "No item to reset");
-                    this->invalidate_front(); ++(this->my_head);
-                    if(this->item_valid(this->my_head)) {
-                        my_join->decrement_port_count();
-                    }
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                }
-            }
-        }
-    // ------------ End Aggregator ---------------
-    public:
-
-        //! Constructor
-        queueing_port() : item_buffer<T>() {
-            my_join = NULL;
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        //! copy constructor
-        queueing_port(const queueing_port& /* other */) : receiver<T>(), item_buffer<T>() {
-            my_join = NULL;
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        //! record parent for tallying available items
-        void set_join_node_pointer(forwarding_base *join) {
-            my_join = join;
-        }
-
-        /*override*/bool try_put(const T &v) {
-            queueing_port_operation op_data(v, try__put);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-
-        bool get_item( T &v ) {
-            queueing_port_operation op_data(&v, get__item);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        // reset_port is called when item is accepted by successor, but
-        // is initiated by join_node.
-        void reset_port() {
-            queueing_port_operation op_data(res_port);
-            my_aggregator.execute(&op_data);
-            return;
-        }
-
-    private:
-        forwarding_base *my_join;
-    };
-
-#include "_flow_graph_tagged_buffer_impl.h"
-
-    template< typename T >
-    class tag_matching_port : public receiver<T>, public tagged_buffer< tag_value, T, NO_TAG > {
-    public:
-        typedef T input_type;
-        typedef sender<T> predecessor_type;
-        typedef tag_matching_port<T> my_node_type;  // for forwarding, if needed
-        typedef function_body<input_type, tag_value> my_tag_func_type;
-    private:
-// ----------- Aggregator ------------
-    private:
-        enum op_type { try__put, get__item, res_port };
-        enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        typedef tag_matching_port<T> my_class;
-
-        class tag_matching_port_operation : public aggregated_operation<tag_matching_port_operation> {
-        public:
-            char type;
-            T my_val;
-            T *my_arg;
-            tag_value my_tag_value;
-            // constructor for value parameter
-            tag_matching_port_operation(const T& e, op_type t) :
-                // type(char(t)), my_val(const_cast<T>(e)) {}
-                type(char(t)), my_val(e) {}
-            // constructor for pointer parameter
-            tag_matching_port_operation(const T* p, op_type t) :
-                type(char(t)), my_arg(const_cast<T*>(p)) {}
-            // constructor with no parameter
-            tag_matching_port_operation(op_type t) : type(char(t)) {}
-        };
-
-        typedef internal::aggregating_functor<my_class, tag_matching_port_operation> my_handler;
-        friend class internal::aggregating_functor<my_class, tag_matching_port_operation>;
-        aggregator<my_handler, tag_matching_port_operation> my_aggregator;
-
-        void handle_operations(tag_matching_port_operation* op_list) {
-            tag_matching_port_operation *current;
-            while(op_list) {
-                current = op_list;
-                op_list = op_list->next;
-                switch(current->type) {
-                case try__put: {
-                        bool was_inserted = this->tagged_insert(current->my_tag_value, current->my_val);
-                        if(!was_inserted) __TBB_ASSERT( false, "multiple insertions of same tag");
-                        __TBB_store_with_release(current->status, SUCCEEDED);
-                    }
-                    break;
-                case get__item:
-                    // use current_tag from FE for item
-                    if(!this->tagged_find(my_join->current_tag, *(current->my_arg))) {
-                        __TBB_ASSERT(false, "Failed to find item corresponding to current_tag.");
-                    }
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                case res_port:
-                    // use current_tag from FE for item
-                    this->tagged_delete(my_join->current_tag);
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                }
-            }
-        }
-// ------------ End Aggregator ---------------
-    public:
-
-        tag_matching_port() : receiver<T>(), tagged_buffer<tag_value, T, NO_TAG>() {
-            my_join = NULL;
-            my_tag_func = NULL;
-            my_original_tag_func = NULL;
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        // copy constructor
-        tag_matching_port(const tag_matching_port& /*other*/) : receiver<T>(), tagged_buffer<tag_value,T, NO_TAG>() {
-            my_join = NULL;
-            // setting the tag methods is done in the copy-constructor for the front-end.
-            my_tag_func = NULL;
-            my_original_tag_func = NULL;
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        ~tag_matching_port() {
-            if (my_tag_func) delete my_tag_func;
-            if (my_original_tag_func) delete my_original_tag_func;
-        }
-
-        void set_join_node_pointer(forwarding_base *join) {
-            my_join = join;
-        }
-
-        void set_my_original_tag_func(my_tag_func_type *f) {
-            my_original_tag_func = f;
-        }
-
-        void set_my_tag_func(my_tag_func_type *f) {
-            my_tag_func = f;
-        }
-
-        /*override*/bool try_put(const T& v) {
-            tag_matching_port_operation op_data(v, try__put);
-            op_data.my_tag_value = (*my_tag_func)(v);
-            my_aggregator.execute(&op_data);
-            if(op_data.status == SUCCEEDED) {
-                // the assertion in the aggregator above will ensure we do not call with the same
-                // tag twice.  We have to exit the aggregator to keep lock-ups from happening;
-                // the increment of the tag hash table in the FE is under a separate aggregator,
-                // so that is serialized.
-                // is a race possible?  I do not believe so; the increment may cause a build of
-                // an output tuple, but its component is already in the hash table for the port.
-                my_join->increment_tag_count(op_data.my_tag_value);  // may spawn
-
-            }
-            return op_data.status == SUCCEEDED;
-        }
-
-
-        bool get_item( T &v ) {
-            tag_matching_port_operation op_data(&v, get__item);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        // reset_port is called when item is accepted by successor, but
-        // is initiated by join_node.
-        void reset_port() {
-            tag_matching_port_operation op_data(res_port);
-            my_aggregator.execute(&op_data);
-            return;
-        }
-
-        my_tag_func_type *my_func() { return my_tag_func; }
-        my_tag_func_type *my_original_func() { return my_original_tag_func; }
-
-    private:
-        // need map of tags to values
-        forwarding_base *my_join;
-        my_tag_func_type *my_tag_func;
-        my_tag_func_type *my_original_tag_func;
-    };  // tag_matching_port
-
-    using namespace graph_policy_namespace;
-
-    template<graph_buffer_policy JP, typename InputTuple, typename OutputTuple>
-    class join_node_base;
-
-    //! join_node_FE : implements input port policy
-    template<graph_buffer_policy JP, typename InputTuple, typename OutputTuple>
-    class join_node_FE;
-
-    template<typename InputTuple, typename OutputTuple>
-    class join_node_FE<reserving, InputTuple, OutputTuple> : public forwarding_base {
-    public:
-        static const int N = std::tuple_size<OutputTuple>::value;
-        typedef OutputTuple output_type;
-        typedef InputTuple input_type;
-        typedef join_node_base<reserving, InputTuple, OutputTuple> my_node_type; // for forwarding
-
-        join_node_FE(graph &g) : forwarding_base(g.root_task()), my_node(NULL) {
-            ports_with_no_inputs = N;
-            join_helper<N>::set_join_node_pointer(my_inputs, this);
-        }
-
-        join_node_FE(const join_node_FE& other) : forwarding_base(other.my_root_task), my_node(NULL) {
-            ports_with_no_inputs = N;
-            join_helper<N>::set_join_node_pointer(my_inputs, this);
-        }
-
-        void set_my_node(my_node_type *new_my_node) { my_node = new_my_node; }
-
-       void increment_port_count() {
-            ++ports_with_no_inputs;
-        }
-
-        // if all input_ports have predecessors, spawn forward to try and consume tuples
-        void decrement_port_count() {
-            if(ports_with_no_inputs.fetch_and_decrement() == 1) {
-                task::enqueue( * new ( task::allocate_additional_child_of( *(this->my_root_task) ) )
-                    forward_task<my_node_type>(*my_node) );
-            }
-        }
-
-        input_type &inputs() { return my_inputs; }
-    protected:
-        // all methods on input ports should be called under mutual exclusion from join_node_base.
-
-        bool tuple_build_may_succeed() {
-            return !ports_with_no_inputs;
-        }
-
-        bool try_to_make_tuple(output_type &out) {
-            if(ports_with_no_inputs) return false;
-            return join_helper<N>::reserve(my_inputs, out);
-        }
-
-        void tuple_accepted() {
-            join_helper<N>::consume_reservations(my_inputs);
-        }
-        void tuple_rejected() {
-            join_helper<N>::release_reservations(my_inputs);
-        }
-
-        input_type my_inputs;
-        my_node_type *my_node;
-        atomic<size_t> ports_with_no_inputs;
-    };
-
-    template<typename InputTuple, typename OutputTuple>
-    class join_node_FE<queueing, InputTuple, OutputTuple> : public forwarding_base {
-    public:
-        static const int N = std::tuple_size<OutputTuple>::value;
-        typedef OutputTuple output_type;
-        typedef InputTuple input_type;
-        typedef join_node_base<queueing, InputTuple, OutputTuple> my_node_type; // for forwarding
-
-        join_node_FE(graph &g) : forwarding_base(g.root_task()), my_node(NULL) {
-            ports_with_no_items = N;
-            join_helper<N>::set_join_node_pointer(my_inputs, this);
-        }
-
-        join_node_FE(const join_node_FE& other) : forwarding_base(other.my_root_task), my_node(NULL) {
-            ports_with_no_items = N;
-            join_helper<N>::set_join_node_pointer(my_inputs, this);
-        }
-
-        // needed for forwarding
-        void set_my_node(my_node_type *new_my_node) { my_node = new_my_node; }
-
-        void reset_port_count() {
-            ports_with_no_items = N;
-        }
-
-        // if all input_ports have items, spawn forward to try and consume tuples
-        void decrement_port_count() {
-            if(ports_with_no_items.fetch_and_decrement() == 1) {
-                task::enqueue( * new ( task::allocate_additional_child_of( *(this->my_root_task) ) )
-                    forward_task<my_node_type>(*my_node) );
-            }
-        }
-
-        void increment_port_count() { __TBB_ASSERT(false, NULL); }  // should never be called
-
-        input_type &inputs() { return my_inputs; }
-    protected:
-        // all methods on input ports should be called under mutual exclusion from join_node_base.
-
-        bool tuple_build_may_succeed() {
-            return !ports_with_no_items;
-        }
-
-        bool try_to_make_tuple(output_type &out) {
-            if(ports_with_no_items) return false;
-            return join_helper<N>::get_items(my_inputs, out);
-        }
-
-        void tuple_accepted() {
-            reset_port_count();
-            join_helper<N>::reset_ports(my_inputs);
-        }
-        void tuple_rejected() {
-            // nothing to do.
-        }
-
-        input_type my_inputs;
-        my_node_type *my_node;
-        atomic<size_t> ports_with_no_items;
-    };
-
-    // tag_matching join input port.
-    template<typename InputTuple, typename OutputTuple>
-    class join_node_FE<tag_matching, InputTuple, OutputTuple> : public forwarding_base,
-             public tagged_buffer<tag_value, size_t, NO_TAG>, public item_buffer<OutputTuple> {
-    public:
-        static const int N = std::tuple_size<OutputTuple>::value;
-        typedef OutputTuple output_type;
-        typedef InputTuple input_type;
-        typedef tagged_buffer<tag_value, size_t, NO_TAG> my_tag_buffer;
-        typedef item_buffer<output_type> output_buffer_type;
-        typedef join_node_base<tag_matching, InputTuple, OutputTuple> my_node_type; // for forwarding
-
-// ----------- Aggregator ------------
-        // the aggregator is only needed to serialize the access to the hash table.
-        // and the output_buffer_type base class
-    private:
-        enum op_type { res_count, inc_count, may_succeed, try_make };
-        enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        typedef join_node_FE<tag_matching, InputTuple, OutputTuple> my_class;
-
-        class tag_matching_FE_operation : public aggregated_operation<tag_matching_FE_operation> {
-        public:
-            char type;
-            union {
-                tag_value my_val;
-                output_type* my_output;
-            };
-            // constructor for value parameter
-            tag_matching_FE_operation(const tag_value& e, op_type t) :
-                // type(char(t)), my_val(const_cast<T>(e)) {}
-                type(char(t)), my_val(e) {}
-            tag_matching_FE_operation(output_type *p, op_type t) :
-                type(char(t)), my_output(p) {}
-            // constructor with no parameter
-            tag_matching_FE_operation(op_type t) : type(char(t)) {}
-        };
-
-        typedef internal::aggregating_functor<my_class, tag_matching_FE_operation> my_handler;
-        friend class internal::aggregating_functor<my_class, tag_matching_FE_operation>;
-        aggregator<my_handler, tag_matching_FE_operation> my_aggregator;
-
-        // called from aggregator, so serialized
-        void fill_output_buffer(bool should_enqueue) {
-            output_type l_out;
-            bool do_fwd = should_enqueue && this->buffer_empty();
-            while(find_value_tag(this->current_tag,N)) {
-                this->tagged_delete(this->current_tag);
-                if(join_helper<N>::get_items(my_inputs, l_out)) {  //  <== call back
-                    this->push_back(l_out);
-                    if(do_fwd) {
-                        task::enqueue( * new ( task::allocate_additional_child_of( *(this->my_root_task) ) )
-                        forward_task<my_node_type>(*my_node) );
-                        do_fwd = false;
-                    }
-                    // retire the input values
-                    join_helper<N>::reset_ports(my_inputs);  //  <== call back
-                    this->current_tag = NO_TAG;    
-                }
-                else {
-                    __TBB_ASSERT(false, "should have had something to push");
-                }
-            }
-        }
-
-        void handle_operations(tag_matching_FE_operation* op_list) {
-            tag_matching_FE_operation *current;
-            while(op_list) {
-                current = op_list;
-                op_list = op_list->next;
-                switch(current->type) {
-                case res_count:  // called from BE
-                    {
-                        output_type l_out;
-                        this->pop_front(l_out);  // don't care about returned value.
-                        // buffer as many tuples as we can make
-                        fill_output_buffer(true);
-                        __TBB_store_with_release(current->status, SUCCEEDED);
-                    }
-                    break;
-                case inc_count: {  // called from input ports
-                        size_t *p = 0;
-                        tag_value t = current->my_val;
-                        if(!(this->tagged_find_ref(t,p))) {
-                            this->tagged_insert(t, 0);
-                            if(!(this->tagged_find_ref(t,p))) {
-                                __TBB_ASSERT(false, NULL);
-                            }
-                        }
-                        if(++(*p) == size_t(N)) {
-                            task::enqueue( * new ( task::allocate_additional_child_of( *(this->my_root_task) ) )
-                            forward_task<my_node_type>(*my_node) );
-                        }
-                    }
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                case may_succeed:  // called from BE
-                    fill_output_buffer(false);
-                    __TBB_store_with_release(current->status, this->buffer_empty() ? FAILED : SUCCEEDED);
-                    break;
-                case try_make:  // called from BE
-                    if(this->buffer_empty()) {
-                        __TBB_store_with_release(current->status, FAILED);
-                    }
-                    else {
-                        this->fetch_front(*(current->my_output));
-                        __TBB_store_with_release(current->status, SUCCEEDED);
-                    }
-                    break;
-                }
-            }
-        }
-// ------------ End Aggregator ---------------
-
-    public:
-        template<typename FunctionTuple>
-        join_node_FE(graph &g, FunctionTuple tag_funcs) : forwarding_base(g.root_task()), my_node(NULL) {
-            join_helper<N>::set_join_node_pointer(my_inputs, this);
-            join_helper<N>::set_tag_func(my_inputs, tag_funcs);
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        join_node_FE(const join_node_FE& other) : forwarding_base(other.my_root_task), my_tag_buffer(),
-        output_buffer_type() {
-            my_node = NULL;
-            join_helper<N>::set_join_node_pointer(my_inputs, this);
-            join_helper<N>::copy_tag_functors(my_inputs, const_cast<input_type &>(other.my_inputs));
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        // needed for forwarding
-        void set_my_node(my_node_type *new_my_node) { my_node = new_my_node; }
-
-        void reset_port_count() {  // called from BE
-            tag_matching_FE_operation op_data(res_count);
-            my_aggregator.execute(&op_data);
-            return;
-        }
-
-        // if all input_ports have items, spawn forward to try and consume tuples
-        void increment_tag_count(tag_value t) {  // called from input_ports
-            tag_matching_FE_operation op_data(t, inc_count);
-            my_aggregator.execute(&op_data);
-            return;
-        }
-
-        void decrement_port_count() { __TBB_ASSERT(false, NULL); }
-
-        void increment_port_count() { __TBB_ASSERT(false, NULL); }  // should never be called
-
-        input_type &inputs() { return my_inputs; }
-    protected:
-        // all methods on input ports should be called under mutual exclusion from join_node_base.
-
-        bool tuple_build_may_succeed() {  // called from back-end
-            tag_matching_FE_operation op_data(may_succeed);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        // cannot lock while calling back to input_ports.  current_tag will only be set
-        // and reset under the aggregator, so it will remain consistent.
-        bool try_to_make_tuple(output_type &out) {
-            tag_matching_FE_operation op_data(&out,try_make);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        void tuple_accepted() {
-            reset_port_count();  // reset current_tag after ports reset.
-        }
-
-        void tuple_rejected() {
-            // nothing to do.
-        }
-
-        input_type my_inputs;  // input ports
-        my_node_type *my_node;
-    }; // join_node_FE<tag_matching, InputTuple, OutputTuple>
-
-    //! join_node_base
-    template<graph_buffer_policy JP, typename InputTuple, typename OutputTuple>
-    class join_node_base : public graph_node, public join_node_FE<JP, InputTuple, OutputTuple>,
-                           public sender<OutputTuple> {
-    public:
-        typedef OutputTuple output_type;
-
-        typedef receiver<output_type> successor_type;
-        typedef join_node_FE<JP, InputTuple, OutputTuple> input_ports_type;
-        using input_ports_type::tuple_build_may_succeed;
-        using input_ports_type::try_to_make_tuple;
-        using input_ports_type::tuple_accepted;
-        using input_ports_type::tuple_rejected;
-
-    private:
-        // ----------- Aggregator ------------
-        enum op_type { reg_succ, rem_succ, try__get, do_fwrd };
-        enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        typedef join_node_base<JP,InputTuple,OutputTuple> my_class;
-
-        class join_node_base_operation : public aggregated_operation<join_node_base_operation> {
-        public:
-            char type;
-            union {
-                output_type *my_arg;
-                successor_type *my_succ;
-            };
-            join_node_base_operation(const output_type& e, op_type t) :
-                type(char(t)), my_arg(const_cast<output_type*>(&e)) {}
-            join_node_base_operation(const successor_type &s, op_type t) : type(char(t)), 
-                my_succ(const_cast<successor_type *>(&s)) {}
-            join_node_base_operation(op_type t) : type(char(t)) {}
-        };
-
-        typedef internal::aggregating_functor<my_class, join_node_base_operation> my_handler;
-        friend class internal::aggregating_functor<my_class, join_node_base_operation>;
-        bool forwarder_busy;
-        aggregator<my_handler, join_node_base_operation> my_aggregator;
-
-        void handle_operations(join_node_base_operation* op_list) {
-            join_node_base_operation *current;
-            while(op_list) {
-                current = op_list;
-                op_list = op_list->next;
-                switch(current->type) {
-                case reg_succ:
-                    my_successors.register_successor(*(current->my_succ));
-                    if(tuple_build_may_succeed() && !forwarder_busy) {
-                        task::enqueue( * new ( task::allocate_additional_child_of(*(this->my_root_task)) )
-                                forward_task<join_node_base<JP,InputTuple,OutputTuple> >(*this));
-                        forwarder_busy = true;
-                    }
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                case rem_succ:
-                    my_successors.remove_successor(*(current->my_succ));
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-                case try__get:
-                    if(tuple_build_may_succeed()) {
-                        if(try_to_make_tuple(*(current->my_arg))) {
-                            tuple_accepted();
-                            __TBB_store_with_release(current->status, SUCCEEDED);
-                        }
-                        else __TBB_store_with_release(current->status, FAILED);
-                    }
-                    else __TBB_store_with_release(current->status, FAILED);
-                    break;
-                case do_fwrd: {
-                        bool build_succeeded;
-                        output_type out;
-                        if(tuple_build_may_succeed()) {
-                            do {
-                                build_succeeded = try_to_make_tuple(out);
-                                if(build_succeeded) {
-                                    if(my_successors.try_put(out)) {
-                                        tuple_accepted();
-                                    }
-                                    else {
-                                        tuple_rejected();
-                                        build_succeeded = false;
-                                    }
-                                }
-                            } while(build_succeeded);
-                        }
-                        __TBB_store_with_release(current->status, SUCCEEDED);
-                        forwarder_busy = false;
-                    }
-                    break;
-                }
-            }
-        }
-        // ---------- end aggregator -----------
-    public:
-        join_node_base(graph &g) : input_ports_type(g), forwarder_busy(false) {
-            my_successors.set_owner(this);
-            input_ports_type::set_my_node(this);
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        join_node_base(const join_node_base& other) :
-            graph_node(), input_ports_type(other),
-            sender<OutputTuple>(), forwarder_busy(false), my_successors() {
-            my_successors.set_owner(this);
-            input_ports_type::set_my_node(this);
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        template<typename FunctionTuple>
-        join_node_base(graph &g, FunctionTuple f) : input_ports_type(g, f), forwarder_busy(false) {
-            my_successors.set_owner(this);
-            input_ports_type::set_my_node(this);
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        bool register_successor(successor_type &r) {
-            join_node_base_operation op_data(r, reg_succ);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        bool remove_successor( successor_type &r) {
-            join_node_base_operation op_data(r, rem_succ);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        bool try_get( output_type &v) {
-            join_node_base_operation op_data(v, try__get);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-    private:
-        broadcast_cache<output_type, null_rw_mutex> my_successors;
-
-        friend class forward_task< join_node_base<JP, InputTuple, OutputTuple> >;
-
-        void forward() {
-            join_node_base_operation op_data(do_fwrd);
-            my_aggregator.execute(&op_data);
-        }
-    };
-
-    //! unfolded_join_node : passes input_ports_tuple_type to join_node_base.  We build the input port type
-    //  using tuple_element.  The class PT is the port type (reserving_port, queueing_port, tag_matching_port)
-    //  and should match the graph_buffer_policy.
-    template<int N, template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node;
-
-    template<template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node<2,PT,OutputTuple,JP> : public internal::join_node_base<JP,
-        std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type> >,
-        OutputTuple
-                  >
-                  {
-    public:
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<JP, input_ports_tuple_type, output_type > base_type;
-    public:
-        unfolded_join_node(graph &g) : base_type(g) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node<3,PT,OutputTuple,JP> : public internal::join_node_base<JP,
-        std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>,
-                PT<typename std::tuple_element<1,OutputTuple>::type>,
-                PT<typename std::tuple_element<2,OutputTuple>::type> >,
-        OutputTuple
-                    >
-                    {
-    public:
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type>, 
-                PT<typename std::tuple_element<2,OutputTuple>::type> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<JP, input_ports_tuple_type, output_type > base_type;
-    public:
-        unfolded_join_node(graph &g) : base_type(g) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node<4,PT,OutputTuple,JP> : public internal::join_node_base<JP,
-        std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>,
-                PT<typename std::tuple_element<1,OutputTuple>::type>,
-                PT<typename std::tuple_element<2,OutputTuple>::type>,
-                PT<typename std::tuple_element<3,OutputTuple>::type> >,
-        OutputTuple
-                    > {
-    public:
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type>, 
-                PT<typename std::tuple_element<2,OutputTuple>::type>, 
-                PT<typename std::tuple_element<3,OutputTuple>::type> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<JP, input_ports_tuple_type, output_type > base_type;
-    public:
-        unfolded_join_node(graph &g) : base_type(g) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node<5,PT,OutputTuple,JP> : public internal::join_node_base<JP,
-        std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>,
-                PT<typename std::tuple_element<1,OutputTuple>::type>,
-                PT<typename std::tuple_element<2,OutputTuple>::type>,
-                PT<typename std::tuple_element<3,OutputTuple>::type>,
-                PT<typename std::tuple_element<4,OutputTuple>::type> >,
-        OutputTuple
-                > {
-    public:
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type>, 
-                PT<typename std::tuple_element<2,OutputTuple>::type>, 
-                PT<typename std::tuple_element<3,OutputTuple>::type>, 
-                PT<typename std::tuple_element<4,OutputTuple>::type> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<JP, input_ports_tuple_type, output_type > base_type;
-    public:
-        unfolded_join_node(graph &g) : base_type(g) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node<6,PT,OutputTuple,JP> : public internal::join_node_base<JP,
-        std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>,
-                PT<typename std::tuple_element<1,OutputTuple>::type>,
-                PT<typename std::tuple_element<2,OutputTuple>::type>,
-                PT<typename std::tuple_element<3,OutputTuple>::type>,
-                PT<typename std::tuple_element<4,OutputTuple>::type>,
-                PT<typename std::tuple_element<5,OutputTuple>::type> >,
-        OutputTuple
-                    > {
-    public:
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type>, 
-                PT<typename std::tuple_element<2,OutputTuple>::type>, 
-                PT<typename std::tuple_element<3,OutputTuple>::type>, 
-                PT<typename std::tuple_element<4,OutputTuple>::type>, 
-                PT<typename std::tuple_element<5,OutputTuple>::type> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<JP, input_ports_tuple_type, output_type > base_type;
-    public:
-        unfolded_join_node(graph &g) : base_type(g) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node<7,PT,OutputTuple,JP> : public internal::join_node_base<JP,
-        std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>,
-                PT<typename std::tuple_element<1,OutputTuple>::type>,
-                PT<typename std::tuple_element<2,OutputTuple>::type>,
-                PT<typename std::tuple_element<3,OutputTuple>::type>,
-                PT<typename std::tuple_element<4,OutputTuple>::type>,
-                PT<typename std::tuple_element<5,OutputTuple>::type>,
-                PT<typename std::tuple_element<6,OutputTuple>::type> >,
-        OutputTuple
-                > {
-    public:
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type>, 
-                PT<typename std::tuple_element<2,OutputTuple>::type>, 
-                PT<typename std::tuple_element<3,OutputTuple>::type>, 
-                PT<typename std::tuple_element<4,OutputTuple>::type>, 
-                PT<typename std::tuple_element<5,OutputTuple>::type>, 
-                PT<typename std::tuple_element<6,OutputTuple>::type> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<JP, input_ports_tuple_type, output_type > base_type;
-    public:
-        unfolded_join_node(graph &g) : base_type(g) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node<8,PT,OutputTuple,JP> : public internal::join_node_base<JP,
-        std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>,
-                PT<typename std::tuple_element<1,OutputTuple>::type>,
-                PT<typename std::tuple_element<2,OutputTuple>::type>,
-                PT<typename std::tuple_element<3,OutputTuple>::type>,
-                PT<typename std::tuple_element<4,OutputTuple>::type>,
-                PT<typename std::tuple_element<5,OutputTuple>::type>,
-                PT<typename std::tuple_element<6,OutputTuple>::type>,
-                PT<typename std::tuple_element<7,OutputTuple>::type> >,
-        OutputTuple
-                > {
-    public:
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type>, 
-                PT<typename std::tuple_element<2,OutputTuple>::type>, 
-                PT<typename std::tuple_element<3,OutputTuple>::type>, 
-                PT<typename std::tuple_element<4,OutputTuple>::type>, 
-                PT<typename std::tuple_element<5,OutputTuple>::type>, 
-                PT<typename std::tuple_element<6,OutputTuple>::type>, 
-                PT<typename std::tuple_element<7,OutputTuple>::type> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<JP, input_ports_tuple_type, output_type > base_type;
-    public:
-        unfolded_join_node(graph &g) : base_type(g) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node<9,PT,OutputTuple,JP> : public internal::join_node_base<JP,
-        std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>,
-                PT<typename std::tuple_element<1,OutputTuple>::type>,
-                PT<typename std::tuple_element<2,OutputTuple>::type>,
-                PT<typename std::tuple_element<3,OutputTuple>::type>,
-                PT<typename std::tuple_element<4,OutputTuple>::type>,
-                PT<typename std::tuple_element<5,OutputTuple>::type>,
-                PT<typename std::tuple_element<6,OutputTuple>::type>,
-                PT<typename std::tuple_element<7,OutputTuple>::type>,
-                PT<typename std::tuple_element<8,OutputTuple>::type> >,
-        OutputTuple
-                > {
-    public:
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type>, 
-                PT<typename std::tuple_element<2,OutputTuple>::type>, 
-                PT<typename std::tuple_element<3,OutputTuple>::type>, 
-                PT<typename std::tuple_element<4,OutputTuple>::type>, 
-                PT<typename std::tuple_element<5,OutputTuple>::type>, 
-                PT<typename std::tuple_element<6,OutputTuple>::type>, 
-                PT<typename std::tuple_element<7,OutputTuple>::type>, 
-                PT<typename std::tuple_element<8,OutputTuple>::type> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<JP, input_ports_tuple_type, output_type > base_type;
-    public:
-        unfolded_join_node(graph &g) : base_type(g) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<template<class> class PT, typename OutputTuple, graph_buffer_policy JP>
-    class unfolded_join_node<10,PT,OutputTuple,JP> : public internal::join_node_base<JP,
-        std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>,
-                PT<typename std::tuple_element<1,OutputTuple>::type>,
-                PT<typename std::tuple_element<2,OutputTuple>::type>,
-                PT<typename std::tuple_element<3,OutputTuple>::type>,
-                PT<typename std::tuple_element<4,OutputTuple>::type>,
-                PT<typename std::tuple_element<5,OutputTuple>::type>,
-                PT<typename std::tuple_element<6,OutputTuple>::type>,
-                PT<typename std::tuple_element<7,OutputTuple>::type>,
-                PT<typename std::tuple_element<8,OutputTuple>::type>,
-                PT<typename std::tuple_element<9,OutputTuple>::type> >,
-        OutputTuple
-                > {
-    public:
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,OutputTuple>::type>, 
-                PT<typename std::tuple_element<1,OutputTuple>::type>, 
-                PT<typename std::tuple_element<2,OutputTuple>::type>, 
-                PT<typename std::tuple_element<3,OutputTuple>::type>, 
-                PT<typename std::tuple_element<4,OutputTuple>::type>, 
-                PT<typename std::tuple_element<5,OutputTuple>::type>, 
-                PT<typename std::tuple_element<6,OutputTuple>::type>, 
-                PT<typename std::tuple_element<7,OutputTuple>::type>, 
-                PT<typename std::tuple_element<8,OutputTuple>::type>, 
-                PT<typename std::tuple_element<9,OutputTuple>::type> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<JP, input_ports_tuple_type, output_type > base_type;
-    public:
-        unfolded_join_node(graph &g) : base_type(g) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    // tag_matching unfolded_join_node.  This must be a separate specialization because the constructors
-    // differ.
-
-    template<typename OutputTuple>
-    class unfolded_join_node<2,tag_matching_port,OutputTuple,tag_matching> : public internal::join_node_base<tag_matching,
-        std::tuple<
-                tag_matching_port<typename std::tuple_element<0,OutputTuple>::type>, 
-                tag_matching_port<typename std::tuple_element<1,OutputTuple>::type> >,
-        OutputTuple
-                  >
-                  {
-        typedef typename std::tuple_element<0, OutputTuple>::type T0;
-        typedef typename std::tuple_element<1, OutputTuple>::type T1;
-    public:
-        typedef typename std::tuple< tag_matching_port<T0>, tag_matching_port<T1> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<tag_matching, input_ports_tuple_type, output_type > base_type;
-        typedef typename internal::function_body<T0, tag_value> *f0_p;
-        typedef typename internal::function_body<T1, tag_value> *f1_p;
-        typedef typename std::tuple< f0_p, f1_p > func_initializer_type;
-    public:
-        template<typename B0, typename B1>
-        unfolded_join_node(graph &g, B0 b0, B1 b1) : base_type(g,
-                func_initializer_type(
-                    new internal::function_body_leaf<T0, tag_value, B0>(b0),
-                    new internal::function_body_leaf<T1, tag_value, B1>(b1)
-                    ) ) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<typename OutputTuple>
-    class unfolded_join_node<3,tag_matching_port,OutputTuple,tag_matching> : public internal::join_node_base<tag_matching,
-        std::tuple<
-                tag_matching_port<typename std::tuple_element<0,OutputTuple>::type>, 
-                tag_matching_port<typename std::tuple_element<1,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<2,OutputTuple>::type> >,
-        OutputTuple
-                  >
-                  {
-        typedef typename std::tuple_element<0, OutputTuple>::type T0;
-        typedef typename std::tuple_element<1, OutputTuple>::type T1;
-        typedef typename std::tuple_element<2, OutputTuple>::type T2;
-    public:
-        typedef typename std::tuple< tag_matching_port<T0>, tag_matching_port<T1>, tag_matching_port<T2>
-            > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<tag_matching, input_ports_tuple_type, output_type > base_type;
-        typedef typename internal::function_body<T0, tag_value> *f0_p;
-        typedef typename internal::function_body<T1, tag_value> *f1_p;
-        typedef typename internal::function_body<T2, tag_value> *f2_p;
-        typedef typename std::tuple< f0_p, f1_p, f2_p > func_initializer_type;
-    public:
-        template<typename B0, typename B1, typename B2>
-        unfolded_join_node(graph &g, B0 b0, B1 b1, B2 b2) : base_type(g,
-                func_initializer_type(
-                    new internal::function_body_leaf<T0, tag_value, B0>(b0),
-                    new internal::function_body_leaf<T1, tag_value, B1>(b1),
-                    new internal::function_body_leaf<T2, tag_value, B2>(b2)
-                    ) ) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<typename OutputTuple>
-    class unfolded_join_node<4,tag_matching_port,OutputTuple,tag_matching> : public internal::join_node_base<tag_matching,
-        std::tuple<
-                tag_matching_port<typename std::tuple_element<0,OutputTuple>::type>, 
-                tag_matching_port<typename std::tuple_element<1,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<2,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<3,OutputTuple>::type>
-            >, OutputTuple >
-                  {
-        typedef typename std::tuple_element<0, OutputTuple>::type T0;
-        typedef typename std::tuple_element<1, OutputTuple>::type T1;
-        typedef typename std::tuple_element<2, OutputTuple>::type T2;
-        typedef typename std::tuple_element<3, OutputTuple>::type T3;
-    public:
-        typedef typename std::tuple< tag_matching_port<T0>, tag_matching_port<T1>, tag_matching_port<T2>,
-                tag_matching_port<T3> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<tag_matching, input_ports_tuple_type, output_type > base_type;
-        typedef typename internal::function_body<T0, tag_value> *f0_p;
-        typedef typename internal::function_body<T1, tag_value> *f1_p;
-        typedef typename internal::function_body<T2, tag_value> *f2_p;
-        typedef typename internal::function_body<T3, tag_value> *f3_p;
-        typedef typename std::tuple< f0_p, f1_p, f2_p, f3_p > func_initializer_type;
-    public:
-        template<typename B0, typename B1, typename B2, typename B3>
-        unfolded_join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3) : base_type(g,
-                func_initializer_type(
-                    new internal::function_body_leaf<T0, tag_value, B0>(b0),
-                    new internal::function_body_leaf<T1, tag_value, B1>(b1),
-                    new internal::function_body_leaf<T2, tag_value, B2>(b2),
-                    new internal::function_body_leaf<T3, tag_value, B3>(b3)
-                    ) ) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<typename OutputTuple>
-    class unfolded_join_node<5,tag_matching_port,OutputTuple,tag_matching> : public internal::join_node_base<tag_matching,
-        std::tuple<
-                tag_matching_port<typename std::tuple_element<0,OutputTuple>::type>, 
-                tag_matching_port<typename std::tuple_element<1,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<2,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<3,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<4,OutputTuple>::type>
-            >, OutputTuple >
-                  {
-        typedef typename std::tuple_element<0, OutputTuple>::type T0;
-        typedef typename std::tuple_element<1, OutputTuple>::type T1;
-        typedef typename std::tuple_element<2, OutputTuple>::type T2;
-        typedef typename std::tuple_element<3, OutputTuple>::type T3;
-        typedef typename std::tuple_element<4, OutputTuple>::type T4;
-    public:
-        typedef typename std::tuple< tag_matching_port<T0>, tag_matching_port<T1>, tag_matching_port<T2>,
-                tag_matching_port<T3>, tag_matching_port<T4> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<tag_matching, input_ports_tuple_type, output_type > base_type;
-        typedef typename internal::function_body<T0, tag_value> *f0_p;
-        typedef typename internal::function_body<T1, tag_value> *f1_p;
-        typedef typename internal::function_body<T2, tag_value> *f2_p;
-        typedef typename internal::function_body<T3, tag_value> *f3_p;
-        typedef typename internal::function_body<T4, tag_value> *f4_p;
-        typedef typename std::tuple< f0_p, f1_p, f2_p, f3_p, f4_p > func_initializer_type;
-    public:
-        template<typename B0, typename B1, typename B2, typename B3, typename B4>
-        unfolded_join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4) : base_type(g,
-                func_initializer_type(
-                    new internal::function_body_leaf<T0, tag_value, B0>(b0),
-                    new internal::function_body_leaf<T1, tag_value, B1>(b1),
-                    new internal::function_body_leaf<T2, tag_value, B2>(b2),
-                    new internal::function_body_leaf<T3, tag_value, B3>(b3),
-                    new internal::function_body_leaf<T4, tag_value, B4>(b4)
-                    ) ) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<typename OutputTuple>
-    class unfolded_join_node<6,tag_matching_port,OutputTuple,tag_matching> : public internal::join_node_base<tag_matching,
-        std::tuple<
-                tag_matching_port<typename std::tuple_element<0,OutputTuple>::type>, 
-                tag_matching_port<typename std::tuple_element<1,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<2,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<3,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<4,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<5,OutputTuple>::type>
-            >, OutputTuple >
-                  {
-        typedef typename std::tuple_element<0, OutputTuple>::type T0;
-        typedef typename std::tuple_element<1, OutputTuple>::type T1;
-        typedef typename std::tuple_element<2, OutputTuple>::type T2;
-        typedef typename std::tuple_element<3, OutputTuple>::type T3;
-        typedef typename std::tuple_element<4, OutputTuple>::type T4;
-        typedef typename std::tuple_element<5, OutputTuple>::type T5;
-    public:
-        typedef typename std::tuple< tag_matching_port<T0>, tag_matching_port<T1>, tag_matching_port<T2>,
-                tag_matching_port<T3>, tag_matching_port<T4>, tag_matching_port<T5> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<tag_matching, input_ports_tuple_type, output_type > base_type;
-        typedef typename internal::function_body<T0, tag_value> *f0_p;
-        typedef typename internal::function_body<T1, tag_value> *f1_p;
-        typedef typename internal::function_body<T2, tag_value> *f2_p;
-        typedef typename internal::function_body<T3, tag_value> *f3_p;
-        typedef typename internal::function_body<T4, tag_value> *f4_p;
-        typedef typename internal::function_body<T5, tag_value> *f5_p;
-        typedef typename std::tuple< f0_p, f1_p, f2_p, f3_p, f4_p, f5_p > func_initializer_type;
-    public:
-        template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5>
-        unfolded_join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5) : base_type(g,
-                func_initializer_type(
-                    new internal::function_body_leaf<T0, tag_value, B0>(b0),
-                    new internal::function_body_leaf<T1, tag_value, B1>(b1),
-                    new internal::function_body_leaf<T2, tag_value, B2>(b2),
-                    new internal::function_body_leaf<T3, tag_value, B3>(b3),
-                    new internal::function_body_leaf<T4, tag_value, B4>(b4),
-                    new internal::function_body_leaf<T5, tag_value, B5>(b5)
-                    ) ) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<typename OutputTuple>
-    class unfolded_join_node<7,tag_matching_port,OutputTuple,tag_matching> : public internal::join_node_base<tag_matching,
-        std::tuple<
-                tag_matching_port<typename std::tuple_element<0,OutputTuple>::type>, 
-                tag_matching_port<typename std::tuple_element<1,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<2,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<3,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<4,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<5,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<6,OutputTuple>::type>
-            >, OutputTuple >
-                  {
-        typedef typename std::tuple_element<0, OutputTuple>::type T0;
-        typedef typename std::tuple_element<1, OutputTuple>::type T1;
-        typedef typename std::tuple_element<2, OutputTuple>::type T2;
-        typedef typename std::tuple_element<3, OutputTuple>::type T3;
-        typedef typename std::tuple_element<4, OutputTuple>::type T4;
-        typedef typename std::tuple_element<5, OutputTuple>::type T5;
-        typedef typename std::tuple_element<6, OutputTuple>::type T6;
-    public:
-        typedef typename std::tuple< tag_matching_port<T0>, tag_matching_port<T1>, tag_matching_port<T2>,
-                tag_matching_port<T3>, tag_matching_port<T4>, tag_matching_port<T5>, tag_matching_port<T6>
-            > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<tag_matching, input_ports_tuple_type, output_type > base_type;
-        typedef typename internal::function_body<T0, tag_value> *f0_p;
-        typedef typename internal::function_body<T1, tag_value> *f1_p;
-        typedef typename internal::function_body<T2, tag_value> *f2_p;
-        typedef typename internal::function_body<T3, tag_value> *f3_p;
-        typedef typename internal::function_body<T4, tag_value> *f4_p;
-        typedef typename internal::function_body<T5, tag_value> *f5_p;
-        typedef typename internal::function_body<T6, tag_value> *f6_p;
-        typedef typename std::tuple< f0_p, f1_p, f2_p, f3_p, f4_p, f5_p, f6_p > func_initializer_type;
-    public:
-        template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5, typename B6>
-        unfolded_join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5, B6 b6) : base_type(g,
-                func_initializer_type(
-                    new internal::function_body_leaf<T0, tag_value, B0>(b0),
-                    new internal::function_body_leaf<T1, tag_value, B1>(b1),
-                    new internal::function_body_leaf<T2, tag_value, B2>(b2),
-                    new internal::function_body_leaf<T3, tag_value, B3>(b3),
-                    new internal::function_body_leaf<T4, tag_value, B4>(b4),
-                    new internal::function_body_leaf<T5, tag_value, B5>(b5),
-                    new internal::function_body_leaf<T6, tag_value, B6>(b6)
-                    ) ) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<typename OutputTuple>
-    class unfolded_join_node<8,tag_matching_port,OutputTuple,tag_matching> : public internal::join_node_base<tag_matching,
-        std::tuple<
-                tag_matching_port<typename std::tuple_element<0,OutputTuple>::type>, 
-                tag_matching_port<typename std::tuple_element<1,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<2,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<3,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<4,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<5,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<6,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<7,OutputTuple>::type>
-            >, OutputTuple >
-                  {
-        typedef typename std::tuple_element<0, OutputTuple>::type T0;
-        typedef typename std::tuple_element<1, OutputTuple>::type T1;
-        typedef typename std::tuple_element<2, OutputTuple>::type T2;
-        typedef typename std::tuple_element<3, OutputTuple>::type T3;
-        typedef typename std::tuple_element<4, OutputTuple>::type T4;
-        typedef typename std::tuple_element<5, OutputTuple>::type T5;
-        typedef typename std::tuple_element<6, OutputTuple>::type T6;
-        typedef typename std::tuple_element<7, OutputTuple>::type T7;
-    public:
-        typedef typename std::tuple< tag_matching_port<T0>, tag_matching_port<T1>, tag_matching_port<T2>,
-                tag_matching_port<T3>, tag_matching_port<T4>, tag_matching_port<T5>, tag_matching_port<T6>,
-                tag_matching_port<T7> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<tag_matching, input_ports_tuple_type, output_type > base_type;
-        typedef typename internal::function_body<T0, tag_value> *f0_p;
-        typedef typename internal::function_body<T1, tag_value> *f1_p;
-        typedef typename internal::function_body<T2, tag_value> *f2_p;
-        typedef typename internal::function_body<T3, tag_value> *f3_p;
-        typedef typename internal::function_body<T4, tag_value> *f4_p;
-        typedef typename internal::function_body<T5, tag_value> *f5_p;
-        typedef typename internal::function_body<T6, tag_value> *f6_p;
-        typedef typename internal::function_body<T7, tag_value> *f7_p;
-        typedef typename std::tuple< f0_p, f1_p, f2_p, f3_p, f4_p, f5_p, f6_p, f7_p > func_initializer_type;
-    public:
-        template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5, typename B6, typename B7>
-        unfolded_join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5, B6 b6, B7 b7) : base_type(g,
-                func_initializer_type(
-                    new internal::function_body_leaf<T0, tag_value, B0>(b0),
-                    new internal::function_body_leaf<T1, tag_value, B1>(b1),
-                    new internal::function_body_leaf<T2, tag_value, B2>(b2),
-                    new internal::function_body_leaf<T3, tag_value, B3>(b3),
-                    new internal::function_body_leaf<T4, tag_value, B4>(b4),
-                    new internal::function_body_leaf<T5, tag_value, B5>(b5),
-                    new internal::function_body_leaf<T6, tag_value, B6>(b6),
-                    new internal::function_body_leaf<T7, tag_value, B7>(b7)
-                    ) ) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<typename OutputTuple>
-    class unfolded_join_node<9,tag_matching_port,OutputTuple,tag_matching> : public internal::join_node_base<tag_matching,
-        std::tuple<
-                tag_matching_port<typename std::tuple_element<0,OutputTuple>::type>, 
-                tag_matching_port<typename std::tuple_element<1,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<2,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<3,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<4,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<5,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<6,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<7,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<8,OutputTuple>::type>
-            >, OutputTuple >
-                  {
-        typedef typename std::tuple_element<0, OutputTuple>::type T0;
-        typedef typename std::tuple_element<1, OutputTuple>::type T1;
-        typedef typename std::tuple_element<2, OutputTuple>::type T2;
-        typedef typename std::tuple_element<3, OutputTuple>::type T3;
-        typedef typename std::tuple_element<4, OutputTuple>::type T4;
-        typedef typename std::tuple_element<5, OutputTuple>::type T5;
-        typedef typename std::tuple_element<6, OutputTuple>::type T6;
-        typedef typename std::tuple_element<7, OutputTuple>::type T7;
-        typedef typename std::tuple_element<8, OutputTuple>::type T8;
-    public:
-        typedef typename std::tuple< tag_matching_port<T0>, tag_matching_port<T1>, tag_matching_port<T2>,
-                tag_matching_port<T3>, tag_matching_port<T4>, tag_matching_port<T5>, tag_matching_port<T6>,
-                tag_matching_port<T7>, tag_matching_port<T8> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<tag_matching, input_ports_tuple_type, output_type > base_type;
-        typedef typename internal::function_body<T0, tag_value> *f0_p;
-        typedef typename internal::function_body<T1, tag_value> *f1_p;
-        typedef typename internal::function_body<T2, tag_value> *f2_p;
-        typedef typename internal::function_body<T3, tag_value> *f3_p;
-        typedef typename internal::function_body<T4, tag_value> *f4_p;
-        typedef typename internal::function_body<T5, tag_value> *f5_p;
-        typedef typename internal::function_body<T6, tag_value> *f6_p;
-        typedef typename internal::function_body<T7, tag_value> *f7_p;
-        typedef typename internal::function_body<T8, tag_value> *f8_p;
-        typedef typename std::tuple< f0_p, f1_p, f2_p, f3_p, f4_p, f5_p, f6_p, f7_p, f8_p > func_initializer_type;
-    public:
-        template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5, typename B6, typename B7, typename B8>
-        unfolded_join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5, B6 b6, B7 b7, B8 b8) : base_type(g,
-                func_initializer_type(
-                    new internal::function_body_leaf<T0, tag_value, B0>(b0),
-                    new internal::function_body_leaf<T1, tag_value, B1>(b1),
-                    new internal::function_body_leaf<T2, tag_value, B2>(b2),
-                    new internal::function_body_leaf<T3, tag_value, B3>(b3),
-                    new internal::function_body_leaf<T4, tag_value, B4>(b4),
-                    new internal::function_body_leaf<T5, tag_value, B5>(b5),
-                    new internal::function_body_leaf<T6, tag_value, B6>(b6),
-                    new internal::function_body_leaf<T7, tag_value, B7>(b7),
-                    new internal::function_body_leaf<T8, tag_value, B8>(b8)
-                    ) ) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    template<typename OutputTuple>
-    class unfolded_join_node<10,tag_matching_port,OutputTuple,tag_matching> : public internal::join_node_base<tag_matching,
-        std::tuple<
-                tag_matching_port<typename std::tuple_element<0,OutputTuple>::type>, 
-                tag_matching_port<typename std::tuple_element<1,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<2,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<3,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<4,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<5,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<6,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<7,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<8,OutputTuple>::type>,
-                tag_matching_port<typename std::tuple_element<9,OutputTuple>::type>
-            >, OutputTuple >
-                  {
-        typedef typename std::tuple_element<0, OutputTuple>::type T0;
-        typedef typename std::tuple_element<1, OutputTuple>::type T1;
-        typedef typename std::tuple_element<2, OutputTuple>::type T2;
-        typedef typename std::tuple_element<3, OutputTuple>::type T3;
-        typedef typename std::tuple_element<4, OutputTuple>::type T4;
-        typedef typename std::tuple_element<5, OutputTuple>::type T5;
-        typedef typename std::tuple_element<6, OutputTuple>::type T6;
-        typedef typename std::tuple_element<7, OutputTuple>::type T7;
-        typedef typename std::tuple_element<8, OutputTuple>::type T8;
-        typedef typename std::tuple_element<9, OutputTuple>::type T9;
-    public:
-        typedef typename std::tuple< tag_matching_port<T0>, tag_matching_port<T1>, tag_matching_port<T2>,
-                tag_matching_port<T3>, tag_matching_port<T4>, tag_matching_port<T5>, tag_matching_port<T6>,
-                tag_matching_port<T7>, tag_matching_port<T8>, tag_matching_port<T9> > input_ports_tuple_type;
-        typedef OutputTuple output_type;
-    private:
-        typedef join_node_base<tag_matching, input_ports_tuple_type, output_type > base_type;
-        typedef typename internal::function_body<T0, tag_value> *f0_p;
-        typedef typename internal::function_body<T1, tag_value> *f1_p;
-        typedef typename internal::function_body<T2, tag_value> *f2_p;
-        typedef typename internal::function_body<T3, tag_value> *f3_p;
-        typedef typename internal::function_body<T4, tag_value> *f4_p;
-        typedef typename internal::function_body<T5, tag_value> *f5_p;
-        typedef typename internal::function_body<T6, tag_value> *f6_p;
-        typedef typename internal::function_body<T7, tag_value> *f7_p;
-        typedef typename internal::function_body<T8, tag_value> *f8_p;
-        typedef typename internal::function_body<T9, tag_value> *f9_p;
-        typedef typename std::tuple< f0_p, f1_p, f2_p, f3_p, f4_p, f5_p, f6_p, f7_p, f8_p, f9_p > func_initializer_type;
-    public:
-        template<typename B0, typename B1, typename B2, typename B3, typename B4, typename B5, typename B6, typename B7, typename B8, typename B9>
-        unfolded_join_node(graph &g, B0 b0, B1 b1, B2 b2, B3 b3, B4 b4, B5 b5, B6 b6, B7 b7, B8 b8, B9 b9) : base_type(g,
-                func_initializer_type(
-                    new internal::function_body_leaf<T0, tag_value, B0>(b0),
-                    new internal::function_body_leaf<T1, tag_value, B1>(b1),
-                    new internal::function_body_leaf<T2, tag_value, B2>(b2),
-                    new internal::function_body_leaf<T3, tag_value, B3>(b3),
-                    new internal::function_body_leaf<T4, tag_value, B4>(b4),
-                    new internal::function_body_leaf<T5, tag_value, B5>(b5),
-                    new internal::function_body_leaf<T6, tag_value, B6>(b6),
-                    new internal::function_body_leaf<T7, tag_value, B7>(b7),
-                    new internal::function_body_leaf<T8, tag_value, B8>(b8),
-                    new internal::function_body_leaf<T9, tag_value, B9>(b9)
-                    ) ) {}
-        unfolded_join_node(const unfolded_join_node &other) : base_type(other) {}
-    };
-
-    //! templated function to refer to input ports of the join node
-    template<size_t N, typename JNT>
-    typename std::tuple_element<N, typename JNT::input_ports_tuple_type>::type &input_port(JNT &jn) {
-        return std::get<N>(jn.inputs());
-    }
-
-} 
-
-#endif // __TBB__flow_graph_join_impl_H
-
diff --git a/dependencies64/tbb/include/tbb/internal/_flow_graph_node_impl.h b/dependencies64/tbb/include/tbb/internal/_flow_graph_node_impl.h
deleted file mode 100644 (file)
index de2fe40..0000000
+++ /dev/null
@@ -1,473 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB__flow_graph_node_impl_H
-#define __TBB__flow_graph_node_impl_H
-
-#ifndef __TBB_flow_graph_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#include "_flow_graph_item_buffer_impl.h"
-
-//! @cond INTERNAL
-namespace internal {
-
-    using tbb::internal::aggregated_operation;
-    using tbb::internal::aggregating_functor;
-    using tbb::internal::aggregator;
-
-     template< typename T, typename A >
-     class function_input_queue : public item_buffer<T,A> {
-     public:
-         bool pop( T& t ) {
-             return this->pop_front( t );
-         }
-
-         bool push( T& t ) {
-             return this->push_back( t );
-         }
-     };
-
-    //! Input and scheduling for a function node that takes a type Input as input
-    //  The only up-ref is apply_body_impl, which should implement the function 
-    //  call and any handling of the result.
-    template< typename Input, typename A, typename ImplType >
-    class function_input_base : public receiver<Input>, tbb::internal::no_assign {
-        typedef sender<Input> predecessor_type;
-        enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        enum op_type {reg_pred, rem_pred, app_body, tryput, try_fwd};
-        typedef function_input_base<Input, A, ImplType> my_class;
-        
-    public:
-
-        //! The input type of this receiver
-        typedef Input input_type;
-        
-        //! Constructor for function_input_base
-        function_input_base( graph &g, size_t max_concurrency, function_input_queue<input_type,A> *q = NULL )
-            : my_root_task(g.root_task()), my_max_concurrency(max_concurrency), my_concurrency(0),
-              my_queue(q), forwarder_busy(false) {
-            my_predecessors.set_owner(this);
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-        
-        //! Copy constructor
-        function_input_base( const function_input_base& src, function_input_queue<input_type,A> *q = NULL ) :
-            receiver<Input>(), tbb::internal::no_assign(),
-            my_root_task( src.my_root_task), my_max_concurrency(src.my_max_concurrency),
-            my_concurrency(0), my_queue(q), forwarder_busy(false)
-        {
-            my_predecessors.set_owner(this);
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        //! Destructor
-        virtual ~function_input_base() { 
-            if ( my_queue ) delete my_queue;
-        }
-        
-        //! Put to the node
-        virtual bool try_put( const input_type &t ) {
-           if ( my_max_concurrency == 0 ) {
-               spawn_body_task( t );
-               return true;
-           } else {
-               my_operation op_data(t, tryput);
-               my_aggregator.execute(&op_data);
-               return op_data.status == SUCCEEDED;
-           }
-        }
-        
-        //! Adds src to the list of cached predecessors.
-        /* override */ bool register_predecessor( predecessor_type &src ) {
-            my_operation op_data(reg_pred);
-            op_data.r = &src;
-            my_aggregator.execute(&op_data);
-            return true;
-        }
-        
-        //! Removes src from the list of cached predecessors.
-        /* override */ bool remove_predecessor( predecessor_type &src ) {
-            my_operation op_data(rem_pred);
-            op_data.r = &src;
-            my_aggregator.execute(&op_data);
-            return true;
-        }
-
-    protected:
-
-        task *my_root_task;
-        const size_t my_max_concurrency;
-        size_t my_concurrency;
-        function_input_queue<input_type, A> *my_queue;
-        predecessor_cache<input_type, null_mutex > my_predecessors;
-        
-    private:
-
-        friend class apply_body_task< my_class, input_type >;
-        friend class forward_task< my_class >;
-        
-        class my_operation : public aggregated_operation< my_operation > {
-        public:
-            char type;
-            union {
-                input_type *elem;
-                predecessor_type *r;
-            };
-            my_operation(const input_type& e, op_type t) :
-                type(char(t)), elem(const_cast<input_type*>(&e)) {}
-            my_operation(op_type t) : type(char(t)), r(NULL) {}
-        };
-        
-        bool forwarder_busy;
-        typedef internal::aggregating_functor<my_class, my_operation> my_handler;
-        friend class internal::aggregating_functor<my_class, my_operation>;
-        aggregator< my_handler, my_operation > my_aggregator;
-        
-        void handle_operations(my_operation *op_list) {
-            my_operation *tmp;
-            while (op_list) {
-                tmp = op_list;
-                op_list = op_list->next;
-                switch (tmp->type) {
-                case reg_pred:
-                    my_predecessors.add(*(tmp->r));
-                    __TBB_store_with_release(tmp->status, SUCCEEDED);
-                    if (!forwarder_busy) {
-                        forwarder_busy = true;
-                        spawn_forward_task();
-                    }
-                    break;
-                case rem_pred:
-                    my_predecessors.remove(*(tmp->r));
-                    __TBB_store_with_release(tmp->status, SUCCEEDED);
-                    break;
-                case app_body:
-                    __TBB_ASSERT(my_max_concurrency != 0, NULL);
-                    --my_concurrency;
-                    __TBB_store_with_release(tmp->status, SUCCEEDED);
-                    if (my_concurrency<my_max_concurrency) {
-                        input_type i;
-                        bool item_was_retrieved = false;
-                        if ( my_queue )
-                            item_was_retrieved = my_queue->pop(i);
-                        else
-                            item_was_retrieved = my_predecessors.get_item(i);
-                        if (item_was_retrieved) {
-                            ++my_concurrency;
-                            spawn_body_task(i);
-                        }
-                    }
-                    break;
-                case tryput: internal_try_put(tmp);  break;
-                case try_fwd: internal_forward(tmp);  break;
-                }
-            }
-        }
-        
-        //! Put to the node
-        void internal_try_put(my_operation *op) {
-            __TBB_ASSERT(my_max_concurrency != 0, NULL);
-            if (my_concurrency < my_max_concurrency) {
-               ++my_concurrency;
-               spawn_body_task(*(op->elem));
-               __TBB_store_with_release(op->status, SUCCEEDED);
-           } else if ( my_queue && my_queue->push(*(op->elem)) ) { 
-               __TBB_store_with_release(op->status, SUCCEEDED);
-           } else {
-               __TBB_store_with_release(op->status, FAILED);
-           }
-        }
-        
-        //! Tries to spawn bodies if available and if concurrency allows
-        void internal_forward(my_operation *op) {
-            if (my_concurrency<my_max_concurrency || !my_max_concurrency) {
-                input_type i;
-                bool item_was_retrieved = false;
-                if ( my_queue )
-                    item_was_retrieved = my_queue->pop(i);
-                else
-                    item_was_retrieved = my_predecessors.get_item(i);
-                if (item_was_retrieved) {
-                    ++my_concurrency;
-                    __TBB_store_with_release(op->status, SUCCEEDED);
-                    spawn_body_task(i);
-                    return;
-                }
-            }
-            __TBB_store_with_release(op->status, FAILED);
-            forwarder_busy = false;
-        }
-        
-        //! Applies the body to the provided input
-        void apply_body( input_type &i ) {
-            static_cast<ImplType *>(this)->apply_body_impl(i);
-            if ( my_max_concurrency != 0 ) {
-                my_operation op_data(app_body);
-                my_aggregator.execute(&op_data);
-            }
-        }
-        
-       //! Spawns a task that calls apply_body( input )
-       inline void spawn_body_task( const input_type &input ) {
-           task::enqueue(*new(task::allocate_additional_child_of(*my_root_task)) apply_body_task< my_class, input_type >(*this, input));
-       }
-        
-       //! This is executed by an enqueued task, the "forwarder"
-       void forward() {
-           my_operation op_data(try_fwd);
-           do {
-               op_data.status = WAIT;
-               my_aggregator.execute(&op_data);
-           } while (op_data.status == SUCCEEDED);
-       }
-        
-       //! Spawns a task that calls forward()
-       inline void spawn_forward_task() {
-           task::enqueue(*new(task::allocate_additional_child_of(*my_root_task)) forward_task< my_class >(*this));
-       }
-    };  // function_input_base
-
-    //! Implements methods for a function node that takes a type Input as input and sends
-    //  a type Output to its successors.
-    template< typename Input, typename Output, typename A>
-    class function_input : public function_input_base<Input, A, function_input<Input,Output,A> > {
-    public:
-        typedef Input input_type;
-        typedef Output output_type;
-        typedef function_input<Input,Output,A> my_class;
-        typedef function_input_base<Input, A, my_class> base_type;
-        typedef function_input_queue<input_type, A> input_queue_type;
-
-
-        // constructor
-        template<typename Body>
-        function_input( graph &g, size_t max_concurrency, Body& body, function_input_queue<input_type,A> *q = NULL ) :
-            base_type(g, max_concurrency, q),
-            my_body( new internal::function_body_leaf< input_type, output_type, Body>(body) ) {
-        }
-
-        //! Copy constructor
-        function_input( const function_input& src, input_queue_type *q = NULL ) : 
-                base_type(src, q),
-                my_body( src.my_body->clone() ) {
-        }
-
-        ~function_input() {
-            delete my_body;
-        }
-
-        template< typename Body >
-        Body copy_function_object() {
-            internal::function_body<input_type, output_type> &body_ref = *this->my_body;
-            return dynamic_cast< internal::function_body_leaf<input_type, output_type, Body> & >(body_ref).get_body(); 
-        } 
-
-        void apply_body_impl( const input_type &i) {
-            successors().try_put( (*my_body)(i) );
-        }
-
-    protected:
-        function_body<input_type, output_type> *my_body;
-        virtual broadcast_cache<output_type > &successors() = 0;
-
-    };
-
-#if TBB_PREVIEW_GRAPH_NODES
-    //! Implements methods for a function node that takes a type Input as input
-    //  and has a tuple of output ports specified.  
-    template< typename Input, typename OutputPortSet, typename A>
-    class multioutput_function_input : public function_input_base<Input, A, multioutput_function_input<Input,OutputPortSet,A> > {
-    public:
-        typedef Input input_type;
-        typedef OutputPortSet output_ports_type;
-        typedef multioutput_function_input<Input,OutputPortSet,A> my_class;
-        typedef function_input_base<Input, A, my_class> base_type;
-        typedef function_input_queue<input_type, A> input_queue_type;
-
-
-        // constructor
-        template<typename Body>
-        multioutput_function_input( 
-                graph &g, 
-                size_t max_concurrency, 
-                Body& body,
-                function_input_queue<input_type,A> *q = NULL ) :
-            base_type(g, max_concurrency, q),
-            my_body( new internal::multioutput_function_body_leaf<input_type, output_ports_type, Body>(body) ) {
-        }
-
-        //! Copy constructor
-        multioutput_function_input( const multioutput_function_input& src, input_queue_type *q = NULL ) : 
-                base_type(src, q),
-                my_body( src.my_body->clone() ) {
-        }
-
-        ~multioutput_function_input() {
-            delete my_body;
-        }
-
-        template< typename Body >
-        Body copy_function_object() {
-            internal::multioutput_function_body<input_type, output_ports_type> &body_ref = *this->my_body;
-            return dynamic_cast< internal::multioutput_function_body_leaf<input_type, output_ports_type, Body> & >(body_ref).get_body(); 
-        } 
-
-        void apply_body_impl( const input_type &i) {
-            (*my_body)(i, my_output_ports);
-        }
-
-        output_ports_type &output_ports(){ return my_output_ports; }
-
-    protected:
-        multioutput_function_body<input_type, output_ports_type> *my_body;
-        output_ports_type my_output_ports;
-
-    };
-
-    // template to refer to an output port of a multioutput_function_node
-    template<size_t N, typename MOP>
-    typename std::tuple_element<N, typename MOP::output_ports_type>::type &output_port(MOP &op) {
-        return std::get<N>(op.output_ports()); 
-    }
-
-// helper structs for split_node
-    template<int N>
-    struct emit_element {
-        template<typename T, typename P>
-        static void emit_this(const T &t, P &p) {
-            std::get<N-1>(p).put(std::get<N-1>(t));
-            emit_element<N-1>::emit_this(t,p);
-        }
-    };
-
-    template<>
-    struct emit_element<1> {
-        template<typename T, typename P>
-        static void emit_this(const T &t, P &p) {
-            std::get<0>(p).put(std::get<0>(t));
-        }
-    };
-#endif  // TBB_PREVIEW_GRAPH_NODES
-
-    //! Implements methods for an executable node that takes continue_msg as input
-    template< typename Output >
-    class continue_input : public continue_receiver {
-    public:
-        
-        //! The input type of this receiver
-        typedef continue_msg input_type;
-            
-        //! The output type of this receiver
-        typedef Output output_type;
-        
-        template< typename Body >
-        continue_input( graph &g, Body& body )
-            : my_root_task(g.root_task()), 
-             my_body( new internal::function_body_leaf< input_type, output_type, Body>(body) ) { }
-        
-        template< typename Body >
-        continue_input( graph &g, int number_of_predecessors, Body& body )
-            : continue_receiver( number_of_predecessors ), my_root_task(g.root_task()), 
-             my_body( new internal::function_body_leaf< input_type, output_type, Body>(body) ) { }
-
-        continue_input( const continue_input& src ) : continue_receiver(src), 
-            my_root_task(src.my_root_task), my_body( src.my_body->clone() ) {}
-
-        template< typename Body >
-        Body copy_function_object() {
-            internal::function_body<input_type, output_type> &body_ref = *my_body;
-            return dynamic_cast< internal::function_body_leaf<input_type, output_type, Body> & >(body_ref).get_body(); 
-        } 
-
-    protected:
-        
-        task *my_root_task;
-        function_body<input_type, output_type> *my_body;
-        
-        virtual broadcast_cache<output_type > &successors() = 0; 
-        
-        friend class apply_body_task< continue_input< Output >, continue_msg >;
-        
-        //! Applies the body to the provided input
-        /* override */ void apply_body( input_type ) {
-            successors().try_put( (*my_body)( continue_msg() ) );
-        }
-        
-        //! Spawns a task that applies the body
-        /* override */ void execute( ) {
-            task::enqueue( * new ( task::allocate_additional_child_of( *my_root_task ) ) 
-               apply_body_task< continue_input< Output >, continue_msg >( *this, continue_msg() ) ); 
-        }
-
-    };
-        
-    //! Implements methods for both executable and function nodes that puts Output to its successors
-    template< typename Output >
-    class function_output : public sender<Output> {
-    public:
-        
-        typedef Output output_type;
-        
-        function_output() { my_successors.set_owner(this); }
-        function_output(const function_output & /*other*/) : sender<output_type>() {
-            my_successors.set_owner(this);
-        }
-        
-        //! Adds a new successor to this node
-        /* override */ bool register_successor( receiver<output_type> &r ) {
-            successors().register_successor( r );
-            return true;
-        }
-        
-        //! Removes a successor from this node
-        /* override */ bool remove_successor( receiver<output_type> &r ) {
-            successors().remove_successor( r );
-            return true;
-        }
-
-        // for multioutput_function_node.  The function_body that implements
-        // the node will have an input and an output tuple of ports.  To put
-        // an item to a successor, the body should
-        //
-        //    get<I>(output_ports).put(output_value);
-        //
-        // successors must always accept (for instance, a queue_node) or items
-        // may be dropped.
-        void put(const output_type &i) { my_successors.try_put(i); }
-          
-    protected:
-        broadcast_cache<output_type> my_successors;
-        broadcast_cache<output_type > &successors() { return my_successors; } 
-        
-    };
-
-}  // internal
-
-#endif // __TBB__flow_graph_node_impl_H
diff --git a/dependencies64/tbb/include/tbb/internal/_flow_graph_or_impl.h b/dependencies64/tbb/include/tbb/internal/_flow_graph_or_impl.h
deleted file mode 100644 (file)
index f17f536..0000000
+++ /dev/null
@@ -1,268 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB__flow_graph_or_impl_H
-#define __TBB__flow_graph_or_impl_H
-
-#ifndef __TBB_flow_graph_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#if TBB_PREVIEW_GRAPH_NODES
-#include "tbb/internal/_flow_graph_types_impl.h"
-
-namespace internal {
-
-    // Output of the or_node is a struct containing a std::tuple, and will be of
-    // the form
-    //
-    //  struct {
-    //     size_t indx;
-    //     tuple_types result;
-    //  };
-    //
-    //  where the value of indx will indicate which result was put to the
-    //  successor. So if oval is the output to the successor, indx == 0 
-    //  means std::get<0>(oval.result) is the output, and so on.
-    //
-    //  tuple_types is the tuple that specified the possible outputs (and
-    //  the corresponding inputs to the or_node.)
-    //
-    //  the types of each element are represented by tuple_types, a typedef
-    //  in the or_node.  So the 2nd type in the union that is the
-    //  output type for an or_node OrType is
-    //
-    //      std::tuple_element<1,OrType::tuple_types>::type
-
-    // the struct has an OutputTuple default constructed, with element index assigned
-    // the actual output value.
-    template<typename OutputTuple>
-    struct or_output_type {
-        typedef OutputTuple tuple_types;
-        typedef struct {
-            size_t indx;
-            OutputTuple result;
-        } type;
-    };
-
-    template<typename TupleTypes,int N>
-    struct or_item_helper {
-        template<typename OutputType>
-        static inline void create_output_value(OutputType &o, void *v) {
-            o.indx = N;
-            std::get<N>(o.result) = *(reinterpret_cast<typename std::tuple_element<N, TupleTypes>::type *>(v));
-        }
-    };
-
-    template<typename TupleTypes,int N>
-    struct or_helper {
-        template<typename OutputType>
-        static inline void create_output(OutputType &o, size_t i, void* v) {
-            if(i == N-1) {
-                or_item_helper<TupleTypes,N-1>::create_output_value(o,v);
-            }
-            else
-                or_helper<TupleTypes,N-1>::create_output(o,i,v);
-        }
-        template<typename PortTuple, typename PutBase>
-        static inline void set_or_node_pointer(PortTuple &my_input, PutBase *p) {
-            std::get<N-1>(my_input).set_up(p, N-1);
-            or_helper<TupleTypes,N-1>::set_or_node_pointer(my_input, p);
-        }
-    };
-
-    template<typename TupleTypes>
-    struct or_helper<TupleTypes,1> {
-        template<typename OutputType>
-        static inline void create_output(OutputType &o, size_t i, void* v) {
-            if(i == 0) {
-                or_item_helper<TupleTypes,0>::create_output_value(o,v);
-            }
-        }
-        template<typename PortTuple, typename PutBase>
-        static inline void set_or_node_pointer(PortTuple &my_input, PutBase *p) {
-            std::get<0>(my_input).set_up(p, 0);
-        }
-    };
-
-    struct put_base {
-        virtual bool try_put_with_index(size_t index, void *v) = 0;
-        virtual ~put_base() { }
-    };
-
-    template<typename T>
-    class or_input_port : public receiver<T> {
-    private:
-        size_t my_index;
-        put_base *my_or_node;
-    public:
-        void set_up(put_base *p, size_t i) { my_index = i; my_or_node = p; }
-        bool try_put(const T &v) {
-            return my_or_node->try_put_with_index(my_index, reinterpret_cast<void *>(const_cast<T*>(&v)));
-        }
-    };
-
-    template<typename InputTuple, typename OutputType, typename StructTypes>
-    class or_node_FE : public put_base {
-    public:
-        static const int N = std::tuple_size<InputTuple>::value;
-        typedef OutputType output_type;
-        typedef InputTuple input_type;
-
-        or_node_FE( ) {
-            or_helper<StructTypes,N>::set_or_node_pointer(my_inputs, this);
-        }
-
-        input_type &inputs() { return my_inputs; }
-    protected:
-        input_type my_inputs;
-    };
-
-    //! or_node_base
-    template<typename InputTuple, typename OutputType, typename StructTypes>
-    class or_node_base : public graph_node, public or_node_FE<InputTuple, OutputType,StructTypes>,
-                           public sender<OutputType> {
-    public:
-        static const size_t N = std::tuple_size<InputTuple>::value;
-        typedef OutputType output_type;
-        typedef StructTypes tuple_types;
-        typedef receiver<output_type> successor_type;
-        typedef or_node_FE<InputTuple, output_type,StructTypes> input_ports_type;
-
-    private:
-        // ----------- Aggregator ------------
-        enum op_type { reg_succ, rem_succ, try__put };
-        enum op_stat {WAIT=0, SUCCEEDED, FAILED};
-        typedef or_node_base<InputTuple,output_type,StructTypes> my_class;
-
-        class or_node_base_operation : public aggregated_operation<or_node_base_operation> {
-        public:
-            char type;
-            size_t indx;
-            union {
-                void *my_arg;
-                successor_type *my_succ;
-            };
-            or_node_base_operation(size_t i, const void* e, op_type t) :
-                type(char(t)), indx(i), my_arg(const_cast<void *>(e)) {}
-            or_node_base_operation(const successor_type &s, op_type t) : type(char(t)), 
-                my_succ(const_cast<successor_type *>(&s)) {}
-            or_node_base_operation(op_type t) : type(char(t)) {}
-        };
-
-        typedef internal::aggregating_functor<my_class, or_node_base_operation> my_handler;
-        friend class internal::aggregating_functor<my_class, or_node_base_operation>;
-        aggregator<my_handler, or_node_base_operation> my_aggregator;
-
-        void handle_operations(or_node_base_operation* op_list) {
-            or_node_base_operation *current;
-            while(op_list) {
-                current = op_list;
-                op_list = op_list->next;
-                switch(current->type) {
-
-                case reg_succ:
-                    my_successors.register_successor(*(current->my_succ));
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-
-                case rem_succ:
-                    my_successors.remove_successor(*(current->my_succ));
-                    __TBB_store_with_release(current->status, SUCCEEDED);
-                    break;
-
-                case try__put:
-                    output_type oval;
-                    or_helper<tuple_types,N>::create_output(oval,current->indx,current->my_arg);
-                    bool res = my_successors.try_put(oval);
-                    __TBB_store_with_release(current->status, res ? SUCCEEDED : FAILED);
-                    break;
-                }
-            }
-        }
-        // ---------- end aggregator -----------
-    public:
-        or_node_base( ) : input_ports_type() {
-            my_successors.set_owner(this);
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        or_node_base( const or_node_base& /*other*/) : input_ports_type() {
-            my_successors.set_owner(this);
-            my_aggregator.initialize_handler(my_handler(this));
-        }
-
-        bool register_successor(successor_type &r) {
-            or_node_base_operation op_data(r, reg_succ);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        bool remove_successor( successor_type &r) {
-            or_node_base_operation op_data(r, rem_succ);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-        bool try_put_with_index(size_t indx, void *v) {
-            or_node_base_operation op_data(indx, v, try__put);
-            my_aggregator.execute(&op_data);
-            return op_data.status == SUCCEEDED;
-        }
-
-    private:
-        broadcast_cache<output_type, null_rw_mutex> my_successors;
-    };
-
-    // type generators
-    template<typename OutputTuple>
-    struct or_types {
-        static const int N = std::tuple_size<OutputTuple>::value;
-        typedef typename wrap_tuple_elements<N,or_input_port,OutputTuple>::type input_ports_tuple_type;
-        typedef typename or_output_type<OutputTuple>::type output_type;
-        typedef internal::or_node_FE<input_ports_tuple_type,output_type,OutputTuple> or_FE_type;
-        typedef internal::or_node_base<input_ports_tuple_type, output_type, OutputTuple> or_base_type;
-    };
-
-    template<class OutputTuple>
-    class unfolded_or_node : public or_types<OutputTuple>::or_base_type {
-    public:
-        typedef typename or_types<OutputTuple>::input_ports_tuple_type input_ports_tuple_type;
-        typedef OutputTuple tuple_types;
-        typedef typename or_types<OutputTuple>::output_type output_type;
-    private:
-        typedef typename or_types<OutputTuple>::or_base_type base_type;
-    public:
-        unfolded_or_node() : base_type() {}
-    };
-
-
-} /* namespace internal */
-#endif  // TBB_PREVIEW_GRAPH_NODES
-
-#endif  /* __TBB__flow_graph_or_impl_H */
diff --git a/dependencies64/tbb/include/tbb/internal/_flow_graph_tagged_buffer_impl.h b/dependencies64/tbb/include/tbb/internal/_flow_graph_tagged_buffer_impl.h
deleted file mode 100644 (file)
index 8b87fd1..0000000
+++ /dev/null
@@ -1,212 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-// tagged buffer that can expand, and can support as many deletions as additions
-// list-based, with elements of list held in std::vector (for destruction management),
-// multiplicative hashing (like ets).  No synchronization built-in.
-//
-
-#ifndef __TBB__flow_graph_tagged_buffer_impl_H
-#define __TBB__flow_graph_tagged_buffer_impl_H
-
-#ifndef __TBB_flow_graph_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-template<typename TagType, typename ValueType, size_t NoTagMark>
-struct buffer_element {
-    TagType t;
-    ValueType v;
-    buffer_element *next;
-    buffer_element() : t(NoTagMark), next(NULL) {}
-};
-
-template
-    <
-     typename TagType, 
-     typename ValueType, 
-     size_t   NoTagMark = 0,
-     typename Allocator=tbb::cache_aligned_allocator< buffer_element<TagType,ValueType,NoTagMark> >
-    >
-class tagged_buffer {
-public:
-    static const size_t INITIAL_SIZE = 8;  // initial size of the hash pointer table
-    static const TagType NO_TAG = TagType(NoTagMark);
-    typedef ValueType value_type;
-    typedef buffer_element<TagType,ValueType, NO_TAG> element_type;
-    typedef value_type *pointer_type;
-    typedef std::vector<element_type, Allocator> list_array_type;
-    typedef typename Allocator::template rebind<element_type*>::other pointer_array_allocator_type;
-    typedef typename Allocator::template rebind<list_array_type>::other list_array_allocator;
-private:
-
-    size_t my_size;
-    size_t nelements;
-    element_type** array;
-    std::vector<element_type, Allocator> *lists;
-    element_type* free_list;
-
-    size_t mask() { return my_size - 1; }
-
-// #define ABYSMAL 1
-    static size_t hash(TagType t) {
-#if ABYSMAL
-        return (size_t)1;
-#else
-#if __TBB_WORDSIZE == 4
-        return uintptr_t(t)*0x9E3779B9;
-#else
-        return uintptr_t(t)*0x9E3779B97F4A7C15;
-#endif
-#endif
-    }
-
-    void set_up_free_list( element_type **p_free_list, list_array_type *la, size_t sz) {
-        for(size_t i=0; i < sz - 1; ++i ) {  // construct free list
-            (*la)[i].next = &((*la)[i+1]);
-            (*la)[i].t = NO_TAG;
-        }
-        (*la)[sz-1].next = NULL;
-        *p_free_list = &((*la)[0]);
-    }
-
-    void grow_array() {
-        // make the pointer array larger
-        element_type **new_array;
-        element_type **old_array = array;
-        size_t old_size = my_size;
-        my_size *=2;
-        new_array = pointer_array_allocator_type().allocate(my_size);
-        for(size_t i=0; i < my_size; ++i) new_array[i] = NULL;
-        list_array_type *new_list_array = new list_array_type(old_size, element_type(), Allocator());
-        set_up_free_list(&free_list, new_list_array, old_size );
-
-        for(size_t i=0; i < old_size; ++i) {
-            for( element_type* op = old_array[i]; op; op = op->next) {
-                internal_tagged_insert(new_array, my_size, op->t, op->v);
-            }
-        }
-        pointer_array_allocator_type().deallocate(old_array, old_size);
-
-        delete lists;  // destroy and deallocate instead
-        array = new_array;
-        lists = new_list_array;
-    }
-
-    void internal_tagged_insert( element_type **ar, size_t sz, TagType t, value_type v) {
-        size_t l_mask = sz-1;
-        size_t h = hash(t) & l_mask;
-        __TBB_ASSERT(free_list, "Error: free list not set up.");
-        element_type* my_elem = free_list; free_list = free_list->next;
-        my_elem->t = t;
-        my_elem->v = v;
-        my_elem->next = ar[h];
-        ar[h] = my_elem;
-    }
-
-public:
-    tagged_buffer() : my_size(INITIAL_SIZE), nelements(0) {
-        array = pointer_array_allocator_type().allocate(my_size);
-        for(size_t i = 0; i < my_size; ++i) array[i] = NULL;
-        lists = new list_array_type(INITIAL_SIZE/2, element_type(), Allocator());
-        set_up_free_list(&free_list, lists, INITIAL_SIZE/2);
-    }
-
-    ~tagged_buffer() {
-        if(array) {
-            pointer_array_allocator_type().deallocate(array, my_size); 
-        }
-        if(lists) {
-            delete lists;
-        }
-    }
-
-    bool tagged_insert(TagType t, value_type v) {
-        pointer_type p;
-        if(tagged_find_ref(t, p)) {
-            *p = v;  // replace the value
-            return false;
-        }
-        ++nelements;
-        if(nelements*2 > my_size) grow_array();
-        internal_tagged_insert(array, my_size, t, v);
-        return true;
-    }
-
-    // returns reference to array element.v
-    bool tagged_find_ref(TagType t, pointer_type &v) {
-        size_t i = hash(t) & mask();
-        for(element_type* p = array[i]; p; p = p->next) {
-            if(p->t == t) {
-                v = &(p->v);
-                return true;
-            }
-        }
-        return false;
-    }
-
-    bool tagged_find( TagType t, value_type &v) {
-        value_type *p;
-        if(tagged_find_ref(t, p)) {
-            v = *p;
-            return true;
-        }
-        else
-            return false;
-    }
-
-    void tagged_delete(TagType t) {
-        size_t h = hash(t) & mask();
-        element_type* prev = NULL;
-        for(element_type* p = array[h]; p; prev = p, p = p->next) {
-            if(p->t == t) {
-                p->t = NO_TAG;
-                if(prev) prev->next = p->next;
-                else array[h] = p->next;
-                p->next = free_list;
-                free_list = p;
-                --nelements;
-                return;
-            }
-        }
-        __TBB_ASSERT(false, "tag not found for delete");
-    }
-
-    // search for v in the array; if found {set t, return true} else return false
-    // we use this in join_node_FE to find if a tag's items are all available.
-    bool find_value_tag( TagType &t, value_type v) {
-        for(size_t i= 0; i < my_size / 2; ++i) {  // remember the vector is half the size of the hash array
-            if( (*lists)[i].t != NO_TAG && (*lists)[i].v == v) {
-                t = (*lists)[i].t;
-                return true;
-            }
-        }
-        return false;
-    }
-};
-#endif // __TBB__flow_graph_tagged_buffer_impl_H
diff --git a/dependencies64/tbb/include/tbb/internal/_flow_graph_types_impl.h b/dependencies64/tbb/include/tbb/internal/_flow_graph_types_impl.h
deleted file mode 100644 (file)
index 335b04f..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB__flow_graph_types_impl_H
-#define __TBB__flow_graph_types_impl_H
-
-#ifndef __TBB_flow_graph_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-namespace internal {
-// wrap each element of a tuple in a template, and make a tuple of the result.
-
-    template<int N, template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements;
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<1, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type> >
-            type;
-    };
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<2, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type>, 
-                PT<typename std::tuple_element<1,TypeTuple>::type> >
-            type;
-    };
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<3, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type>,
-                PT<typename std::tuple_element<1,TypeTuple>::type>,
-                PT<typename std::tuple_element<2,TypeTuple>::type> >
-            type;
-    };
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<4, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type>,
-                PT<typename std::tuple_element<1,TypeTuple>::type>,
-                PT<typename std::tuple_element<2,TypeTuple>::type>,
-                PT<typename std::tuple_element<3,TypeTuple>::type> >
-            type;
-    };
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<5, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type>,
-                PT<typename std::tuple_element<1,TypeTuple>::type>,
-                PT<typename std::tuple_element<2,TypeTuple>::type>,
-                PT<typename std::tuple_element<3,TypeTuple>::type>,
-                PT<typename std::tuple_element<4,TypeTuple>::type> >
-            type;
-    };
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<6, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type>,
-                PT<typename std::tuple_element<1,TypeTuple>::type>,
-                PT<typename std::tuple_element<2,TypeTuple>::type>,
-                PT<typename std::tuple_element<3,TypeTuple>::type>,
-                PT<typename std::tuple_element<4,TypeTuple>::type>,
-                PT<typename std::tuple_element<5,TypeTuple>::type> >
-            type;
-    };
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<7, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type>,
-                PT<typename std::tuple_element<1,TypeTuple>::type>,
-                PT<typename std::tuple_element<2,TypeTuple>::type>,
-                PT<typename std::tuple_element<3,TypeTuple>::type>,
-                PT<typename std::tuple_element<4,TypeTuple>::type>,
-                PT<typename std::tuple_element<5,TypeTuple>::type>,
-                PT<typename std::tuple_element<6,TypeTuple>::type> >
-            type;
-    };
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<8, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type>,
-                PT<typename std::tuple_element<1,TypeTuple>::type>,
-                PT<typename std::tuple_element<2,TypeTuple>::type>,
-                PT<typename std::tuple_element<3,TypeTuple>::type>,
-                PT<typename std::tuple_element<4,TypeTuple>::type>,
-                PT<typename std::tuple_element<5,TypeTuple>::type>,
-                PT<typename std::tuple_element<6,TypeTuple>::type>,
-                PT<typename std::tuple_element<7,TypeTuple>::type> >
-            type;
-    };
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<9, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type>,
-                PT<typename std::tuple_element<1,TypeTuple>::type>,
-                PT<typename std::tuple_element<2,TypeTuple>::type>,
-                PT<typename std::tuple_element<3,TypeTuple>::type>,
-                PT<typename std::tuple_element<4,TypeTuple>::type>,
-                PT<typename std::tuple_element<5,TypeTuple>::type>,
-                PT<typename std::tuple_element<6,TypeTuple>::type>,
-                PT<typename std::tuple_element<7,TypeTuple>::type>,
-                PT<typename std::tuple_element<8,TypeTuple>::type> >
-            type;
-    };
-
-    template<template<class> class PT, typename TypeTuple>
-    struct wrap_tuple_elements<10, PT, TypeTuple> {
-        typedef typename std::tuple<
-                PT<typename std::tuple_element<0,TypeTuple>::type>,
-                PT<typename std::tuple_element<1,TypeTuple>::type>,
-                PT<typename std::tuple_element<2,TypeTuple>::type>,
-                PT<typename std::tuple_element<3,TypeTuple>::type>,
-                PT<typename std::tuple_element<4,TypeTuple>::type>,
-                PT<typename std::tuple_element<5,TypeTuple>::type>,
-                PT<typename std::tuple_element<6,TypeTuple>::type>,
-                PT<typename std::tuple_element<7,TypeTuple>::type>,
-                PT<typename std::tuple_element<8,TypeTuple>::type>,
-                PT<typename std::tuple_element<9,TypeTuple>::type> >
-            type;
-    };
-
-}  // namespace internal
-#endif  /* __TBB__flow_graph_types_impl_H */
diff --git a/dependencies64/tbb/include/tbb/internal/_tbb_windef.h b/dependencies64/tbb/include/tbb/internal/_tbb_windef.h
deleted file mode 100644 (file)
index bda75c7..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_tbb_windef_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif /* __TBB_tbb_windef_H */
-
-// Check that the target Windows version has all API calls requried for TBB.
-// Do not increase the version in condition beyond 0x0500 without prior discussion!
-#if defined(_WIN32_WINNT) && _WIN32_WINNT<0x0400
-#error TBB is unable to run on old Windows versions; _WIN32_WINNT must be 0x0400 or greater.
-#endif
-
-#if !defined(_MT)
-#error TBB requires linkage with multithreaded C/C++ runtime library. \
-       Choose multithreaded DLL runtime in project settings, or use /MD[d] compiler switch.
-#endif
-
-// Workaround for the problem with MVSC headers failing to define namespace std
-namespace std {
-  using ::size_t; using ::ptrdiff_t;
-}
-
-#define __TBB_STRING_AUX(x) #x
-#define __TBB_STRING(x) __TBB_STRING_AUX(x)
-
-// Default setting of TBB_USE_DEBUG
-#ifdef TBB_USE_DEBUG
-#    if TBB_USE_DEBUG 
-#        if !defined(_DEBUG)
-#            pragma message(__FILE__ "(" __TBB_STRING(__LINE__) ") : Warning: Recommend using /MDd if compiling with TBB_USE_DEBUG!=0")
-#        endif
-#    else
-#        if defined(_DEBUG)
-#            pragma message(__FILE__ "(" __TBB_STRING(__LINE__) ") : Warning: Recommend using /MD if compiling with TBB_USE_DEBUG==0")
-#        endif
-#    endif
-#endif
-
-#if __TBB_BUILD && !defined(__TBB_NO_IMPLICIT_LINKAGE)
-#define __TBB_NO_IMPLICIT_LINKAGE 1
-#endif
-
-#if _MSC_VER
-    #if !__TBB_NO_IMPLICIT_LINKAGE
-        #ifdef __TBB_LIB_NAME
-               #pragma comment(lib, __TBB_STRING(__TBB_LIB_NAME))
-        #else
-                       #ifdef _DEBUG
-                               #pragma comment(lib, "tbb_debug.lib")
-                       #else
-                               #pragma comment(lib, "tbb.lib")
-                       #endif
-        #endif
-    #endif
-#endif
diff --git a/dependencies64/tbb/include/tbb/machine/gcc_generic.h b/dependencies64/tbb/include/tbb/machine/gcc_generic.h
deleted file mode 100644 (file)
index 0192fde..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_gcc_generic_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_gcc_generic_H
-
-#include <stdint.h>
-#include <unistd.h>
-
-#define __TBB_WORDSIZE      __SIZEOF_INT__
-
-// For some reason straight mapping does not work on mingw
-#if __BYTE_ORDER__==__ORDER_BIG_ENDIAN__
-    #define __TBB_BIG_ENDIAN    0
-#elif __BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__
-    #define __TBB_BIG_ENDIAN    1
-#else
-#error Unsupported endianness
-#endif
-
-/** As this generic implementation has absolutely no information about underlying
-    hardware, its performance most likely will be sub-optimal because of full memory
-    fence usages where a more lightweight synchronization means (or none at all)
-    could suffice. Thus if you use this header to enable TBB on a new platform,
-    consider forking it and relaxing below helpers as appropriate. **/
-#define __TBB_acquire_consistency_helper()  __sync_synchronize()
-#define __TBB_release_consistency_helper()  __sync_synchronize()
-#define __TBB_full_memory_fence()           __sync_synchronize()
-#define __TBB_control_consistency_helper()  __sync_synchronize()
-
-#define __TBB_MACHINE_DEFINE_ATOMICS(S,T)                                                         \
-inline T __TBB_machine_cmpswp##S( volatile void *ptr, T value, T comparand ) {                    \
-    return __sync_val_compare_and_swap(reinterpret_cast<volatile T *>(ptr),comparand,value);      \
-}                                                                                                 \
-
-__TBB_MACHINE_DEFINE_ATOMICS(1,int8_t)
-__TBB_MACHINE_DEFINE_ATOMICS(2,int16_t)
-__TBB_MACHINE_DEFINE_ATOMICS(4,int32_t)
-__TBB_MACHINE_DEFINE_ATOMICS(8,int64_t)
-
-#undef __TBB_MACHINE_DEFINE_ATOMICS
-
-#define __TBB_USE_GENERIC_FETCH_ADD                 1
-#define __TBB_USE_GENERIC_FETCH_STORE               1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE    1
-#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE        1
diff --git a/dependencies64/tbb/include/tbb/machine/ibm_aix51.h b/dependencies64/tbb/include/tbb/machine/ibm_aix51.h
deleted file mode 100644 (file)
index 2cd606e..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-// TODO: revise by comparing with mac_ppc.h
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_ibm_aix51_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_ibm_aix51_H
-
-#define __TBB_WORDSIZE 8
-#define __TBB_BIG_ENDIAN 1
-
-#include <stdint.h>
-#include <unistd.h>
-#include <sched.h>
-
-extern "C" {
-int32_t __TBB_machine_cas_32 (volatile void* ptr, int32_t value, int32_t comparand);
-int64_t __TBB_machine_cas_64 (volatile void* ptr, int64_t value, int64_t comparand);
-void __TBB_machine_flush ();
-void __TBB_machine_lwsync ();
-void __TBB_machine_isync ();
-}
-
-// Mapping of old entry point names retained for the sake of backward binary compatibility
-#define __TBB_machine_cmpswp4 __TBB_machine_cas_32
-#define __TBB_machine_cmpswp8 __TBB_machine_cas_64
-
-#define __TBB_Yield() sched_yield()
-
-#define __TBB_USE_GENERIC_PART_WORD_CAS             1
-#define __TBB_USE_GENERIC_FETCH_ADD                 1
-#define __TBB_USE_GENERIC_FETCH_STORE               1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE    1
-#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE        1
-
-#if __GNUC__
-    #define __TBB_control_consistency_helper() __asm__ __volatile__( "isync": : :"memory")
-    #define __TBB_acquire_consistency_helper() __asm__ __volatile__("lwsync": : :"memory")
-    #define __TBB_release_consistency_helper() __asm__ __volatile__("lwsync": : :"memory")
-    #define __TBB_full_memory_fence()          __asm__ __volatile__(  "sync": : :"memory")
-#else
-    // IBM C++ Compiler does not support inline assembly
-    // TODO: Since XL 9.0 or earlier GCC syntax is supported. Replace with more
-    //       lightweight implementation (like in mac_ppc.h)
-    #define __TBB_control_consistency_helper() __TBB_machine_isync ()
-    #define __TBB_acquire_consistency_helper() __TBB_machine_lwsync ()
-    #define __TBB_release_consistency_helper() __TBB_machine_lwsync ()
-    #define __TBB_full_memory_fence()          __TBB_machine_flush ()
-#endif
diff --git a/dependencies64/tbb/include/tbb/machine/linux_common.h b/dependencies64/tbb/include/tbb/machine/linux_common.h
deleted file mode 100644 (file)
index 2efa77d..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_machine_H
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#include <sched.h>
-#define __TBB_Yield()  sched_yield()
-
-/* Futex definitions */
-#include <sys/syscall.h>
-
-#if defined(SYS_futex)
-
-#define __TBB_USE_FUTEX 1
-#include <limits.h>
-#include <errno.h>
-// Unfortunately, some versions of Linux do not have a header that defines FUTEX_WAIT and FUTEX_WAKE.
-
-#ifdef FUTEX_WAIT
-#define __TBB_FUTEX_WAIT FUTEX_WAIT
-#else
-#define __TBB_FUTEX_WAIT 0
-#endif
-
-#ifdef FUTEX_WAKE
-#define __TBB_FUTEX_WAKE FUTEX_WAKE
-#else
-#define __TBB_FUTEX_WAKE 1
-#endif
-
-#ifndef __TBB_ASSERT
-#error machine specific headers must be included after tbb_stddef.h
-#endif
-
-namespace tbb {
-
-namespace internal {
-
-inline int futex_wait( void *futex, int comparand ) {
-    int r = ::syscall( SYS_futex,futex,__TBB_FUTEX_WAIT,comparand,NULL,NULL,0 );
-#if TBB_USE_ASSERT
-    int e = errno;
-    __TBB_ASSERT( r==0||r==EWOULDBLOCK||(r==-1&&(e==EAGAIN||e==EINTR)), "futex_wait failed." );
-#endif /* TBB_USE_ASSERT */
-    return r;
-}
-
-inline int futex_wakeup_one( void *futex ) {
-    int r = ::syscall( SYS_futex,futex,__TBB_FUTEX_WAKE,1,NULL,NULL,0 );
-    __TBB_ASSERT( r==0||r==1, "futex_wakeup_one: more than one thread woken up?" );
-    return r;
-}
-
-inline int futex_wakeup_all( void *futex ) {
-    int r = ::syscall( SYS_futex,futex,__TBB_FUTEX_WAKE,INT_MAX,NULL,NULL,0 );
-    __TBB_ASSERT( r>=0, "futex_wakeup_all: error in waking up threads" );
-    return r;
-}
-
-} /* namespace internal */
-
-} /* namespace tbb */
-
-#endif /* SYS_futex */
diff --git a/dependencies64/tbb/include/tbb/machine/linux_ia32.h b/dependencies64/tbb/include/tbb/machine/linux_ia32.h
deleted file mode 100644 (file)
index 3218341..0000000
+++ /dev/null
@@ -1,236 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_linux_ia32_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_linux_ia32_H
-
-#include <stdint.h>
-#include <unistd.h>
-
-#define __TBB_WORDSIZE 4
-#define __TBB_BIG_ENDIAN 0
-
-#define __TBB_compiler_fence() __asm__ __volatile__("": : :"memory")
-#define __TBB_control_consistency_helper() __TBB_compiler_fence()
-#define __TBB_acquire_consistency_helper() __TBB_compiler_fence()
-#define __TBB_release_consistency_helper() __TBB_compiler_fence()
-#define __TBB_full_memory_fence()          __asm__ __volatile__("mfence": : :"memory")
-
-#if __TBB_ICC_ASM_VOLATILE_BROKEN
-#define __TBB_VOLATILE
-#else
-#define __TBB_VOLATILE volatile
-#endif
-
-#define __TBB_MACHINE_DEFINE_ATOMICS(S,T,X,R)                                        \
-static inline T __TBB_machine_cmpswp##S (volatile void *ptr, T value, T comparand )  \
-{                                                                                    \
-    T result;                                                                        \
-                                                                                     \
-    __asm__ __volatile__("lock\ncmpxchg" X " %2,%1"                                  \
-                          : "=a"(result), "=m"(*(__TBB_VOLATILE T*)ptr)              \
-                          : "q"(value), "0"(comparand), "m"(*(__TBB_VOLATILE T*)ptr) \
-                          : "memory");                                               \
-    return result;                                                                   \
-}                                                                                    \
-                                                                                     \
-static inline T __TBB_machine_fetchadd##S(volatile void *ptr, T addend)              \
-{                                                                                    \
-    T result;                                                                        \
-    __asm__ __volatile__("lock\nxadd" X " %0,%1"                                     \
-                          : R (result), "=m"(*(__TBB_VOLATILE T*)ptr)                \
-                          : "0"(addend), "m"(*(__TBB_VOLATILE T*)ptr)                \
-                          : "memory");                                               \
-    return result;                                                                   \
-}                                                                                    \
-                                                                                     \
-static inline  T __TBB_machine_fetchstore##S(volatile void *ptr, T value)            \
-{                                                                                    \
-    T result;                                                                        \
-    __asm__ __volatile__("lock\nxchg" X " %0,%1"                                     \
-                          : R (result), "=m"(*(__TBB_VOLATILE T*)ptr)                \
-                          : "0"(value), "m"(*(__TBB_VOLATILE T*)ptr)                 \
-                          : "memory");                                               \
-    return result;                                                                   \
-}                                                                                    \
-                                                                                     
-__TBB_MACHINE_DEFINE_ATOMICS(1,int8_t,"","=q")
-__TBB_MACHINE_DEFINE_ATOMICS(2,int16_t,"","=r")
-__TBB_MACHINE_DEFINE_ATOMICS(4,int32_t,"l","=r")
-
-#if __INTEL_COMPILER
-#pragma warning( push )
-// reference to EBX in a function requiring stack alignment
-#pragma warning( disable: 998 )
-#endif
-
-static inline int64_t __TBB_machine_cmpswp8 (volatile void *ptr, int64_t value, int64_t comparand )
-{
-    int64_t result;
-    union {
-        int64_t i64;
-        int32_t i32[2];
-    };
-    i64 = value;
-#if __PIC__ 
-    /* compiling position-independent code */
-    // EBX register preserved for compliance with position-independent code rules on IA32
-    int32_t tmp;
-    __asm__ __volatile__ (
-            "movl  %%ebx,%2\n\t"
-            "movl  %5,%%ebx\n\t"
-#if __GNUC__==3
-            "lock\n\t cmpxchg8b %1\n\t"
-#else
-            "lock\n\t cmpxchg8b (%3)\n\t"
-#endif
-            "movl  %2,%%ebx"
-             : "=A"(result)
-             , "=m"(*(__TBB_VOLATILE int64_t *)ptr)
-             , "=m"(tmp)
-#if __GNUC__==3
-             : "m"(*(__TBB_VOLATILE int64_t *)ptr)
-#else
-             : "SD"(ptr)
-#endif
-             , "0"(comparand)
-             , "m"(i32[0]), "c"(i32[1])
-             : "memory"
-#if __INTEL_COMPILER
-             ,"ebx"
-#endif
-    );
-#else /* !__PIC__ */
-    __asm__ __volatile__ (
-            "lock\n\t cmpxchg8b %1\n\t"
-             : "=A"(result), "=m"(*(__TBB_VOLATILE int64_t *)ptr)
-             : "m"(*(__TBB_VOLATILE int64_t *)ptr)
-             , "0"(comparand)
-             , "b"(i32[0]), "c"(i32[1])
-             : "memory"
-    );
-#endif /* __PIC__ */
-    return result;
-}
-
-#if __INTEL_COMPILER
-#pragma warning( pop )
-#endif // warning 998 is back
-
-static inline int32_t __TBB_machine_lg( uint32_t x ) {
-    int32_t j;
-    __asm__ ("bsr %1,%0" : "=r"(j) : "r"(x));
-    return j;
-}
-
-static inline void __TBB_machine_or( volatile void *ptr, uint32_t addend ) {
-    __asm__ __volatile__("lock\norl %1,%0" : "=m"(*(__TBB_VOLATILE uint32_t *)ptr) : "r"(addend), "m"(*(__TBB_VOLATILE uint32_t *)ptr) : "memory");
-}
-
-static inline void __TBB_machine_and( volatile void *ptr, uint32_t addend ) {
-    __asm__ __volatile__("lock\nandl %1,%0" : "=m"(*(__TBB_VOLATILE uint32_t *)ptr) : "r"(addend), "m"(*(__TBB_VOLATILE uint32_t *)ptr) : "memory");
-}
-
-static inline void __TBB_machine_pause( int32_t delay ) {
-    for (int32_t i = 0; i < delay; i++) {
-       __asm__ __volatile__("pause;");
-    }
-    return;
-}   
-
-static inline int64_t __TBB_machine_load8 (const volatile void *ptr) {
-    int64_t result;
-    if( ((uint32_t)ptr&7u)==0 ) {
-        // Aligned load
-        __asm__ __volatile__ ( "fildq %1\n\t"
-                               "fistpq %0" :  "=m"(result) : "m"(*(const __TBB_VOLATILE uint64_t*)ptr) : "memory" );
-    } else {
-        // Unaligned load
-        result = __TBB_machine_cmpswp8(const_cast<void*>(ptr),0,0);
-    }
-    return result;
-}
-
-//! Handles misaligned 8-byte store
-/** Defined in tbb_misc.cpp */
-extern "C" void __TBB_machine_store8_slow( volatile void *ptr, int64_t value );
-extern "C" void __TBB_machine_store8_slow_perf_warning( volatile void *ptr );
-
-static inline void __TBB_machine_store8(volatile void *ptr, int64_t value) {
-    if( ((uint32_t)ptr&7u)==0 ) {
-        // Aligned store
-        __asm__ __volatile__ ( "fildq %1\n\t"
-                               "fistpq %0" :  "=m"(*(__TBB_VOLATILE int64_t*)ptr) : "m"(value) : "memory" );
-    } else {
-        // Unaligned store
-#if TBB_USE_PERFORMANCE_WARNINGS
-        __TBB_machine_store8_slow_perf_warning(ptr);
-#endif /* TBB_USE_PERFORMANCE_WARNINGS */
-        __TBB_machine_store8_slow(ptr,value);
-    }
-}
-// Machine specific atomic operations
-#define __TBB_AtomicOR(P,V) __TBB_machine_or(P,V)
-#define __TBB_AtomicAND(P,V) __TBB_machine_and(P,V)
-
-// Definition of other functions
-#define __TBB_Pause(V) __TBB_machine_pause(V)
-#define __TBB_Log2(V)  __TBB_machine_lg(V)
-
-#define __TBB_USE_GENERIC_DWORD_FETCH_ADD           1
-#define __TBB_USE_GENERIC_DWORD_FETCH_STORE         1
-#define __TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE   1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE    1
-#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE        1
-
-// API to retrieve/update FPU control setting
-#define __TBB_CPU_CTL_ENV_PRESENT 1
-
-struct __TBB_cpu_ctl_env_t {
-    int     mxcsr;
-    short   x87cw;
-};
-
-inline void __TBB_get_cpu_ctl_env ( __TBB_cpu_ctl_env_t* ctl ) {
-    __asm__ __volatile__ (
-            "stmxcsr %0\n\t"
-            "fstcw   %1"
-            : "=m"(ctl->mxcsr), "=m"(ctl->x87cw)
-    );
-}
-inline void __TBB_set_cpu_ctl_env ( const __TBB_cpu_ctl_env_t* ctl ) {
-    __asm__ __volatile__ (
-            "ldmxcsr %0\n\t"
-            "fldcw   %1"
-            : : "m"(ctl->mxcsr), "m"(ctl->x87cw)
-    );
-}
diff --git a/dependencies64/tbb/include/tbb/machine/linux_ia64.h b/dependencies64/tbb/include/tbb/machine/linux_ia64.h
deleted file mode 100644 (file)
index 7d92936..0000000
+++ /dev/null
@@ -1,188 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_linux_ia64_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_linux_ia64_H
-
-#include <stdint.h>
-#include <unistd.h>
-#include <ia64intrin.h>
-
-#define __TBB_WORDSIZE 8
-#define __TBB_BIG_ENDIAN 0
-
-#if __INTEL_COMPILER
-    #define __TBB_compiler_fence()
-    #define __TBB_control_consistency_helper() __TBB_compiler_fence()
-    #define __TBB_acquire_consistency_helper()
-    #define __TBB_release_consistency_helper()
-    #define __TBB_full_memory_fence()          __mf()
-#else
-    #define __TBB_compiler_fence() __asm__ __volatile__("": : :"memory")
-    #define __TBB_control_consistency_helper() __TBB_compiler_fence()
-    // Even though GCC imbues volatile loads with acquire semantics, it sometimes moves 
-    // loads over the acquire fence. The following helpers stop such incorrect code motion.
-    #define __TBB_acquire_consistency_helper() __TBB_compiler_fence()
-    #define __TBB_release_consistency_helper() __TBB_compiler_fence()
-    #define __TBB_full_memory_fence()          __asm__ __volatile__("mf": : :"memory")
-#endif /* !__INTEL_COMPILER */
-
-// Most of the functions will be in a .s file
-
-extern "C" {
-    int8_t __TBB_machine_fetchadd1__TBB_full_fence (volatile void *ptr, int8_t addend);
-    int8_t __TBB_machine_fetchadd1acquire(volatile void *ptr, int8_t addend);
-    int8_t __TBB_machine_fetchadd1release(volatile void *ptr, int8_t addend);
-
-    int16_t __TBB_machine_fetchadd2__TBB_full_fence (volatile void *ptr, int16_t addend);
-    int16_t __TBB_machine_fetchadd2acquire(volatile void *ptr, int16_t addend);
-    int16_t __TBB_machine_fetchadd2release(volatile void *ptr, int16_t addend);
-
-    int32_t __TBB_machine_fetchadd4__TBB_full_fence (volatile void *ptr, int32_t value);
-    int32_t __TBB_machine_fetchadd4acquire(volatile void *ptr, int32_t addend);
-    int32_t __TBB_machine_fetchadd4release(volatile void *ptr, int32_t addend);
-
-    int64_t __TBB_machine_fetchadd8__TBB_full_fence (volatile void *ptr, int64_t value);
-    int64_t __TBB_machine_fetchadd8acquire(volatile void *ptr, int64_t addend);
-    int64_t __TBB_machine_fetchadd8release(volatile void *ptr, int64_t addend);
-
-    int8_t __TBB_machine_fetchstore1__TBB_full_fence (volatile void *ptr, int8_t value);
-    int8_t __TBB_machine_fetchstore1acquire(volatile void *ptr, int8_t value);
-    int8_t __TBB_machine_fetchstore1release(volatile void *ptr, int8_t value);
-
-    int16_t __TBB_machine_fetchstore2__TBB_full_fence (volatile void *ptr, int16_t value);
-    int16_t __TBB_machine_fetchstore2acquire(volatile void *ptr, int16_t value);
-    int16_t __TBB_machine_fetchstore2release(volatile void *ptr, int16_t value);
-
-    int32_t __TBB_machine_fetchstore4__TBB_full_fence (volatile void *ptr, int32_t value);
-    int32_t __TBB_machine_fetchstore4acquire(volatile void *ptr, int32_t value);
-    int32_t __TBB_machine_fetchstore4release(volatile void *ptr, int32_t value);
-
-    int64_t __TBB_machine_fetchstore8__TBB_full_fence (volatile void *ptr, int64_t value);
-    int64_t __TBB_machine_fetchstore8acquire(volatile void *ptr, int64_t value);
-    int64_t __TBB_machine_fetchstore8release(volatile void *ptr, int64_t value);
-
-    int8_t __TBB_machine_cmpswp1__TBB_full_fence (volatile void *ptr, int8_t value, int8_t comparand); 
-    int8_t __TBB_machine_cmpswp1acquire(volatile void *ptr, int8_t value, int8_t comparand); 
-    int8_t __TBB_machine_cmpswp1release(volatile void *ptr, int8_t value, int8_t comparand); 
-
-    int16_t __TBB_machine_cmpswp2__TBB_full_fence (volatile void *ptr, int16_t value, int16_t comparand);
-    int16_t __TBB_machine_cmpswp2acquire(volatile void *ptr, int16_t value, int16_t comparand); 
-    int16_t __TBB_machine_cmpswp2release(volatile void *ptr, int16_t value, int16_t comparand); 
-
-    int32_t __TBB_machine_cmpswp4__TBB_full_fence (volatile void *ptr, int32_t value, int32_t comparand);
-    int32_t __TBB_machine_cmpswp4acquire(volatile void *ptr, int32_t value, int32_t comparand); 
-    int32_t __TBB_machine_cmpswp4release(volatile void *ptr, int32_t value, int32_t comparand); 
-
-    int64_t __TBB_machine_cmpswp8__TBB_full_fence (volatile void *ptr, int64_t value, int64_t comparand);
-    int64_t __TBB_machine_cmpswp8acquire(volatile void *ptr, int64_t value, int64_t comparand); 
-    int64_t __TBB_machine_cmpswp8release(volatile void *ptr, int64_t value, int64_t comparand); 
-
-    int64_t __TBB_machine_lg(uint64_t value);
-    void __TBB_machine_pause(int32_t delay);
-    bool __TBB_machine_trylockbyte( volatile unsigned char &ptr );
-    int64_t __TBB_machine_lockbyte( volatile unsigned char &ptr );
-
-    //! Retrieves the current RSE backing store pointer. IA64 specific.
-    void* __TBB_get_bsp();
-
-    int32_t __TBB_machine_load1_relaxed(const void *ptr);
-    int32_t __TBB_machine_load2_relaxed(const void *ptr);
-    int32_t __TBB_machine_load4_relaxed(const void *ptr);
-    int64_t __TBB_machine_load8_relaxed(const void *ptr);
-
-    void __TBB_machine_store1_relaxed(void *ptr, int32_t value);
-    void __TBB_machine_store2_relaxed(void *ptr, int32_t value);
-    void __TBB_machine_store4_relaxed(void *ptr, int32_t value);
-    void __TBB_machine_store8_relaxed(void *ptr, int64_t value);
-} // extern "C"
-
-// Mapping old entry points to the names corresponding to the new full_fence identifier.
-#define __TBB_machine_fetchadd1full_fence   __TBB_machine_fetchadd1__TBB_full_fence
-#define __TBB_machine_fetchadd2full_fence   __TBB_machine_fetchadd2__TBB_full_fence
-#define __TBB_machine_fetchadd4full_fence   __TBB_machine_fetchadd4__TBB_full_fence
-#define __TBB_machine_fetchadd8full_fence   __TBB_machine_fetchadd8__TBB_full_fence
-#define __TBB_machine_fetchstore1full_fence __TBB_machine_fetchstore1__TBB_full_fence
-#define __TBB_machine_fetchstore2full_fence __TBB_machine_fetchstore2__TBB_full_fence
-#define __TBB_machine_fetchstore4full_fence __TBB_machine_fetchstore4__TBB_full_fence
-#define __TBB_machine_fetchstore8full_fence __TBB_machine_fetchstore8__TBB_full_fence
-#define __TBB_machine_cmpswp1full_fence     __TBB_machine_cmpswp1__TBB_full_fence
-#define __TBB_machine_cmpswp2full_fence     __TBB_machine_cmpswp2__TBB_full_fence 
-#define __TBB_machine_cmpswp4full_fence     __TBB_machine_cmpswp4__TBB_full_fence
-#define __TBB_machine_cmpswp8full_fence     __TBB_machine_cmpswp8__TBB_full_fence
-
-// Mapping relaxed operations to the entry points implementing them.
-/** On IA64 RMW operations implicitly have acquire semantics. Thus one cannot
-    actually have completely relaxed RMW operation here. **/
-#define __TBB_machine_fetchadd1relaxed      __TBB_machine_fetchadd1acquire
-#define __TBB_machine_fetchadd2relaxed      __TBB_machine_fetchadd2acquire
-#define __TBB_machine_fetchadd4relaxed      __TBB_machine_fetchadd4acquire
-#define __TBB_machine_fetchadd8relaxed      __TBB_machine_fetchadd8acquire
-#define __TBB_machine_fetchstore1relaxed    __TBB_machine_fetchstore1acquire
-#define __TBB_machine_fetchstore2relaxed    __TBB_machine_fetchstore2acquire
-#define __TBB_machine_fetchstore4relaxed    __TBB_machine_fetchstore4acquire
-#define __TBB_machine_fetchstore8relaxed    __TBB_machine_fetchstore8acquire
-#define __TBB_machine_cmpswp1relaxed        __TBB_machine_cmpswp1acquire
-#define __TBB_machine_cmpswp2relaxed        __TBB_machine_cmpswp2acquire 
-#define __TBB_machine_cmpswp4relaxed        __TBB_machine_cmpswp4acquire
-#define __TBB_machine_cmpswp8relaxed        __TBB_machine_cmpswp8acquire
-
-#define __TBB_MACHINE_DEFINE_ATOMICS(S,V)                               \
-    template <typename T>                                               \
-    struct machine_load_store_relaxed<T,S> {                      \
-        static inline T load ( const T& location ) {                    \
-            return (T)__TBB_machine_load##S##_relaxed(&location);       \
-        }                                                               \
-        static inline void store ( T& location, T value ) {             \
-            __TBB_machine_store##S##_relaxed(&location, (V)value);      \
-        }                                                               \
-    }
-
-namespace tbb {
-namespace internal {
-    __TBB_MACHINE_DEFINE_ATOMICS(1,int8_t);
-    __TBB_MACHINE_DEFINE_ATOMICS(2,int16_t);
-    __TBB_MACHINE_DEFINE_ATOMICS(4,int32_t);
-    __TBB_MACHINE_DEFINE_ATOMICS(8,int64_t);
-}} // namespaces internal, tbb
-
-#undef __TBB_MACHINE_DEFINE_ATOMICS
-
-#define __TBB_USE_FENCED_ATOMICS 1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE 1
-
-// Definition of Lock functions
-#define __TBB_TryLockByte(P) __TBB_machine_trylockbyte(P)
-#define __TBB_LockByte(P)    __TBB_machine_lockbyte(P)
-
-// Definition of other utility functions
-#define __TBB_Pause(V) __TBB_machine_pause(V)
-#define __TBB_Log2(V)  __TBB_machine_lg(V)
diff --git a/dependencies64/tbb/include/tbb/machine/linux_intel64.h b/dependencies64/tbb/include/tbb/machine/linux_intel64.h
deleted file mode 100644 (file)
index 8e34e08..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_linux_intel64_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_linux_intel64_H
-
-#include <stdint.h>
-#include <unistd.h>
-
-#define __TBB_WORDSIZE 8
-#define __TBB_BIG_ENDIAN 0
-
-#define __TBB_compiler_fence() __asm__ __volatile__("": : :"memory")
-#define __TBB_control_consistency_helper() __TBB_compiler_fence()
-#define __TBB_acquire_consistency_helper() __TBB_compiler_fence()
-#define __TBB_release_consistency_helper() __TBB_compiler_fence()
-
-#ifndef __TBB_full_memory_fence
-#define __TBB_full_memory_fence() __asm__ __volatile__("mfence": : :"memory")
-#endif
-
-#define __TBB_MACHINE_DEFINE_ATOMICS(S,T,X)                                          \
-static inline T __TBB_machine_cmpswp##S (volatile void *ptr, T value, T comparand )  \
-{                                                                                    \
-    T result;                                                                        \
-                                                                                     \
-    __asm__ __volatile__("lock\ncmpxchg" X " %2,%1"                                  \
-                          : "=a"(result), "=m"(*(volatile T*)ptr)                    \
-                          : "q"(value), "0"(comparand), "m"(*(volatile T*)ptr)       \
-                          : "memory");                                               \
-    return result;                                                                   \
-}                                                                                    \
-                                                                                     \
-static inline T __TBB_machine_fetchadd##S(volatile void *ptr, T addend)              \
-{                                                                                    \
-    T result;                                                                        \
-    __asm__ __volatile__("lock\nxadd" X " %0,%1"                                     \
-                          : "=r"(result),"=m"(*(volatile T*)ptr)                     \
-                          : "0"(addend), "m"(*(volatile T*)ptr)                      \
-                          : "memory");                                               \
-    return result;                                                                   \
-}                                                                                    \
-                                                                                     \
-static inline  T __TBB_machine_fetchstore##S(volatile void *ptr, T value)            \
-{                                                                                    \
-    T result;                                                                        \
-    __asm__ __volatile__("lock\nxchg" X " %0,%1"                                     \
-                          : "=r"(result),"=m"(*(volatile T*)ptr)                     \
-                          : "0"(value), "m"(*(volatile T*)ptr)                       \
-                          : "memory");                                               \
-    return result;                                                                   \
-}                                                                                    \
-                                                                                     
-__TBB_MACHINE_DEFINE_ATOMICS(1,int8_t,"")
-__TBB_MACHINE_DEFINE_ATOMICS(2,int16_t,"")
-__TBB_MACHINE_DEFINE_ATOMICS(4,int32_t,"")
-__TBB_MACHINE_DEFINE_ATOMICS(8,int64_t,"q")
-
-#undef __TBB_MACHINE_DEFINE_ATOMICS
-
-static inline int64_t __TBB_machine_lg( uint64_t x ) {
-    int64_t j;
-    __asm__ ("bsr %1,%0" : "=r"(j) : "r"(x));
-    return j;
-}
-
-static inline void __TBB_machine_or( volatile void *ptr, uint64_t addend ) {
-    __asm__ __volatile__("lock\norq %1,%0" : "=m"(*(volatile uint64_t*)ptr) : "r"(addend), "m"(*(volatile uint64_t*)ptr) : "memory");
-}
-
-static inline void __TBB_machine_and( volatile void *ptr, uint64_t addend ) {
-    __asm__ __volatile__("lock\nandq %1,%0" : "=m"(*(volatile uint64_t*)ptr) : "r"(addend), "m"(*(volatile uint64_t*)ptr) : "memory");
-}
-
-#define __TBB_AtomicOR(P,V) __TBB_machine_or(P,V)
-#define __TBB_AtomicAND(P,V) __TBB_machine_and(P,V)
-
-// Definition of other functions
-#ifndef __TBB_Pause
-static inline void __TBB_machine_pause( int32_t delay ) {
-    for (int32_t i = 0; i < delay; i++) {
-       __asm__ __volatile__("pause;");
-    }
-    return;
-}
-#define __TBB_Pause(V) __TBB_machine_pause(V)
-#endif /* !__TBB_Pause */
-
-#define __TBB_Log2(V)  __TBB_machine_lg(V)
-
-#define __TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE   1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE    1
-#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE        1
-
-// API to retrieve/update FPU control setting
-#ifndef __TBB_CPU_CTL_ENV_PRESENT
-#define __TBB_CPU_CTL_ENV_PRESENT 1
-
-struct __TBB_cpu_ctl_env_t {
-    int     mxcsr;
-    short   x87cw;
-};
-
-inline void __TBB_get_cpu_ctl_env ( __TBB_cpu_ctl_env_t* ctl ) {
-#if __TBB_ICC_12_0_INL_ASM_FSTCW_BROKEN
-    __TBB_cpu_ctl_env_t loc_ctl;
-    __asm__ __volatile__ (
-            "stmxcsr %0\n\t"
-            "fstcw %1"
-            : "=m"(loc_ctl.mxcsr), "=m"(loc_ctl.x87cw)
-    );
-    *ctl = loc_ctl;
-#else
-    __asm__ __volatile__ (
-            "stmxcsr %0\n\t"
-            "fstcw %1"
-            : "=m"(ctl->mxcsr), "=m"(ctl->x87cw)
-    );
-#endif
-}
-inline void __TBB_set_cpu_ctl_env ( const __TBB_cpu_ctl_env_t* ctl ) {
-    __asm__ __volatile__ (
-            "ldmxcsr %0\n\t"
-            "fldcw %1"
-            : : "m"(ctl->mxcsr), "m"(ctl->x87cw)
-    );
-}
-#endif /* !__TBB_CPU_CTL_ENV_PRESENT */
diff --git a/dependencies64/tbb/include/tbb/machine/mac_ppc.h b/dependencies64/tbb/include/tbb/machine/mac_ppc.h
deleted file mode 100644 (file)
index bb7bd8a..0000000
+++ /dev/null
@@ -1,304 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_gcc_power_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_gcc_power_H
-
-#include <stdint.h>
-#include <unistd.h>
-
-// TODO: rename to gcc_power.h?
-// This file is for Power Architecture with compilers supporting GNU inline-assembler syntax (currently GNU g++ and IBM XL).
-// Note that XL V9.0 (sometimes?) has trouble dealing with empty input and/or clobber lists, so they should be avoided.
-
-#if __powerpc64__ || __ppc64__
-    // IBM XL documents __powerpc64__ (and __PPC64__).
-    // Apple documents __ppc64__ (with __ppc__ only on 32-bit).
-    #define __TBB_WORDSIZE 8
-#else
-    #define __TBB_WORDSIZE 4
-#endif
-
-// On Power Architecture, (lock-free) 64-bit atomics require 64-bit hardware:
-#if __TBB_WORDSIZE==8
-    // Do not change the following definition, because TBB itself will use 64-bit atomics in 64-bit builds.
-    #define __TBB_64BIT_ATOMICS 1
-#elif __bgp__
-    // Do not change the following definition on known 32-bit hardware.
-    #define __TBB_64BIT_ATOMICS 0
-#else
-    // To enable 64-bit atomics in 32-bit builds, set the value below to 1 instead of 0.
-    // You must make certain that the program will only use them on actual 64-bit hardware
-    // (which typically means that the entire program is only executed on such hardware),
-    // because their implementation involves machine instructions that are illegal elsewhere.
-    // The setting can be chosen independently per compilation unit,
-    // which also means that TBB itself does not need to be rebuilt.
-    // Alternatively (but only for the current architecture and TBB version),
-    // override the default as a predefined macro when invoking the compiler.
-    #ifndef __TBB_64BIT_ATOMICS
-    #define __TBB_64BIT_ATOMICS 0
-    #endif
-#endif
-
-inline int32_t __TBB_machine_cmpswp4 (volatile void *ptr, int32_t value, int32_t comparand )
-{
-    int32_t result;
-
-    __asm__ __volatile__("sync\n"
-                         "0:\n\t"
-                         "lwarx %[res],0,%[ptr]\n\t"     /* load w/ reservation */
-                         "cmpw %[res],%[cmp]\n\t"        /* compare against comparand */
-                         "bne- 1f\n\t"                   /* exit if not same */
-                         "stwcx. %[val],0,%[ptr]\n\t"    /* store new value */
-                         "bne- 0b\n"                     /* retry if reservation lost */
-                         "1:\n\t"                        /* the exit */
-                         "isync"
-                         : [res]"=&r"(result)
-                         , "+m"(* (int32_t*) ptr)        /* redundant with "memory" */
-                         : [ptr]"r"(ptr)
-                         , [val]"r"(value)
-                         , [cmp]"r"(comparand)
-                         : "memory"                      /* compiler full fence */
-                         , "cr0"                         /* clobbered by cmp and/or stwcx. */
-                         );
-    return result;
-}
-
-#if __TBB_WORDSIZE==8
-
-inline int64_t __TBB_machine_cmpswp8 (volatile void *ptr, int64_t value, int64_t comparand )
-{
-    int64_t result;
-    __asm__ __volatile__("sync\n"
-                         "0:\n\t"
-                         "ldarx %[res],0,%[ptr]\n\t"     /* load w/ reservation */
-                         "cmpd %[res],%[cmp]\n\t"        /* compare against comparand */
-                         "bne- 1f\n\t"                   /* exit if not same */
-                         "stdcx. %[val],0,%[ptr]\n\t"    /* store new value */
-                         "bne- 0b\n"                     /* retry if reservation lost */
-                         "1:\n\t"                        /* the exit */
-                         "isync"
-                         : [res]"=&r"(result)
-                         , "+m"(* (int64_t*) ptr)        /* redundant with "memory" */
-                         : [ptr]"r"(ptr)
-                         , [val]"r"(value)
-                         , [cmp]"r"(comparand)
-                         : "memory"                      /* compiler full fence */
-                         , "cr0"                         /* clobbered by cmp and/or stdcx. */
-                         );
-    return result;
-}
-
-#elif __TBB_64BIT_ATOMICS /* && __TBB_WORDSIZE==4 */
-
-inline int64_t __TBB_machine_cmpswp8 (volatile void *ptr, int64_t value, int64_t comparand )
-{
-    int64_t result;
-    int64_t value_register, comparand_register, result_register; // dummy variables to allocate registers
-    __asm__ __volatile__("sync\n\t"
-                         "ld %[val],%[valm]\n\t"
-                         "ld %[cmp],%[cmpm]\n"
-                         "0:\n\t"
-                         "ldarx %[res],0,%[ptr]\n\t"     /* load w/ reservation */
-                         "cmpd %[res],%[cmp]\n\t"        /* compare against comparand */
-                         "bne- 1f\n\t"                   /* exit if not same */
-                         "stdcx. %[val],0,%[ptr]\n\t"    /* store new value */
-                         "bne- 0b\n"                     /* retry if reservation lost */
-                         "1:\n\t"                        /* the exit */
-                         "std %[res],%[resm]\n\t"
-                         "isync"
-                         : [resm]"=m"(result)
-                         , [res] "=&r"(   result_register)
-                         , [val] "=&r"(    value_register)
-                         , [cmp] "=&r"(comparand_register)
-                         , "+m"(* (int64_t*) ptr)        /* redundant with "memory" */
-                         : [ptr] "r"(ptr)
-                         , [valm]"m"(value)
-                         , [cmpm]"m"(comparand)
-                         : "memory"                      /* compiler full fence */
-                         , "cr0"                         /* clobbered by cmpd and/or stdcx. */
-                         );
-    return result;
-}
-#endif /* __TBB_WORDSIZE==4 && __TBB_64BIT_ATOMICS */
-
-#define __TBB_MACHINE_DEFINE_LOAD_STORE(S,ldx,stx,cmpx)                                                       \
-    template <typename T>                                                                                     \
-    struct machine_load_store<T,S> {                                                                          \
-        static inline T load_with_acquire(const volatile T& location) {                                       \
-            T result;                                                                                         \
-            __asm__ __volatile__(ldx " %[res],0(%[ptr])\n"                                                    \
-                                 "0:\n\t"                                                                     \
-                                 cmpx " %[res],%[res]\n\t"                                                    \
-                                 "bne- 0b\n\t"                                                                \
-                                 "isync"                                                                      \
-                                 : [res]"=r"(result)                                                          \
-                                 : [ptr]"b"(&location) /* cannot use register 0 here */                       \
-                                 , "m"(location)       /* redundant with "memory" */                          \
-                                 : "memory"            /* compiler acquire fence */                           \
-                                 , "cr0"               /* clobbered by cmpw/cmpd */);                         \
-            return result;                                                                                    \
-        }                                                                                                     \
-        static inline void store_with_release(volatile T &location, T value) {                                \
-            __asm__ __volatile__("lwsync\n\t"                                                                 \
-                                 stx " %[val],0(%[ptr])"                                                      \
-                                 : "=m"(location)      /* redundant with "memory" */                          \
-                                 : [ptr]"b"(&location) /* cannot use register 0 here */                       \
-                                 , [val]"r"(value)                                                            \
-                                 : "memory"/*compiler release fence*/ /*(cr0 not affected)*/);                \
-        }                                                                                                     \
-    };                                                                                                        \
-                                                                                                              \
-    template <typename T>                                                                                     \
-    struct machine_load_store_relaxed<T,S> {                                                                  \
-        static inline T load (const __TBB_atomic T& location) {                                               \
-            T result;                                                                                         \
-            __asm__ __volatile__(ldx " %[res],0(%[ptr])"                                                      \
-                                 : [res]"=r"(result)                                                          \
-                                 : [ptr]"b"(&location) /* cannot use register 0 here */                       \
-                                 , "m"(location)                                                              \
-                                 ); /*(no compiler fence)*/ /*(cr0 not affected)*/                            \
-            return result;                                                                                    \
-        }                                                                                                     \
-        static inline void store (__TBB_atomic T &location, T value) {                                        \
-            __asm__ __volatile__(stx " %[val],0(%[ptr])"                                                      \
-                                 : "=m"(location)                                                             \
-                                 : [ptr]"b"(&location) /* cannot use register 0 here */                       \
-                                 , [val]"r"(value)                                                            \
-                                 ); /*(no compiler fence)*/ /*(cr0 not affected)*/                            \
-        }                                                                                                     \
-    };
-
-namespace tbb {
-namespace internal {
-    __TBB_MACHINE_DEFINE_LOAD_STORE(1,"lbz","stb","cmpw")
-    __TBB_MACHINE_DEFINE_LOAD_STORE(2,"lhz","sth","cmpw")
-    __TBB_MACHINE_DEFINE_LOAD_STORE(4,"lwz","stw","cmpw")
-
-#if __TBB_WORDSIZE==8
-
-    __TBB_MACHINE_DEFINE_LOAD_STORE(8,"ld" ,"std","cmpd")
-
-#elif __TBB_64BIT_ATOMICS /* && __TBB_WORDSIZE==4 */
-
-    template <typename T>
-    struct machine_load_store<T,8> {
-        static inline T load_with_acquire(const volatile T& location) {
-            T result;
-            T result_register; // dummy variable to allocate a register
-            __asm__ __volatile__("ld %[res],0(%[ptr])\n\t"
-                                 "std %[res],%[resm]\n"
-                                 "0:\n\t"
-                                 "cmpd %[res],%[res]\n\t"
-                                 "bne- 0b\n\t"
-                                 "isync"
-                                 : [resm]"=m"(result)
-                                 , [res]"=&r"(result_register)
-                                 : [ptr]"b"(&location) /* cannot use register 0 here */
-                                 , "m"(location)       /* redundant with "memory" */
-                                 : "memory"            /* compiler acquire fence */
-                                 , "cr0"               /* clobbered by cmpd */);
-            return result;
-        }
-
-        static inline void store_with_release(volatile T &location, T value) {
-            T value_register; // dummy variable to allocate a register
-            __asm__ __volatile__("lwsync\n\t"
-                                 "ld %[val],%[valm]\n\t"
-                                 "std %[val],0(%[ptr])"
-                                 : "=m"(location)      /* redundant with "memory" */
-                                 , [val]"=&r"(value_register)
-                                 : [ptr]"b"(&location) /* cannot use register 0 here */
-                                 , [valm]"m"(value)
-                                 : "memory"/*compiler release fence*/ /*(cr0 not affected)*/);
-        }
-    };
-
-    struct machine_load_store_relaxed<T,8> {
-        static inline T load (const volatile T& location) {
-            T result;
-            T result_register; // dummy variable to allocate a register
-            __asm__ __volatile__("ld %[res],0(%[ptr])\n\t"
-                                 "std %[res],%[resm]"
-                                 : [resm]"=m"(result)
-                                 , [res]"=&r"(result_register)
-                                 : [ptr]"b"(&location) /* cannot use register 0 here */
-                                 , "m"(location)
-                                 ); /*(no compiler fence)*/ /*(cr0 not affected)*/
-            return result;
-        }
-
-        static inline void store (volatile T &location, T value) {
-            T value_register; // dummy variable to allocate a register
-            __asm__ __volatile__("ld %[val],%[valm]\n\t"
-                                 "std %[val],0(%[ptr])"
-                                 : "=m"(location)
-                                 , [val]"=&r"(value_register)
-                                 : [ptr]"b"(&location) /* cannot use register 0 here */
-                                 , [valm]"m"(value)
-                                 ); /*(no compiler fence)*/ /*(cr0 not affected)*/
-        }
-    };
-    #define __TBB_machine_load_store_relaxed_8
-
-#endif /* __TBB_WORDSIZE==4 && __TBB_64BIT_ATOMICS */
-
-}} // namespaces internal, tbb
-
-#undef __TBB_MACHINE_DEFINE_LOAD_STORE
-
-#define __TBB_USE_GENERIC_PART_WORD_CAS 1
-#define __TBB_USE_GENERIC_FETCH_ADD     1
-#define __TBB_USE_GENERIC_FETCH_STORE   1
-
-#define __TBB_control_consistency_helper() __asm__ __volatile__("isync": : :"memory")
-#define __TBB_full_memory_fence()          __asm__ __volatile__( "sync": : :"memory")
-
-static inline intptr_t __TBB_machine_lg( uintptr_t x ) {
-    // cntlzd/cntlzw starts counting at 2^63/2^31 (ignoring any higher-order bits), and does not affect cr0
-#if __TBB_WORDSIZE==8
-    __asm__ __volatile__ ("cntlzd %0,%0" : "+r"(x));
-    return 63-static_cast<intptr_t>(x);
-#else
-    __asm__ __volatile__ ("cntlzw %0,%0" : "+r"(x));
-    return 31-static_cast<intptr_t>(x);
-#endif
-}
-#define __TBB_Log2(V) __TBB_machine_lg(V)
-
-// Assumes implicit alignment for any 32-bit value
-typedef uint32_t __TBB_Flag;
-#define __TBB_Flag __TBB_Flag
-
-inline bool __TBB_machine_trylockbyte( __TBB_atomic __TBB_Flag &flag ) {
-    return __TBB_machine_cmpswp4(&flag,1,0)==0;
-}
-#define __TBB_TryLockByte(P) __TBB_machine_trylockbyte(P)
diff --git a/dependencies64/tbb/include/tbb/machine/macos_common.h b/dependencies64/tbb/include/tbb/machine/macos_common.h
deleted file mode 100644 (file)
index dd12779..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_macos_common_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_macos_common_H
-
-#include <sched.h>
-#define __TBB_Yield()  sched_yield()
-
-// __TBB_HardwareConcurrency
-
-#include <sys/types.h>
-#include <sys/sysctl.h>
-
-static inline int __TBB_macos_available_cpu() {
-    int name[2] = {CTL_HW, HW_AVAILCPU};
-    int ncpu;
-    size_t size = sizeof(ncpu);
-    sysctl( name, 2, &ncpu, &size, NULL, 0 );
-    return ncpu;
-}
-
-#define __TBB_HardwareConcurrency() __TBB_macos_available_cpu()
-
-#ifndef __TBB_full_memory_fence
-    // TBB has not recognized the architecture (none of the architecture abstraction
-    // headers was included).
-    #define __TBB_UnknownArchitecture 1
-#endif
-
-#if __TBB_UnknownArchitecture || __TBB_WORDSIZE==4
-// In case of IA32 this is a workaround for compiler bugs triggered by inline
-// assembly implementation of __TBB_machine_cmpswp8 in linux_ia32.h, which may
-// lead to incorrect codegen (gcc) or compilation failures (any icc including 12.0.4).
-
-// Implementation of atomic operations based on OS provided primitives
-#include <libkern/OSAtomic.h>
-
-static inline int64_t __TBB_machine_cmpswp8_OsX(volatile void *ptr, int64_t value, int64_t comparand)
-{
-    __TBB_ASSERT( !((uintptr_t)ptr&0x7), "address not properly aligned for Mac OS atomics");
-    int64_t* address = (int64_t*)ptr;
-    while( !OSAtomicCompareAndSwap64Barrier(comparand, value, address) ){
-#if __TBB_WORDSIZE==8
-        int64_t snapshot = *address;
-#else
-        int64_t snapshot = OSAtomicAdd64( 0, address );
-#endif
-        if( snapshot!=comparand ) return snapshot;
-    }
-    return comparand;
-}
-
-#define __TBB_machine_cmpswp8 __TBB_machine_cmpswp8_OsX
-
-#endif /* __TBB_UnknownArchitecture || __TBB_WORDSIZE==4 */
-
-#if __TBB_UnknownArchitecture
-
-#ifndef __TBB_WORDSIZE
-#define __TBB_WORDSIZE 4
-#endif
-
-#define __TBB_BIG_ENDIAN __BIG_ENDIAN__
-
-/** As this generic implementation has absolutely no information about underlying
-    hardware, its performance most likely will be sub-optimal because of full memory
-    fence usages where a more lightweight synchronization means (or none at all)
-    could suffice. Thus if you use this header to enable TBB on a new platform,
-    consider forking it and relaxing below helpers as appropriate. **/
-#define __TBB_control_consistency_helper() OSMemoryBarrier()
-#define __TBB_acquire_consistency_helper() OSMemoryBarrier()
-#define __TBB_release_consistency_helper() OSMemoryBarrier()
-#define __TBB_full_memory_fence()          OSMemoryBarrier()
-
-static inline int32_t __TBB_machine_cmpswp4(volatile void *ptr, int32_t value, int32_t comparand)
-{
-    __TBB_ASSERT( !((uintptr_t)ptr&0x3), "address not properly aligned for Mac OS atomics");
-    int32_t* address = (int32_t*)ptr;
-    while( !OSAtomicCompareAndSwap32Barrier(comparand, value, address) ){
-        int32_t snapshot = *address;
-        if( snapshot!=comparand ) return snapshot;
-    }
-    return comparand;
-}
-
-static inline int32_t __TBB_machine_fetchadd4(volatile void *ptr, int32_t addend)
-{
-    __TBB_ASSERT( !((uintptr_t)ptr&0x3), "address not properly aligned for Mac OS atomics");
-    return OSAtomicAdd32Barrier(addend, (int32_t*)ptr) - addend;
-}
-
-static inline int64_t __TBB_machine_fetchadd8(volatile void *ptr, int64_t addend)
-{
-    __TBB_ASSERT( !((uintptr_t)ptr&0x7), "address not properly aligned for Mac OS atomics");
-    return OSAtomicAdd64Barrier(addend, (int64_t*)ptr) - addend;
-}
-
-#define __TBB_USE_GENERIC_PART_WORD_CAS             1
-#define __TBB_USE_GENERIC_PART_WORD_FETCH_ADD       1
-#define __TBB_USE_GENERIC_FETCH_STORE               1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE    1
-#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE        1
-#if __TBB_WORDSIZE == 4
-    #define __TBB_USE_GENERIC_DWORD_LOAD_STORE      1
-#endif
-
-#endif /* __TBB_UnknownArchitecture */
diff --git a/dependencies64/tbb/include/tbb/machine/sunos_sparc.h b/dependencies64/tbb/include/tbb/machine/sunos_sparc.h
deleted file mode 100644 (file)
index e6e8079..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_sunos_sparc_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_sunos_sparc_H
-
-#include <stdint.h>
-#include <unistd.h>
-
-#define __TBB_WORDSIZE 8
-#define __TBB_BIG_ENDIAN 1
-
-/** To those working on SPARC hardware. Consider relaxing acquire and release
-    consistency helpers to no-op (as this port covers TSO mode only). **/
-#define __TBB_compiler_fence()             __asm__ __volatile__ ("": : :"memory")
-#define __TBB_control_consistency_helper() __TBB_compiler_fence()
-#define __TBB_acquire_consistency_helper() __TBB_compiler_fence()
-#define __TBB_release_consistency_helper() __TBB_compiler_fence()
-#define __TBB_full_memory_fence()          __asm__ __volatile__("membar #LoadLoad|#LoadStore|#StoreStore|#StoreLoad": : : "memory")
-
-//--------------------------------------------------
-// Compare and swap
-//--------------------------------------------------
-
-/**
- * Atomic CAS for 32 bit values, if *ptr==comparand, then *ptr=value, returns *ptr
- * @param ptr pointer to value in memory to be swapped with value if *ptr==comparand
- * @param value value to assign *ptr to if *ptr==comparand
- * @param comparand value to compare with *ptr
- ( @return value originally in memory at ptr, regardless of success
-*/
-static inline int32_t __TBB_machine_cmpswp4(volatile void *ptr, int32_t value, int32_t comparand ){
-  int32_t result;
-  __asm__ __volatile__(
-                       "cas\t[%5],%4,%1"
-                       : "=m"(*(int32_t *)ptr), "=r"(result)
-                       : "m"(*(int32_t *)ptr), "1"(value), "r"(comparand), "r"(ptr)
-                       : "memory");
-  return result;
-}
-
-/**
- * Atomic CAS for 64 bit values, if *ptr==comparand, then *ptr=value, returns *ptr
- * @param ptr pointer to value in memory to be swapped with value if *ptr==comparand
- * @param value value to assign *ptr to if *ptr==comparand
- * @param comparand value to compare with *ptr
- ( @return value originally in memory at ptr, regardless of success
- */
-static inline int64_t __TBB_machine_cmpswp8(volatile void *ptr, int64_t value, int64_t comparand ){
-  int64_t result;
-  __asm__ __volatile__(
-                       "casx\t[%5],%4,%1"
-               : "=m"(*(int64_t *)ptr), "=r"(result)
-               : "m"(*(int64_t *)ptr), "1"(value), "r"(comparand), "r"(ptr)
-               : "memory");
-  return result;
-}
-
-//---------------------------------------------------
-// Fetch and add
-//---------------------------------------------------
-
-/**
- * Atomic fetch and add for 32 bit values, in this case implemented by continuously checking success of atomicity
- * @param ptr pointer to value to add addend to
- * @param addened value to add to *ptr
- * @return value at ptr before addened was added
- */
-static inline int32_t __TBB_machine_fetchadd4(volatile void *ptr, int32_t addend){
-  int32_t result;
-  __asm__ __volatile__ (                                 
-                        "0:\t add\t %3, %4, %0\n"    // do addition
-                        "\t cas\t [%2], %3, %0\n"        // cas to store result in memory
-                        "\t cmp\t %3, %0\n"            // check if value from memory is original
-                        "\t bne,a,pn\t %%icc, 0b\n"        // if not try again
-                        "\t mov %0, %3\n"            // use branch delay slot to move new value in memory to be added
-               : "=&r"(result), "=m"(*(int32_t *)ptr)
-               : "r"(ptr), "r"(*(int32_t *)ptr), "r"(addend), "m"(*(int32_t *)ptr)
-               : "ccr", "memory");
-  return result;
-}
-
-/**
- * Atomic fetch and add for 64 bit values, in this case implemented by continuously checking success of atomicity
- * @param ptr pointer to value to add addend to
- * @param addened value to add to *ptr
- * @return value at ptr before addened was added
- */
-static inline int64_t __TBB_machine_fetchadd8(volatile void *ptr, int64_t addend){
-  int64_t result;
-  __asm__ __volatile__ (
-                        "0:\t add\t %3, %4, %0\n"    // do addition
-                        "\t casx\t [%2], %3, %0\n"        // cas to store result in memory
-                        "\t cmp\t %3, %0\n"            // check if value from memory is original
-                        "\t bne,a,pn\t %%xcc, 0b\n"        // if not try again
-                        "\t mov %0, %3\n"            // use branch delay slot to move new value in memory to be added
-                : "=&r"(result), "=m"(*(int64_t *)ptr)
-                : "r"(ptr), "r"(*(int64_t *)ptr), "r"(addend), "m"(*(int64_t *)ptr)
-                : "ccr", "memory");
-  return result;
-}
-
-//--------------------------------------------------------
-// Logarithm (base two, integer)
-//--------------------------------------------------------
-
-static inline int64_t __TBB_machine_lg( uint64_t x ) {
-    uint64_t count;
-    // one hot encode
-    x |= (x >> 1);
-    x |= (x >> 2);
-    x |= (x >> 4);
-    x |= (x >> 8);
-    x |= (x >> 16);
-    x |= (x >> 32);
-    // count 1's
-    __asm__ ("popc %1, %0" : "=r"(count) : "r"(x) );
-    return count-1;
-}
-
-//--------------------------------------------------------
-
-static inline void __TBB_machine_or( volatile void *ptr, uint64_t addend ) {
-  __asm__ __volatile__ (
-                        "0:\t or\t %2, %3, %%g1\n" // do addition
-                        "\t casx\t [%1], %2, %%g1\n"            // cas to store result in memory
-                        "\t cmp\t %2, %%g1\n"                   // check if value from memory is original
-                        "\t bne,a,pn\t %%xcc, 0b\n" // if not try again
-                        "\t mov %%g1, %2\n"                     // use branch delay slot to move new value in memory to be added
-                : "=m"(*(int64_t *)ptr)
-                : "r"(ptr), "r"(*(int64_t *)ptr), "r"(addend), "m"(*(int64_t *)ptr)
-                : "ccr", "g1", "memory");
-}
-
-static inline void __TBB_machine_and( volatile void *ptr, uint64_t addend ) {
-  __asm__ __volatile__ (
-                        "0:\t and\t %2, %3, %%g1\n"        // do addition
-                        "\t casx\t [%1], %2, %%g1\n"            // cas to store result in memory
-                        "\t cmp\t %2, %%g1\n"                   // check if value from memory is original
-                        "\t bne,a,pn\t %%xcc, 0b\n"         // if not try again
-                        "\t mov %%g1, %2\n"                     // use branch delay slot to move new value in memory to be added
-                : "=m"(*(int64_t *)ptr)
-                : "r"(ptr), "r"(*(int64_t *)ptr), "r"(addend), "m"(*(int64_t *)ptr)
-                : "ccr", "g1", "memory");
-}
-
-
-static inline void __TBB_machine_pause( int32_t delay ) {
-    // do nothing, inlined, doesnt matter
-}
-
-// put 0xff in memory location, return memory value,
-//  generic trylockbyte puts 0x01, however this is fine
-//  because all that matters is that 0 is unlocked
-static inline bool __TBB_machine_trylockbyte(unsigned char &flag){
-    unsigned char result;
-    __asm__ __volatile__ (
-            "ldstub\t [%2], %0\n"
-        : "=r"(result), "=m"(flag)
-        : "r"(&flag), "m"(flag)
-        : "memory");
-    return result == 0;
-}
-
-#define __TBB_USE_GENERIC_PART_WORD_CAS             1
-#define __TBB_USE_GENERIC_PART_WORD_FETCH_ADD       1
-#define __TBB_USE_GENERIC_FETCH_STORE               1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE    1
-#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE        1
-
-#define __TBB_AtomicOR(P,V) __TBB_machine_or(P,V)
-#define __TBB_AtomicAND(P,V) __TBB_machine_and(P,V)
-
-// Definition of other functions
-#define __TBB_Pause(V) __TBB_machine_pause(V)
-#define __TBB_Log2(V)  __TBB_machine_lg(V)
-
-#define __TBB_TryLockByte(P) __TBB_machine_trylockbyte(P)
diff --git a/dependencies64/tbb/include/tbb/machine/windows_api.h b/dependencies64/tbb/include/tbb/machine/windows_api.h
deleted file mode 100644 (file)
index 3749560..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_machine_windows_api_H
-#define __TBB_machine_windows_api_H
-
-#if _WIN32 || _WIN64
-
-#if _XBOX
-
-#define NONET
-#define NOD3D
-#include <xtl.h>
-
-#else // Assume "usual" Windows
-
-#include <windows.h>
-
-#endif // _XBOX
-
-#if !defined(_WIN32_WINNT)
-// The following Windows API function is declared explicitly;
-// otherwise any user would have to specify /D_WIN32_WINNT=0x0400
-extern "C" BOOL WINAPI TryEnterCriticalSection( LPCRITICAL_SECTION );
-#endif
-
-#else
-#error tbb/machine/windows_api.h should only be used for Windows based platforms
-#endif // _WIN32 || _WIN64
-
-#endif // __TBB_machine_windows_api_H
diff --git a/dependencies64/tbb/include/tbb/machine/windows_ia32.h b/dependencies64/tbb/include/tbb/machine/windows_ia32.h
deleted file mode 100644 (file)
index 2902f18..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_windows_ia32_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_windows_ia32_H
-
-#define __TBB_WORDSIZE 4
-#define __TBB_BIG_ENDIAN 0
-
-#if __INTEL_COMPILER
-    #define __TBB_compiler_fence() __asm { __asm nop }
-#elif _MSC_VER >= 1300
-    extern "C" void _ReadWriteBarrier();
-    #pragma intrinsic(_ReadWriteBarrier)
-    #define __TBB_compiler_fence() _ReadWriteBarrier()
-#else
-    #error Unsupported compiler - need to define __TBB_{control,acquire,release}_consistency_helper to support it
-#endif
-
-#define __TBB_control_consistency_helper() __TBB_compiler_fence()
-#define __TBB_acquire_consistency_helper() __TBB_compiler_fence()
-#define __TBB_release_consistency_helper() __TBB_compiler_fence()
-#define __TBB_full_memory_fence()          __asm { __asm mfence }
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER)
-    // Workaround for overzealous compiler warnings in /Wp64 mode
-    #pragma warning (push)
-    #pragma warning (disable: 4244 4267)
-#endif
-
-extern "C" {
-    __int64 __TBB_EXPORTED_FUNC __TBB_machine_cmpswp8 (volatile void *ptr, __int64 value, __int64 comparand );
-    __int64 __TBB_EXPORTED_FUNC __TBB_machine_fetchadd8 (volatile void *ptr, __int64 addend );
-    __int64 __TBB_EXPORTED_FUNC __TBB_machine_fetchstore8 (volatile void *ptr, __int64 value );
-    void __TBB_EXPORTED_FUNC __TBB_machine_store8 (volatile void *ptr, __int64 value );
-    __int64 __TBB_EXPORTED_FUNC __TBB_machine_load8 (const volatile void *ptr);
-}
-
-#define __TBB_MACHINE_DEFINE_ATOMICS(S,T,U,A,C) \
-static inline T __TBB_machine_cmpswp##S ( volatile void * ptr, U value, U comparand ) { \
-    T result; \
-    volatile T *p = (T *)ptr; \
-    __asm \
-    { \
-       __asm mov edx, p \
-       __asm mov C , value \
-       __asm mov A , comparand \
-       __asm lock cmpxchg [edx], C \
-       __asm mov result, A \
-    } \
-    return result; \
-} \
-\
-static inline T __TBB_machine_fetchadd##S ( volatile void * ptr, U addend ) { \
-    T result; \
-    volatile T *p = (T *)ptr; \
-    __asm \
-    { \
-        __asm mov edx, p \
-        __asm mov A, addend \
-        __asm lock xadd [edx], A \
-        __asm mov result, A \
-    } \
-    return result; \
-}\
-\
-static inline T __TBB_machine_fetchstore##S ( volatile void * ptr, U value ) { \
-    T result; \
-    volatile T *p = (T *)ptr; \
-    __asm \
-    { \
-        __asm mov edx, p \
-        __asm mov A, value \
-        __asm lock xchg [edx], A \
-        __asm mov result, A \
-    } \
-    return result; \
-}
-
-
-__TBB_MACHINE_DEFINE_ATOMICS(1, __int8, __int8, al, cl)
-__TBB_MACHINE_DEFINE_ATOMICS(2, __int16, __int16, ax, cx)
-__TBB_MACHINE_DEFINE_ATOMICS(4, ptrdiff_t, ptrdiff_t, eax, ecx)
-
-#undef __TBB_MACHINE_DEFINE_ATOMICS
-
-static inline __int32 __TBB_machine_lg( unsigned __int64 i ) {
-    unsigned __int32 j;
-    __asm
-    {
-        bsr eax, i
-        mov j, eax
-    }
-    return j;
-}
-
-static inline void __TBB_machine_OR( volatile void *operand, __int32 addend ) {
-   __asm 
-   {
-       mov eax, addend
-       mov edx, [operand]
-       lock or [edx], eax
-   }
-}
-
-static inline void __TBB_machine_AND( volatile void *operand, __int32 addend ) {
-   __asm 
-   {
-       mov eax, addend
-       mov edx, [operand]
-       lock and [edx], eax
-   }
-}
-
-static inline void __TBB_machine_pause (__int32 delay ) {
-    _asm 
-    {
-        mov eax, delay
-      L1: 
-        pause
-        add eax, -1
-        jne L1  
-    }
-    return;
-}
-
-#define __TBB_AtomicOR(P,V) __TBB_machine_OR(P,V)
-#define __TBB_AtomicAND(P,V) __TBB_machine_AND(P,V)
-
-#define __TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE   1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE    1
-#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE        1
-
-// Definition of other functions
-extern "C" __declspec(dllimport) int __stdcall SwitchToThread( void );
-#define __TBB_Yield()  SwitchToThread()
-#define __TBB_Pause(V) __TBB_machine_pause(V)
-#define __TBB_Log2(V)  __TBB_machine_lg(V)
-
-#if defined(_MSC_VER)&&_MSC_VER<1400
-    static inline void* __TBB_machine_get_current_teb () {
-        void* pteb;
-        __asm mov eax, fs:[0x18]
-        __asm mov pteb, eax
-        return pteb;
-    }
-#endif
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER)
-    #pragma warning (pop)
-#endif // warnings 4244, 4267 are back
-
-// API to retrieve/update FPU control setting
-#define __TBB_CPU_CTL_ENV_PRESENT 1
-
-struct __TBB_cpu_ctl_env_t {
-    int     mxcsr;
-    short   x87cw;
-};
-inline void __TBB_get_cpu_ctl_env ( __TBB_cpu_ctl_env_t* ctl ) {
-    __asm {
-        __asm mov     eax, ctl
-        __asm stmxcsr [eax]
-        __asm fstcw   [eax+4]
-    }
-}
-inline void __TBB_set_cpu_ctl_env ( const __TBB_cpu_ctl_env_t* ctl ) {
-    __asm {
-        __asm mov     eax, ctl
-        __asm ldmxcsr [eax]
-        __asm fldcw   [eax+4]
-    }
-}
-
diff --git a/dependencies64/tbb/include/tbb/machine/windows_intel64.h b/dependencies64/tbb/include/tbb/machine/windows_intel64.h
deleted file mode 100644 (file)
index 4d86eaf..0000000
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_windows_intel64_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_windows_intel64_H
-
-#define __TBB_WORDSIZE 8
-#define __TBB_BIG_ENDIAN 0
-
-#include <intrin.h>
-
-#if !__INTEL_COMPILER
-    #pragma intrinsic(_InterlockedOr64)
-    #pragma intrinsic(_InterlockedAnd64)
-    #pragma intrinsic(_InterlockedCompareExchange)
-    #pragma intrinsic(_InterlockedCompareExchange64)
-    #pragma intrinsic(_InterlockedExchangeAdd)
-    #pragma intrinsic(_InterlockedExchangeAdd64)
-    #pragma intrinsic(_InterlockedExchange)
-    #pragma intrinsic(_InterlockedExchange64)
-#endif /* !defined(__INTEL_COMPILER) */
-
-#if __INTEL_COMPILER
-    #define __TBB_compiler_fence()    __asm { __asm nop }
-    #define __TBB_full_memory_fence() __asm { __asm mfence }
-#elif _MSC_VER >= 1300
-    extern "C" void _ReadWriteBarrier();
-    #pragma intrinsic(_ReadWriteBarrier)
-    #pragma intrinsic(_mm_mfence)
-    #define __TBB_compiler_fence()    _ReadWriteBarrier()
-    #define __TBB_full_memory_fence() _mm_mfence()
-#endif
-
-#define __TBB_control_consistency_helper() __TBB_compiler_fence()
-#define __TBB_acquire_consistency_helper() __TBB_compiler_fence()
-#define __TBB_release_consistency_helper() __TBB_compiler_fence()
-
-// ATTENTION: if you ever change argument types in machine-specific primitives,
-// please take care of atomic_word<> specializations in tbb/atomic.h
-extern "C" {
-    __int8 __TBB_EXPORTED_FUNC __TBB_machine_cmpswp1 (volatile void *ptr, __int8 value, __int8 comparand );
-    __int8 __TBB_EXPORTED_FUNC __TBB_machine_fetchadd1 (volatile void *ptr, __int8 addend );
-    __int8 __TBB_EXPORTED_FUNC __TBB_machine_fetchstore1 (volatile void *ptr, __int8 value );
-    __int16 __TBB_EXPORTED_FUNC __TBB_machine_cmpswp2 (volatile void *ptr, __int16 value, __int16 comparand );
-    __int16 __TBB_EXPORTED_FUNC __TBB_machine_fetchadd2 (volatile void *ptr, __int16 addend );
-    __int16 __TBB_EXPORTED_FUNC __TBB_machine_fetchstore2 (volatile void *ptr, __int16 value );
-    void __TBB_EXPORTED_FUNC __TBB_machine_pause (__int32 delay );
-}
-
-inline long __TBB_machine_cmpswp4 (volatile void *ptr, __int32 value, __int32 comparand ) {
-    return _InterlockedCompareExchange( (long*)ptr, value, comparand );
-}
-inline long __TBB_machine_fetchadd4 (volatile void *ptr, __int32 addend ) {
-    return _InterlockedExchangeAdd( (long*)ptr, addend );
-}
-inline long __TBB_machine_fetchstore4 (volatile void *ptr, __int32 value ) {
-    return _InterlockedExchange( (long*)ptr, value );
-}
-
-inline __int64 __TBB_machine_cmpswp8 (volatile void *ptr, __int64 value, __int64 comparand ) {
-    return _InterlockedCompareExchange64( (__int64*)ptr, value, comparand );
-}
-inline __int64 __TBB_machine_fetchadd8 (volatile void *ptr, __int64 addend ) {
-    return _InterlockedExchangeAdd64( (__int64*)ptr, addend );
-}
-inline __int64 __TBB_machine_fetchstore8 (volatile void *ptr, __int64 value ) {
-    return _InterlockedExchange64( (__int64*)ptr, value );
-}
-
-#define __TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE   1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE    1
-#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE        1
-
-#if !__INTEL_COMPILER
-extern "C" unsigned char _BitScanReverse64( unsigned long* i, unsigned __int64 w );
-#pragma intrinsic(_BitScanReverse64)
-#endif
-
-inline __int64 __TBB_machine_lg( unsigned __int64 i ) {
-#if __INTEL_COMPILER
-    unsigned __int64 j;
-    __asm
-    {
-        bsr rax, i
-        mov j, rax
-    }
-#else
-    unsigned long j;
-    _BitScanReverse64( &j, i );
-#endif
-    return j;
-}
-
-inline void __TBB_machine_OR( volatile void *operand, intptr_t addend ) {
-    _InterlockedOr64((__int64*)operand, addend); 
-}
-
-inline void __TBB_machine_AND( volatile void *operand, intptr_t addend ) {
-    _InterlockedAnd64((__int64*)operand, addend); 
-}
-
-#define __TBB_AtomicOR(P,V) __TBB_machine_OR(P,V)
-#define __TBB_AtomicAND(P,V) __TBB_machine_AND(P,V)
-
-extern "C" __declspec(dllimport) int __stdcall SwitchToThread( void );
-#define __TBB_Yield()  SwitchToThread()
-#define __TBB_Pause(V) __TBB_machine_pause(V)
-#define __TBB_Log2(V)  __TBB_machine_lg(V)
-
-// API to retrieve/update FPU control setting
-#define __TBB_CPU_CTL_ENV_PRESENT 1
-
-struct __TBB_cpu_ctl_env_t {
-    int     mxcsr;
-    short   x87cw;
-};
-
-extern "C" {
-    void __TBB_EXPORTED_FUNC __TBB_get_cpu_ctl_env ( __TBB_cpu_ctl_env_t* );
-    void __TBB_EXPORTED_FUNC __TBB_set_cpu_ctl_env ( const __TBB_cpu_ctl_env_t* );
-}
diff --git a/dependencies64/tbb/include/tbb/machine/xbox360_ppc.h b/dependencies64/tbb/include/tbb/machine/xbox360_ppc.h
deleted file mode 100644 (file)
index 382b4ef..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-// TODO: revise by comparing with mac_ppc.h
-
-#if !defined(__TBB_machine_H) || defined(__TBB_machine_xbox360_ppc_H)
-#error Do not #include this internal file directly; use public TBB headers instead.
-#endif
-
-#define __TBB_machine_xbox360_ppc_H
-
-#define NONET
-#define NOD3D
-#include "xtl.h"    
-#include "ppcintrinsics.h"
-
-#if _MSC_VER >= 1300
-extern "C" void _MemoryBarrier();
-#pragma intrinsic(_MemoryBarrier)
-#define __TBB_control_consistency_helper() __isync()
-#define __TBB_acquire_consistency_helper() _MemoryBarrier()
-#define __TBB_release_consistency_helper() _MemoryBarrier()
-#endif
-
-#define __TBB_full_memory_fence() __sync()
-
-#define __TBB_WORDSIZE 4
-#define __TBB_BIG_ENDIAN 1
-
-//todo: define __TBB_USE_FENCED_ATOMICS and define acquire/release primitives to maximize performance
-
-inline __int32 __TBB_machine_cmpswp4(volatile void *ptr, __int32 value, __int32 comparand ) {                               
- __sync();
- __int32 result = InterlockedCompareExchange((volatile LONG*)ptr, value, comparand);
- __isync();
- return result;
-}
-
-inline __int64 __TBB_machine_cmpswp8(volatile void *ptr, __int64 value, __int64 comparand )
-{
- __sync();
- __int64 result = InterlockedCompareExchange64((volatile LONG64*)ptr, value, comparand);
- __isync();
- return result;
-}
-
-#define __TBB_USE_GENERIC_PART_WORD_CAS             1
-#define __TBB_USE_GENERIC_FETCH_ADD                 1
-#define __TBB_USE_GENERIC_FETCH_STORE               1
-#define __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE    1
-#define __TBB_USE_GENERIC_RELAXED_LOAD_STORE        1
-#define __TBB_USE_GENERIC_DWORD_LOAD_STORE          1
-
-#pragma optimize( "", off )
-inline void __TBB_machine_pause (__int32 delay ) 
-{
- for (__int32 i=0; i<delay; i++) {;};
-}
-#pragma optimize( "", on ) 
-
-#define __TBB_Yield()  Sleep(0)
-#define __TBB_Pause(V) __TBB_machine_pause(V)
-
-// This port uses only 2 hardware threads for TBB on XBOX 360. 
-// Others are left to sound etc.
-// Change the following mask to allow TBB use more HW threads.
-static const int __TBB_XBOX360_HARDWARE_THREAD_MASK = 0x0C;
-
-static inline int __TBB_XBOX360_DetectNumberOfWorkers() 
-{
-     char a[__TBB_XBOX360_HARDWARE_THREAD_MASK];  //compile time assert - at least one bit should be set always
-     a[0]=0;
-
-     return ((__TBB_XBOX360_HARDWARE_THREAD_MASK >> 0) & 1) +
-            ((__TBB_XBOX360_HARDWARE_THREAD_MASK >> 1) & 1) +
-            ((__TBB_XBOX360_HARDWARE_THREAD_MASK >> 2) & 1) +
-            ((__TBB_XBOX360_HARDWARE_THREAD_MASK >> 3) & 1) +
-            ((__TBB_XBOX360_HARDWARE_THREAD_MASK >> 4) & 1) +
-            ((__TBB_XBOX360_HARDWARE_THREAD_MASK >> 5) & 1) + 1;  // +1 accomodates for the master thread
-}
-
-static inline int __TBB_XBOX360_GetHardwareThreadIndex(int workerThreadIndex)
-{
-    workerThreadIndex %= __TBB_XBOX360_DetectNumberOfWorkers()-1;
-    int m = __TBB_XBOX360_HARDWARE_THREAD_MASK;
-    int index = 0;
-    int skipcount = workerThreadIndex;
-    while (true)
-    {
-        if ((m & 1)!=0) 
-        {
-            if (skipcount==0) break;
-            skipcount--;
-        }
-        m >>= 1;
-       index++;
-    }
-    return index; 
-}
-
-#define __TBB_HardwareConcurrency() __TBB_XBOX360_DetectNumberOfWorkers()
diff --git a/dependencies64/tbb/include/tbb/memory_pool.h b/dependencies64/tbb/include/tbb/memory_pool.h
deleted file mode 100644 (file)
index 980a8bf..0000000
+++ /dev/null
@@ -1,259 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_memory_pool_H
-#define __TBB_memory_pool_H
-
-#if !TBB_PREVIEW_MEMORY_POOL
-#error Set TBB_PREVIEW_MEMORY_POOL to include memory_pool.h
-#endif
-/** @file */
-
-#include "scalable_allocator.h"
-#include "tbb_stddef.h"
-#include "tbb_machine.h" // TODO: Itanium requires linkage with TBB library
-#include <new> // std::bad_alloc
-
-#if __TBB_EXTRA_DEBUG
-#define __TBBMALLOC_ASSERT ASSERT
-#else
-#define __TBBMALLOC_ASSERT(a,b) ((void)0)
-#endif
-
-namespace tbb {
-namespace interface6 {
-//! @cond INTERNAL
-namespace internal {
-
-//! Base of thread-safe pool allocator for variable-size requests
-class pool_base : tbb::internal::no_copy {
-    // Pool interface is separate from standard allocator classes because it has
-    // to maintain internal state, no copy or assignment. Move and swap are possible.
-public:
-    //! Reset pool to reuse its memory (free all objects at once)
-    void recycle() { rml::pool_reset(my_pool); }
-
-    //! The "malloc" analogue to allocate block of memory of size bytes
-    void *malloc(size_t size) { return rml::pool_malloc(my_pool, size); }
-
-    //! The "free" analogue to discard a previously allocated piece of memory.
-    void free(void* ptr) { rml::pool_free(my_pool, ptr); }
-
-    //! The "realloc" analogue complementing pool_malloc.
-    // Enables some low-level optimization possibilities
-    void *realloc(void* ptr, size_t size) {
-        return rml::pool_realloc(my_pool, ptr, size);
-    }
-
-protected:
-    //! destroy pool - must be called in a child class
-    void destroy() { rml::pool_destroy(my_pool); }
-
-    rml::MemoryPool *my_pool;
-};
-
-} // namespace internal
-//! @endcond
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    // Workaround for erroneous "unreferenced parameter" warning in method destroy.
-    #pragma warning (push)
-    #pragma warning (disable: 4100)
-#endif
-
-//! Meets "allocator" requirements of ISO C++ Standard, Section 20.1.5
-/** @ingroup memory_allocation */
-template<typename T, typename P = internal::pool_base>
-class memory_pool_allocator {
-protected:
-    typedef P pool_type;
-    pool_type *my_pool;
-    template<typename U, typename R>
-    friend class memory_pool_allocator;
-    template<typename V, typename U, typename R>
-    friend bool operator==( const memory_pool_allocator<V,R>& a, const memory_pool_allocator<U,R>& b);
-    template<typename V, typename U, typename R>
-    friend bool operator!=( const memory_pool_allocator<V,R>& a, const memory_pool_allocator<U,R>& b);
-public:
-    typedef typename tbb::internal::allocator_type<T>::value_type value_type;
-    typedef value_type* pointer;
-    typedef const value_type* const_pointer;
-    typedef value_type& reference;
-    typedef const value_type& const_reference;
-    typedef size_t size_type;
-    typedef ptrdiff_t difference_type;
-    template<typename U> struct rebind {
-        typedef memory_pool_allocator<U, P> other;
-    };
-
-    memory_pool_allocator(pool_type &pool) throw() : my_pool(&pool) {}
-    memory_pool_allocator(const memory_pool_allocator& src) throw() : my_pool(src.my_pool) {}
-    template<typename U>
-    memory_pool_allocator(const memory_pool_allocator<U,P>& src) throw() : my_pool(src.my_pool) {}
-
-    pointer address(reference x) const { return &x; }
-    const_pointer address(const_reference x) const { return &x; }
-    
-    //! Allocate space for n objects.
-    pointer allocate( size_type n, const void* /*hint*/ = 0) {
-        return static_cast<pointer>( my_pool->malloc( n*sizeof(value_type) ) );
-    }
-    //! Free previously allocated block of memory.
-    void deallocate( pointer p, size_type ) {
-        my_pool->free(p);
-    }
-    //! Largest value for which method allocate might succeed.
-    size_type max_size() const throw() {
-        size_type max = static_cast<size_type>(-1) / sizeof (value_type);
-        return (max > 0 ? max : 1);
-    }
-    //! Copy-construct value at location pointed to by p.
-    void construct( pointer p, const value_type& value ) { ::new((void*)(p)) value_type(value); }
-
-    //! Destroy value at location pointed to by p.
-    void destroy( pointer p ) { p->~value_type(); }
-
-};
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    #pragma warning (pop)
-#endif // warning 4100 is back
-
-//! Analogous to std::allocator<void>, as defined in ISO C++ Standard, Section 20.4.1
-/** @ingroup memory_allocation */
-template<typename P> 
-class memory_pool_allocator<void, P> {
-public:
-    typedef P pool_type;
-    typedef void* pointer;
-    typedef const void* const_pointer;
-    typedef void value_type;
-    template<typename U> struct rebind {
-        typedef memory_pool_allocator<U, P> other;
-    };
-
-    memory_pool_allocator( pool_type &pool) throw() : my_pool(&pool) {}
-    memory_pool_allocator( const memory_pool_allocator& src) throw() : my_pool(src.my_pool) {}
-    template<typename U>
-    memory_pool_allocator(const memory_pool_allocator<U,P>& src) throw() : my_pool(src.my_pool) {}
-
-protected:
-    pool_type *my_pool;
-    template<typename U, typename R>
-    friend class memory_pool_allocator;
-    template<typename V, typename U, typename R>
-    friend bool operator==( const memory_pool_allocator<V,R>& a, const memory_pool_allocator<U,R>& b);
-    template<typename V, typename U, typename R>
-    friend bool operator!=( const memory_pool_allocator<V,R>& a, const memory_pool_allocator<U,R>& b);
-};
-
-template<typename T, typename U, typename P>
-inline bool operator==( const memory_pool_allocator<T,P>& a, const memory_pool_allocator<U,P>& b) {return a.my_pool==b.my_pool;}
-
-template<typename T, typename U, typename P>
-inline bool operator!=( const memory_pool_allocator<T,P>& a, const memory_pool_allocator<U,P>& b) {return a.my_pool!=b.my_pool;}
-
-
-//! Thread-safe growable pool allocator for variable-size requests
-template <typename Alloc>
-class memory_pool : public internal::pool_base {
-    Alloc my_alloc; // TODO: base-class optimization
-    static void *allocate_request(intptr_t pool_id, size_t & bytes);
-    static int deallocate_request(intptr_t pool_id, void*, size_t raw_bytes);
-
-public:
-    //! construct pool with underlying allocator
-    memory_pool(const Alloc &src = Alloc());
-
-    //! destroy pool
-    ~memory_pool() { destroy(); } // call the callbacks first and destroy my_alloc latter
-
-};
-
-class fixed_pool : public internal::pool_base {
-    void *my_buffer;
-    size_t my_size;
-    inline static void *allocate_request(intptr_t pool_id, size_t & bytes);
-
-public:
-    //! construct pool with underlying allocator
-    inline fixed_pool(void *buf, size_t size);
-    //! destroy pool
-    ~fixed_pool() { destroy(); }
-};
-
-//////////////// Implementation ///////////////
-
-template <typename Alloc>
-memory_pool<Alloc>::memory_pool(const Alloc &src) : my_alloc(src) {
-    rml::MemPoolPolicy args = {
-        allocate_request, deallocate_request, sizeof(typename Alloc::value_type)
-    };
-    my_pool = rml::pool_create(intptr_t(this), &args);
-    __TBBMALLOC_ASSERT(my_pool, "Pool is not created");
-    if( !my_pool ) __TBB_THROW(std::bad_alloc());
-}
-template <typename Alloc>
-void *memory_pool<Alloc>::allocate_request(intptr_t pool_id, size_t & bytes) {
-    memory_pool<Alloc> &self = *reinterpret_cast<memory_pool<Alloc>*>(pool_id);
-    const size_t unit_size = sizeof(typename Alloc::value_type);
-    __TBBMALLOC_ASSERT( 0 == bytes%unit_size, NULL);
-    void *ptr;
-    __TBB_TRY { ptr = self.my_alloc.allocate( bytes/unit_size ); }
-    __TBB_CATCH(...) { return 0; }
-    return ptr;
-}
-template <typename Alloc>
-int memory_pool<Alloc>::deallocate_request(intptr_t pool_id, void* raw_ptr, size_t raw_bytes) {
-    memory_pool<Alloc> &self = *reinterpret_cast<memory_pool<Alloc>*>(pool_id);
-    const size_t unit_size = sizeof(typename Alloc::value_type);
-    __TBBMALLOC_ASSERT( 0 == raw_bytes%unit_size, NULL);
-    self.my_alloc.deallocate( static_cast<typename Alloc::value_type*>(raw_ptr), raw_bytes/unit_size );
-    return 0;
-}
-inline fixed_pool::fixed_pool(void *buf, size_t size) : my_buffer(buf), my_size(size) {
-    rml::MemPoolPolicy args = { allocate_request, 0, size };
-    my_pool = rml::pool_create(intptr_t(this), &args);
-    __TBBMALLOC_ASSERT(my_pool, "Pool is not created");
-    if( !my_pool ) __TBB_THROW(std::bad_alloc());
-}
-inline void *fixed_pool::allocate_request(intptr_t pool_id, size_t & bytes) {
-    fixed_pool &self = *reinterpret_cast<fixed_pool*>(pool_id);
-    if( bytes > self.my_size || !__TBB_CompareAndSwapW(&self.my_size, 0, (bytes=self.my_size)) )
-        return 0; // all the memory was given already
-    return self.my_buffer;
-}
-
-} //namespace interface6
-using interface6::memory_pool_allocator;
-using interface6::memory_pool;
-using interface6::fixed_pool;
-} //namespace tbb
-
-#undef __TBBMALLOC_ASSERT
-#endif// __TBB_memory_pool_H
diff --git a/dependencies64/tbb/include/tbb/mutex.h b/dependencies64/tbb/include/tbb/mutex.h
deleted file mode 100644 (file)
index b45e67d..0000000
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_mutex_H
-#define __TBB_mutex_H
-
-#if _WIN32||_WIN64
-#include "machine/windows_api.h"
-#else
-#include <pthread.h>
-#endif /* _WIN32||_WIN64 */
-
-#include <new>
-#include "aligned_space.h"
-#include "tbb_stddef.h"
-#include "tbb_profiling.h"
-
-namespace tbb {
-
-//! Wrapper around the platform's native reader-writer lock.
-/** For testing purposes only.
-    @ingroup synchronization */
-class mutex {
-public:
-    //! Construct unacquired mutex.
-    mutex() {
-#if TBB_USE_ASSERT || TBB_USE_THREADING_TOOLS
-    internal_construct();
-#else
-  #if _WIN32||_WIN64
-        InitializeCriticalSection(&impl);
-  #else
-        int error_code = pthread_mutex_init(&impl,NULL);
-        if( error_code )
-            tbb::internal::handle_perror(error_code,"mutex: pthread_mutex_init failed");
-  #endif /* _WIN32||_WIN64*/
-#endif /* TBB_USE_ASSERT */
-    };
-
-    ~mutex() {
-#if TBB_USE_ASSERT
-        internal_destroy();
-#else
-  #if _WIN32||_WIN64
-        DeleteCriticalSection(&impl);
-  #else
-        pthread_mutex_destroy(&impl); 
-
-  #endif /* _WIN32||_WIN64 */
-#endif /* TBB_USE_ASSERT */
-    };
-
-    class scoped_lock;
-    friend class scoped_lock;
-
-    //! The scoped locking pattern
-    /** It helps to avoid the common problem of forgetting to release lock.
-        It also nicely provides the "node" for queuing locks. */
-    class scoped_lock : internal::no_copy {
-    public:
-        //! Construct lock that has not acquired a mutex. 
-        scoped_lock() : my_mutex(NULL) {};
-
-        //! Acquire lock on given mutex.
-        scoped_lock( mutex& mutex ) {
-            acquire( mutex );
-        }
-
-        //! Release lock (if lock is held).
-        ~scoped_lock() {
-            if( my_mutex ) 
-                release();
-        }
-
-        //! Acquire lock on given mutex.
-        void acquire( mutex& mutex ) {
-#if TBB_USE_ASSERT
-            internal_acquire(mutex);
-#else
-            mutex.lock();
-            my_mutex = &mutex;
-#endif /* TBB_USE_ASSERT */
-        }
-
-        //! Try acquire lock on given mutex.
-        bool try_acquire( mutex& mutex ) {
-#if TBB_USE_ASSERT
-            return internal_try_acquire (mutex);
-#else
-            bool result = mutex.try_lock();
-            if( result )
-                my_mutex = &mutex;
-            return result;
-#endif /* TBB_USE_ASSERT */
-        }
-
-        //! Release lock
-        void release() {
-#if TBB_USE_ASSERT
-            internal_release ();
-#else
-            my_mutex->unlock();
-            my_mutex = NULL;
-#endif /* TBB_USE_ASSERT */
-        }
-
-    private:
-        //! The pointer to the current mutex to work
-        mutex* my_mutex;
-
-        //! All checks from acquire using mutex.state were moved here
-        void __TBB_EXPORTED_METHOD internal_acquire( mutex& m );
-
-        //! All checks from try_acquire using mutex.state were moved here
-        bool __TBB_EXPORTED_METHOD internal_try_acquire( mutex& m );
-
-        //! All checks from release using mutex.state were moved here
-        void __TBB_EXPORTED_METHOD internal_release();
-
-        friend class mutex;
-    };
-
-    // Mutex traits
-    static const bool is_rw_mutex = false;
-    static const bool is_recursive_mutex = false;
-    static const bool is_fair_mutex = false;
-
-    // ISO C++0x compatibility methods
-
-    //! Acquire lock
-    void lock() {
-#if TBB_USE_ASSERT
-        aligned_space<scoped_lock,1> tmp;
-        new(tmp.begin()) scoped_lock(*this);
-#else
-  #if _WIN32||_WIN64
-        EnterCriticalSection(&impl);
-  #else
-        pthread_mutex_lock(&impl);
-  #endif /* _WIN32||_WIN64 */
-#endif /* TBB_USE_ASSERT */
-    }
-
-    //! Try acquiring lock (non-blocking)
-    /** Return true if lock acquired; false otherwise. */
-    bool try_lock() {
-#if TBB_USE_ASSERT
-        aligned_space<scoped_lock,1> tmp;
-        scoped_lock& s = *tmp.begin();
-        s.my_mutex = NULL;
-        return s.internal_try_acquire(*this);
-#else
-  #if _WIN32||_WIN64
-        return TryEnterCriticalSection(&impl)!=0;
-  #else
-        return pthread_mutex_trylock(&impl)==0;
-  #endif /* _WIN32||_WIN64 */
-#endif /* TBB_USE_ASSERT */
-    }
-
-    //! Release lock
-    void unlock() {
-#if TBB_USE_ASSERT
-        aligned_space<scoped_lock,1> tmp;
-        scoped_lock& s = *tmp.begin();
-        s.my_mutex = this;
-        s.internal_release();
-#else
-  #if _WIN32||_WIN64
-        LeaveCriticalSection(&impl);
-  #else
-        pthread_mutex_unlock(&impl);
-  #endif /* _WIN32||_WIN64 */
-#endif /* TBB_USE_ASSERT */
-    }
-
-    //! Return native_handle
-  #if _WIN32||_WIN64
-    typedef LPCRITICAL_SECTION native_handle_type;
-  #else
-    typedef pthread_mutex_t* native_handle_type;
-  #endif
-    native_handle_type native_handle() { return (native_handle_type) &impl; }
-
-    enum state_t {
-        INITIALIZED=0x1234,
-        DESTROYED=0x789A,
-        HELD=0x56CD
-    };
-private:
-#if _WIN32||_WIN64
-    CRITICAL_SECTION impl;    
-    enum state_t state;
-#else
-    pthread_mutex_t impl;
-#endif /* _WIN32||_WIN64 */
-
-    //! All checks from mutex constructor using mutex.state were moved here
-    void __TBB_EXPORTED_METHOD internal_construct();
-
-    //! All checks from mutex destructor using mutex.state were moved here
-    void __TBB_EXPORTED_METHOD internal_destroy();
-
-#if _WIN32||_WIN64
-public:
-    //!  Set the internal state
-    void set_state( state_t to ) { state = to; }
-#endif
-};
-
-__TBB_DEFINE_PROFILING_SET_NAME(mutex)
-
-} // namespace tbb 
-
-#endif /* __TBB_mutex_H */
diff --git a/dependencies64/tbb/include/tbb/null_mutex.h b/dependencies64/tbb/include/tbb/null_mutex.h
deleted file mode 100644 (file)
index b233b4b..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_null_mutex_H
-#define __TBB_null_mutex_H
-
-namespace tbb {
-    
-//! A mutex which does nothing
-/** A null_mutex does no operation and simulates success.
-    @ingroup synchronization */
-class null_mutex {   
-    //! Deny assignment and copy construction 
-    null_mutex( const null_mutex& );   
-    void operator=( const null_mutex& );   
-public:   
-    //! Represents acquisition of a mutex.
-    class scoped_lock {   
-    public:   
-        scoped_lock() {}
-        scoped_lock( null_mutex& ) {}   
-        ~scoped_lock() {}
-        void acquire( null_mutex& ) {}
-        bool try_acquire( null_mutex& ) { return true; }
-        void release() {}
-    };
-  
-    null_mutex() {}
-    
-    // Mutex traits   
-    static const bool is_rw_mutex = false;   
-    static const bool is_recursive_mutex = true;
-    static const bool is_fair_mutex = true;
-};  
-
-}
-
-#endif /* __TBB_null_mutex_H */
diff --git a/dependencies64/tbb/include/tbb/null_rw_mutex.h b/dependencies64/tbb/include/tbb/null_rw_mutex.h
deleted file mode 100644 (file)
index d7e51cf..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_null_rw_mutex_H
-#define __TBB_null_rw_mutex_H
-
-namespace tbb {
-    
-//! A rw mutex which does nothing
-/** A null_rw_mutex is a rw mutex that does nothing and simulates successful operation.
-    @ingroup synchronization */
-class null_rw_mutex {
-    //! Deny assignment and copy construction 
-    null_rw_mutex( const null_rw_mutex& );   
-    void operator=( const null_rw_mutex& );   
-public:   
-    //! Represents acquisition of a mutex.
-    class scoped_lock {   
-    public:   
-        scoped_lock() {}
-        scoped_lock( null_rw_mutex& , bool = true ) {}
-        ~scoped_lock() {}
-        void acquire( null_rw_mutex& , bool = true ) {}
-        bool upgrade_to_writer() { return true; }
-        bool downgrade_to_reader() { return true; }
-        bool try_acquire( null_rw_mutex& , bool = true ) { return true; }
-        void release() {}
-    };
-  
-    null_rw_mutex() {}
-    
-    // Mutex traits   
-    static const bool is_rw_mutex = true;   
-    static const bool is_recursive_mutex = true;
-    static const bool is_fair_mutex = true;
-};  
-
-}
-
-#endif /* __TBB_null_rw_mutex_H */
diff --git a/dependencies64/tbb/include/tbb/parallel_do.h b/dependencies64/tbb/include/tbb/parallel_do.h
deleted file mode 100644 (file)
index f54d3b3..0000000
+++ /dev/null
@@ -1,508 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_parallel_do_H
-#define __TBB_parallel_do_H
-
-#include "task.h"
-#include "aligned_space.h"
-#include <iterator>
-
-namespace tbb {
-
-//! @cond INTERNAL
-namespace internal {
-    template<typename Body, typename Item> class parallel_do_feeder_impl;
-    template<typename Body> class do_group_task;
-
-    //! Strips its template type argument from 'cv' and '&' qualifiers
-    template<typename T>
-    struct strip { typedef T type; };
-    template<typename T>
-    struct strip<T&> { typedef T type; };
-    template<typename T>
-    struct strip<const T&> { typedef T type; };
-    template<typename T>
-    struct strip<volatile T&> { typedef T type; };
-    template<typename T>
-    struct strip<const volatile T&> { typedef T type; };
-    // Most of the compilers remove cv-qualifiers from non-reference function argument types. 
-    // But unfortunately there are those that don't.
-    template<typename T>
-    struct strip<const T> { typedef T type; };
-    template<typename T>
-    struct strip<volatile T> { typedef T type; };
-    template<typename T>
-    struct strip<const volatile T> { typedef T type; };
-} // namespace internal
-//! @endcond
-
-//! Class the user supplied algorithm body uses to add new tasks
-/** \param Item Work item type **/
-template<typename Item>
-class parallel_do_feeder: internal::no_copy
-{
-    parallel_do_feeder() {}
-    virtual ~parallel_do_feeder () {}
-    virtual void internal_add( const Item& item ) = 0;
-    template<typename Body_, typename Item_> friend class internal::parallel_do_feeder_impl;
-public:
-    //! Add a work item to a running parallel_do.
-    void add( const Item& item ) {internal_add(item);}
-};
-
-//! @cond INTERNAL
-namespace internal {
-    //! For internal use only.
-    /** Selects one of the two possible forms of function call member operator.
-        @ingroup algorithms **/
-    template<class Body, typename Item>
-    class parallel_do_operator_selector
-    {
-        typedef parallel_do_feeder<Item> Feeder;
-        template<typename A1, typename A2, typename CvItem >
-        static void internal_call( const Body& obj, A1& arg1, A2&, void (Body::*)(CvItem) const ) {
-            obj(arg1);
-        }
-        template<typename A1, typename A2, typename CvItem >
-        static void internal_call( const Body& obj, A1& arg1, A2& arg2, void (Body::*)(CvItem, parallel_do_feeder<Item>&) const ) {
-            obj(arg1, arg2);
-        }
-
-    public:
-        template<typename A1, typename A2 >
-        static void call( const Body& obj, A1& arg1, A2& arg2 )
-        {
-            internal_call( obj, arg1, arg2, &Body::operator() );
-        }
-    };
-
-    //! For internal use only.
-    /** Executes one iteration of a do.
-        @ingroup algorithms */
-    template<typename Body, typename Item>
-    class do_iteration_task: public task
-    {
-        typedef parallel_do_feeder_impl<Body, Item> feeder_type;
-
-        Item my_value;
-        feeder_type& my_feeder;
-
-        do_iteration_task( const Item& value, feeder_type& feeder ) : 
-            my_value(value), my_feeder(feeder)
-        {}
-
-        /*override*/ 
-        task* execute()
-        {
-            parallel_do_operator_selector<Body, Item>::call(*my_feeder.my_body, my_value, my_feeder);
-            return NULL;
-        }
-
-        template<typename Body_, typename Item_> friend class parallel_do_feeder_impl;
-    }; // class do_iteration_task
-
-    template<typename Iterator, typename Body, typename Item>
-    class do_iteration_task_iter: public task
-    {
-        typedef parallel_do_feeder_impl<Body, Item> feeder_type;
-
-        Iterator my_iter;
-        feeder_type& my_feeder;
-
-        do_iteration_task_iter( const Iterator& iter, feeder_type& feeder ) : 
-            my_iter(iter), my_feeder(feeder)
-        {}
-
-        /*override*/ 
-        task* execute()
-        {
-            parallel_do_operator_selector<Body, Item>::call(*my_feeder.my_body, *my_iter, my_feeder);
-            return NULL;
-        }
-
-        template<typename Iterator_, typename Body_, typename Item_> friend class do_group_task_forward;    
-        template<typename Body_, typename Item_> friend class do_group_task_input;    
-        template<typename Iterator_, typename Body_, typename Item_> friend class do_task_iter;    
-    }; // class do_iteration_task_iter
-
-    //! For internal use only.
-    /** Implements new task adding procedure.
-        @ingroup algorithms **/
-    template<class Body, typename Item>
-    class parallel_do_feeder_impl : public parallel_do_feeder<Item>
-    {
-        /*override*/ 
-        void internal_add( const Item& item )
-        {
-            typedef do_iteration_task<Body, Item> iteration_type;
-
-            iteration_type& t = *new (task::allocate_additional_child_of(*my_barrier)) iteration_type(item, *this);
-
-            t.spawn( t );
-        }
-    public:
-        const Body* my_body;
-        empty_task* my_barrier;
-
-        parallel_do_feeder_impl()
-        {
-            my_barrier = new( task::allocate_root() ) empty_task();
-            __TBB_ASSERT(my_barrier, "root task allocation failed");
-        }
-
-#if __TBB_TASK_GROUP_CONTEXT
-        parallel_do_feeder_impl(tbb::task_group_context &context)
-        {
-            my_barrier = new( task::allocate_root(context) ) empty_task();
-            __TBB_ASSERT(my_barrier, "root task allocation failed");
-        }
-#endif
-
-        ~parallel_do_feeder_impl()
-        {
-            my_barrier->destroy(*my_barrier);
-        }
-    }; // class parallel_do_feeder_impl
-
-
-    //! For internal use only
-    /** Unpacks a block of iterations.
-        @ingroup algorithms */
-    
-    template<typename Iterator, typename Body, typename Item>
-    class do_group_task_forward: public task
-    {
-        static const size_t max_arg_size = 4;         
-
-        typedef parallel_do_feeder_impl<Body, Item> feeder_type;
-
-        feeder_type& my_feeder;
-        Iterator my_first;
-        size_t my_size;
-        
-        do_group_task_forward( Iterator first, size_t size, feeder_type& feeder ) 
-            : my_feeder(feeder), my_first(first), my_size(size)
-        {}
-
-        /*override*/ task* execute()
-        {
-            typedef do_iteration_task_iter<Iterator, Body, Item> iteration_type;
-            __TBB_ASSERT( my_size>0, NULL );
-            task_list list;
-            task* t; 
-            size_t k=0; 
-            for(;;) {
-                t = new( allocate_child() ) iteration_type( my_first, my_feeder );
-                ++my_first;
-                if( ++k==my_size ) break;
-                list.push_back(*t);
-            }
-            set_ref_count(int(k+1));
-            spawn(list);
-            spawn_and_wait_for_all(*t);
-            return NULL;
-        }
-
-        template<typename Iterator_, typename Body_, typename _Item> friend class do_task_iter;
-    }; // class do_group_task_forward
-
-    template<typename Body, typename Item>
-    class do_group_task_input: public task
-    {
-        static const size_t max_arg_size = 4;         
-        
-        typedef parallel_do_feeder_impl<Body, Item> feeder_type;
-
-        feeder_type& my_feeder;
-        size_t my_size;
-        aligned_space<Item, max_arg_size> my_arg;
-
-        do_group_task_input( feeder_type& feeder ) 
-            : my_feeder(feeder), my_size(0)
-        {}
-
-        /*override*/ task* execute()
-        {
-            typedef do_iteration_task_iter<Item*, Body, Item> iteration_type;
-            __TBB_ASSERT( my_size>0, NULL );
-            task_list list;
-            task* t; 
-            size_t k=0; 
-            for(;;) {
-                t = new( allocate_child() ) iteration_type( my_arg.begin() + k, my_feeder );
-                if( ++k==my_size ) break;
-                list.push_back(*t);
-            }
-            set_ref_count(int(k+1));
-            spawn(list);
-            spawn_and_wait_for_all(*t);
-            return NULL;
-        }
-
-        ~do_group_task_input(){
-            for( size_t k=0; k<my_size; ++k)
-                (my_arg.begin() + k)->~Item();
-        }
-
-        template<typename Iterator_, typename Body_, typename Item_> friend class do_task_iter;
-    }; // class do_group_task_input
-    
-    //! For internal use only.
-    /** Gets block of iterations and packages them into a do_group_task.
-        @ingroup algorithms */
-    template<typename Iterator, typename Body, typename Item>
-    class do_task_iter: public task
-    {
-        typedef parallel_do_feeder_impl<Body, Item> feeder_type;
-
-    public:
-        do_task_iter( Iterator first, Iterator last , feeder_type& feeder ) : 
-            my_first(first), my_last(last), my_feeder(feeder)
-        {}
-
-    private:
-        Iterator my_first;
-        Iterator my_last;
-        feeder_type& my_feeder;
-
-        /* Do not merge run(xxx) and run_xxx() methods. They are separated in order
-            to make sure that compilers will eliminate unused argument of type xxx
-            (that is will not put it on stack). The sole purpose of this argument 
-            is overload resolution.
-            
-            An alternative could be using template functions, but explicit specialization 
-            of member function templates is not supported for non specialized class 
-            templates. Besides template functions would always fall back to the least 
-            efficient variant (the one for input iterators) in case of iterators having 
-            custom tags derived from basic ones. */
-        /*override*/ task* execute()
-        {
-            typedef typename std::iterator_traits<Iterator>::iterator_category iterator_tag;
-            return run( (iterator_tag*)NULL );
-        }
-
-        /** This is the most restricted variant that operates on input iterators or
-            iterators with unknown tags (tags not derived from the standard ones). **/
-        inline task* run( void* ) { return run_for_input_iterator(); }
-        
-        task* run_for_input_iterator() {
-            typedef do_group_task_input<Body, Item> block_type;
-
-            block_type& t = *new( allocate_additional_child_of(*my_feeder.my_barrier) ) block_type(my_feeder);
-            size_t k=0; 
-            while( !(my_first == my_last) ) {
-                new (t.my_arg.begin() + k) Item(*my_first);
-                ++my_first;
-                if( ++k==block_type::max_arg_size ) {
-                    if ( !(my_first == my_last) )
-                        recycle_to_reexecute();
-                    break;
-                }
-            }
-            if( k==0 ) {
-                destroy(t);
-                return NULL;
-            } else {
-                t.my_size = k;
-                return &t;
-            }
-        }
-
-        inline task* run( std::forward_iterator_tag* ) { return run_for_forward_iterator(); }
-
-        task* run_for_forward_iterator() {
-            typedef do_group_task_forward<Iterator, Body, Item> block_type;
-
-            Iterator first = my_first;
-            size_t k=0; 
-            while( !(my_first==my_last) ) {
-                ++my_first;
-                if( ++k==block_type::max_arg_size ) {
-                    if ( !(my_first==my_last) )
-                        recycle_to_reexecute();
-                    break;
-                }
-            }
-            return k==0 ? NULL : new( allocate_additional_child_of(*my_feeder.my_barrier) ) block_type(first, k, my_feeder);
-        }
-        
-        inline task* run( std::random_access_iterator_tag* ) { return run_for_random_access_iterator(); }
-
-        task* run_for_random_access_iterator() {
-            typedef do_group_task_forward<Iterator, Body, Item> block_type;
-            typedef do_iteration_task_iter<Iterator, Body, Item> iteration_type;
-            
-            size_t k = static_cast<size_t>(my_last-my_first); 
-            if( k > block_type::max_arg_size ) {
-                Iterator middle = my_first + k/2;
-
-                empty_task& c = *new( allocate_continuation() ) empty_task;
-                do_task_iter& b = *new( c.allocate_child() ) do_task_iter(middle, my_last, my_feeder);
-                recycle_as_child_of(c);
-
-                my_last = middle;
-                c.set_ref_count(2);
-                c.spawn(b);
-                return this;
-            }else if( k != 0 ) {
-                task_list list;
-                task* t; 
-                size_t k1=0; 
-                for(;;) {
-                    t = new( allocate_child() ) iteration_type(my_first, my_feeder);
-                    ++my_first;
-                    if( ++k1==k ) break;
-                    list.push_back(*t);
-                }
-                set_ref_count(int(k+1));
-                spawn(list);
-                spawn_and_wait_for_all(*t);
-            }
-            return NULL;
-        }
-    }; // class do_task_iter
-
-    //! For internal use only.
-    /** Implements parallel iteration over a range.
-        @ingroup algorithms */
-    template<typename Iterator, typename Body, typename Item> 
-    void run_parallel_do( Iterator first, Iterator last, const Body& body
-#if __TBB_TASK_GROUP_CONTEXT
-        , task_group_context& context
-#endif
-        )
-    {
-        typedef do_task_iter<Iterator, Body, Item> root_iteration_task;
-#if __TBB_TASK_GROUP_CONTEXT
-        parallel_do_feeder_impl<Body, Item> feeder(context);
-#else
-        parallel_do_feeder_impl<Body, Item> feeder;
-#endif
-        feeder.my_body = &body;
-
-        root_iteration_task &t = *new( feeder.my_barrier->allocate_child() ) root_iteration_task(first, last, feeder);
-
-        feeder.my_barrier->set_ref_count(2);
-        feeder.my_barrier->spawn_and_wait_for_all(t);
-    }
-
-    //! For internal use only.
-    /** Detects types of Body's operator function arguments.
-        @ingroup algorithms **/
-    template<typename Iterator, typename Body, typename Item> 
-    void select_parallel_do( Iterator first, Iterator last, const Body& body, void (Body::*)(Item) const
-#if __TBB_TASK_GROUP_CONTEXT
-        , task_group_context& context 
-#endif // __TBB_TASK_GROUP_CONTEXT 
-        )
-    {
-        run_parallel_do<Iterator, Body, typename strip<Item>::type>( first, last, body
-#if __TBB_TASK_GROUP_CONTEXT
-            , context
-#endif // __TBB_TASK_GROUP_CONTEXT 
-            );
-    }
-
-    //! For internal use only.
-    /** Detects types of Body's operator function arguments.
-        @ingroup algorithms **/
-    template<typename Iterator, typename Body, typename Item, typename _Item> 
-    void select_parallel_do( Iterator first, Iterator last, const Body& body, void (Body::*)(Item, parallel_do_feeder<_Item>&) const
-#if __TBB_TASK_GROUP_CONTEXT
-        , task_group_context& context 
-#endif // __TBB_TASK_GROUP_CONTEXT
-        )
-    {
-        run_parallel_do<Iterator, Body, typename strip<Item>::type>( first, last, body
-#if __TBB_TASK_GROUP_CONTEXT
-            , context
-#endif // __TBB_TASK_GROUP_CONTEXT
-            );
-    }
-
-} // namespace internal
-//! @endcond
-
-
-/** \page parallel_do_body_req Requirements on parallel_do body
-    Class \c Body implementing the concept of parallel_do body must define:
-    - \code 
-        B::operator()( 
-                cv_item_type item,
-                parallel_do_feeder<item_type>& feeder
-        ) const
-        
-        OR
-
-        B::operator()( cv_item_type& item ) const
-      \endcode                                                      Process item. 
-                                                                    May be invoked concurrently  for the same \c this but different \c item.
-                                                        
-    - \code item_type( const item_type& ) \endcode 
-                                                                    Copy a work item.
-    - \code ~item_type() \endcode                            Destroy a work item
-**/
-
-/** \name parallel_do
-    See also requirements on \ref parallel_do_body_req "parallel_do Body". **/
-//@{
-//! Parallel iteration over a range, with optional addition of more work.
-/** @ingroup algorithms */
-template<typename Iterator, typename Body> 
-void parallel_do( Iterator first, Iterator last, const Body& body )
-{
-    if ( first == last )
-        return;
-#if __TBB_TASK_GROUP_CONTEXT
-    task_group_context context;
-#endif // __TBB_TASK_GROUP_CONTEXT
-    internal::select_parallel_do( first, last, body, &Body::operator()
-#if __TBB_TASK_GROUP_CONTEXT
-        , context
-#endif // __TBB_TASK_GROUP_CONTEXT
-        );
-}
-
-#if __TBB_TASK_GROUP_CONTEXT
-//! Parallel iteration over a range, with optional addition of more work and user-supplied context
-/** @ingroup algorithms */
-template<typename Iterator, typename Body> 
-void parallel_do( Iterator first, Iterator last, const Body& body, task_group_context& context  )
-{
-    if ( first == last )
-        return;
-    internal::select_parallel_do( first, last, body, &Body::operator(), context );
-}
-#endif // __TBB_TASK_GROUP_CONTEXT
-
-//@}
-
-} // namespace 
-
-#endif /* __TBB_parallel_do_H */
diff --git a/dependencies64/tbb/include/tbb/parallel_for.h b/dependencies64/tbb/include/tbb/parallel_for.h
deleted file mode 100644 (file)
index 5b998fd..0000000
+++ /dev/null
@@ -1,267 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_parallel_for_H
-#define __TBB_parallel_for_H
-
-#include <new>
-#include "task.h"
-#include "partitioner.h"
-#include "blocked_range.h"
-#include "tbb_exception.h"
-
-namespace tbb {
-
-namespace interface6 {
-//! @cond INTERNAL
-namespace internal {
-
-    //! Task type used in parallel_for
-    /** @ingroup algorithms */
-    template<typename Range, typename Body, typename Partitioner>
-    class start_for: public task {
-        Range my_range;
-        const Body my_body;
-        typename Partitioner::task_partition_type my_partition;
-        /*override*/ task* execute();
-
-    public:
-        //! Constructor for root task.
-        start_for( const Range& range, const Body& body, Partitioner& partitioner ) :
-            my_range(range),    
-            my_body(body),
-            my_partition(partitioner)
-        {
-        }
-        //! Splitting constructor used to generate children.
-        /** parent_ becomes left child.  Newly constructed object is right child. */
-        start_for( start_for& parent_, split ) :
-            my_range(parent_.my_range,split()),
-            my_body(parent_.my_body),
-            my_partition(parent_.my_partition, split())
-        {
-            my_partition.set_affinity(*this);
-        }
-        //! Construct right child from the given range as response to the demand.
-        /** parent_ remains left child.  Newly constructed object is right child. */
-        start_for( start_for& parent_, const Range& r, depth_t d ) :
-            my_range(r),
-            my_body(parent_.my_body),
-            my_partition(parent_.my_partition,split())
-        {
-            my_partition.set_affinity(*this);
-            my_partition.align_depth( d );
-        }
-        //! Update affinity info, if any.
-        /*override*/ void note_affinity( affinity_id id ) {
-            my_partition.note_affinity( id );
-        }
-        static void run(  const Range& range, const Body& body, const Partitioner& partitioner ) {
-            if( !range.empty() ) {
-#if !__TBB_TASK_GROUP_CONTEXT || TBB_JOIN_OUTER_TASK_GROUP
-                start_for& a = *new(task::allocate_root()) start_for(range,body,const_cast<Partitioner&>(partitioner));
-#else
-                // Bound context prevents exceptions from body to affect nesting or sibling algorithms,
-                // and allows users to handle exceptions safely by wrapping parallel_for in the try-block.
-                task_group_context context;
-                start_for& a = *new(task::allocate_root(context)) start_for(range,body,const_cast<Partitioner&>(partitioner));
-#endif /* __TBB_TASK_GROUP_CONTEXT && !TBB_JOIN_OUTER_TASK_GROUP */
-                task::spawn_root_and_wait(a);
-            }
-        }
-#if __TBB_TASK_GROUP_CONTEXT
-        static void run(  const Range& range, const Body& body, const Partitioner& partitioner, task_group_context& context ) {
-            if( !range.empty() ) {
-                start_for& a = *new(task::allocate_root(context)) start_for(range,body,const_cast<Partitioner&>(partitioner));
-                task::spawn_root_and_wait(a);
-            }
-        }
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-        //! create a continuation task, serve as callback for partitioner
-        flag_task *create_continuation() {
-            return new( allocate_continuation() ) flag_task();
-        }
-        //! Run body for range
-        void run_body( Range &r ) { my_body( r ); }
-    };
-
-    template<typename Range, typename Body, typename Partitioner>
-    task* start_for<Range,Body,Partitioner>::execute() {
-        my_partition.check_being_stolen( *this );
-        my_partition.execute(*this, my_range);
-        return NULL;
-    } 
-} // namespace internal
-//! @endcond
-} // namespace interfaceX
-
-//! @cond INTERNAL
-namespace internal {
-    using interface6::internal::start_for;
-    
-    //! Calls the function with values from range [begin, end) with a step provided
-    template<typename Function, typename Index>
-    class parallel_for_body : internal::no_assign {
-        const Function &my_func;
-        const Index my_begin;
-        const Index my_step; 
-    public:
-        parallel_for_body( const Function& _func, Index& _begin, Index& _step) 
-            : my_func(_func), my_begin(_begin), my_step(_step) {}
-        
-        void operator()( tbb::blocked_range<Index>& r ) const {
-            for( Index i = r.begin(),  k = my_begin + i * my_step; i < r.end(); i++, k = k + my_step)
-                my_func( k );
-        }
-    };
-} // namespace internal
-//! @endcond
-
-// Requirements on Range concept are documented in blocked_range.h
-
-/** \page parallel_for_body_req Requirements on parallel_for body
-    Class \c Body implementing the concept of parallel_for body must define:
-    - \code Body::Body( const Body& ); \endcode                 Copy constructor
-    - \code Body::~Body(); \endcode                             Destructor
-    - \code void Body::operator()( Range& r ) const; \endcode   Function call operator applying the body to range \c r.
-**/
-
-/** \name parallel_for
-    See also requirements on \ref range_req "Range" and \ref parallel_for_body_req "parallel_for Body". **/
-//@{
-
-//! Parallel iteration over range with default partitioner. 
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body ) {
-    internal::start_for<Range,Body,__TBB_DEFAULT_PARTITIONER>::run(range,body,__TBB_DEFAULT_PARTITIONER());
-}
-
-//! Parallel iteration over range with simple partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body, const simple_partitioner& partitioner ) {
-    internal::start_for<Range,Body,simple_partitioner>::run(range,body,partitioner);
-}
-
-//! Parallel iteration over range with auto_partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body, const auto_partitioner& partitioner ) {
-    internal::start_for<Range,Body,auto_partitioner>::run(range,body,partitioner);
-}
-
-//! Parallel iteration over range with affinity_partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body, affinity_partitioner& partitioner ) {
-    internal::start_for<Range,Body,affinity_partitioner>::run(range,body,partitioner);
-}
-
-#if __TBB_TASK_GROUP_CONTEXT
-//! Parallel iteration over range with simple partitioner and user-supplied context.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body, const simple_partitioner& partitioner, task_group_context& context ) {
-    internal::start_for<Range,Body,simple_partitioner>::run(range, body, partitioner, context);
-}
-
-//! Parallel iteration over range with auto_partitioner and user-supplied context.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body, const auto_partitioner& partitioner, task_group_context& context ) {
-    internal::start_for<Range,Body,auto_partitioner>::run(range, body, partitioner, context);
-}
-
-//! Parallel iteration over range with affinity_partitioner and user-supplied context.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_for( const Range& range, const Body& body, affinity_partitioner& partitioner, task_group_context& context ) {
-    internal::start_for<Range,Body,affinity_partitioner>::run(range,body,partitioner, context);
-}
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-//@}
-
-namespace strict_ppl {
-
-//@{
-//! Parallel iteration over a range of integers with a step provided
-template <typename Index, typename Function>
-void parallel_for(Index first, Index last, Index step, const Function& f) {
-    if (step <= 0 )
-        internal::throw_exception(internal::eid_nonpositive_step); // throws std::invalid_argument
-    else if (last > first) {
-        // Above "else" avoids "potential divide by zero" warning on some platforms
-        Index end = (last - first - Index(1)) / step + Index(1);
-        tbb::blocked_range<Index> range(static_cast<Index>(0), end);
-        internal::parallel_for_body<Function, Index> body(f, first, step);
-        tbb::parallel_for(range, body, tbb::auto_partitioner());
-    }
-}
-//! Parallel iteration over a range of integers with a default step value
-template <typename Index, typename Function>
-void parallel_for(Index first, Index last, const Function& f) {
-    parallel_for(first, last, static_cast<Index>(1), f);
-}
-
-#if __TBB_TASK_GROUP_CONTEXT
-//! Parallel iteration over a range of integers with explicit step and task group context
-template <typename Index, typename Function>
-void parallel_for(Index first, Index last, Index step, const Function& f, tbb::task_group_context &context) {
-    if (step <= 0 )
-        internal::throw_exception(internal::eid_nonpositive_step); // throws std::invalid_argument
-    else if (last > first) {
-        // Above "else" avoids "potential divide by zero" warning on some platforms
-        Index end = (last - first - Index(1)) / step + Index(1);
-        tbb::blocked_range<Index> range(static_cast<Index>(0), end);
-        internal::parallel_for_body<Function, Index> body(f, first, step);
-        tbb::parallel_for(range, body, tbb::auto_partitioner(), context);
-    }
-}
-//! Parallel iteration over a range of integers with a default step value and explicit task group context
-template <typename Index, typename Function>
-void parallel_for(Index first, Index last, const Function& f, tbb::task_group_context &context) {
-    parallel_for(first, last, static_cast<Index>(1), f, context);
-}
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-//@}
-
-} // namespace strict_ppl
-
-using strict_ppl::parallel_for;
-
-} // namespace tbb
-
-#if TBB_PREVIEW_SERIAL_SUBSET
-#define __TBB_NORMAL_EXECUTION
-#include "../serial/tbb/parallel_for.h"
-#undef __TBB_NORMAL_EXECUTION
-#endif
-
-#endif /* __TBB_parallel_for_H */
-
diff --git a/dependencies64/tbb/include/tbb/parallel_for_each.h b/dependencies64/tbb/include/tbb/parallel_for_each.h
deleted file mode 100644 (file)
index 59200b1..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_parallel_for_each_H
-#define __TBB_parallel_for_each_H
-
-#include "parallel_do.h"
-
-namespace tbb {
-
-//! @cond INTERNAL
-namespace internal {
-    // The class calls user function in operator()
-    template <typename Function, typename Iterator>
-    class parallel_for_each_body : internal::no_assign {
-        const Function &my_func;
-    public:
-        parallel_for_each_body(const Function &_func) : my_func(_func) {}
-        parallel_for_each_body(const parallel_for_each_body<Function, Iterator> &_caller) : my_func(_caller.my_func) {}
-
-        void operator() ( typename std::iterator_traits<Iterator>::reference value ) const {
-            my_func(value);
-        }
-    };
-} // namespace internal
-//! @endcond
-
-/** \name parallel_for_each
-    **/
-//@{
-//! Calls function f for all items from [first, last) interval using user-supplied context
-/** @ingroup algorithms */
-#if __TBB_TASK_GROUP_CONTEXT
-template<typename InputIterator, typename Function>
-void parallel_for_each(InputIterator first, InputIterator last, const Function& f, task_group_context &context) {
-    internal::parallel_for_each_body<Function, InputIterator> body(f);
-    tbb::parallel_do (first, last, body, context);
-}
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-//! Uses default context
-template<typename InputIterator, typename Function>
-void parallel_for_each(InputIterator first, InputIterator last, const Function& f) {
-    internal::parallel_for_each_body<Function, InputIterator> body(f);
-    tbb::parallel_do (first, last, body);
-}
-
-//@}
-
-} // namespace
-
-#endif /* __TBB_parallel_for_each_H */
diff --git a/dependencies64/tbb/include/tbb/parallel_invoke.h b/dependencies64/tbb/include/tbb/parallel_invoke.h
deleted file mode 100644 (file)
index 6cc38e2..0000000
+++ /dev/null
@@ -1,371 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_parallel_invoke_H
-#define __TBB_parallel_invoke_H
-
-#include "task.h"
-
-namespace tbb {
-
-#if !__TBB_TASK_GROUP_CONTEXT
-    /** Dummy to avoid cluttering the bulk of the header with enormous amount of ifdefs. **/
-    struct task_group_context {};
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-//! @cond INTERNAL
-namespace internal {
-    // Simple task object, executing user method
-    template<typename function>
-    class function_invoker : public task{
-    public:
-        function_invoker(const function& _function) : my_function(_function) {}
-    private:
-        const function &my_function;
-        /*override*/
-        task* execute()
-        {
-            my_function();
-            return NULL;
-        }
-    };
-
-    // The class spawns two or three child tasks
-    template <size_t N, typename function1, typename function2, typename function3>
-    class spawner : public task {
-    private:
-        const function1& my_func1;
-        const function2& my_func2;
-        const function3& my_func3;
-        bool is_recycled;
-
-        task* execute (){
-            if(is_recycled){
-                return NULL;
-            }else{
-                __TBB_ASSERT(N==2 || N==3, "Number of arguments passed to spawner is wrong");
-                set_ref_count(N);
-                recycle_as_safe_continuation();
-                internal::function_invoker<function2>* invoker2 = new (allocate_child()) internal::function_invoker<function2>(my_func2);
-                __TBB_ASSERT(invoker2, "Child task allocation failed");
-                spawn(*invoker2);
-                size_t n = N; // To prevent compiler warnings
-                if (n>2) {
-                    internal::function_invoker<function3>* invoker3 = new (allocate_child()) internal::function_invoker<function3>(my_func3);
-                    __TBB_ASSERT(invoker3, "Child task allocation failed");
-                    spawn(*invoker3);
-                }
-                my_func1();
-                is_recycled = true;
-                return NULL;
-            }
-        } // execute
-
-    public:
-        spawner(const function1& _func1, const function2& _func2, const function3& _func3) : my_func1(_func1), my_func2(_func2), my_func3(_func3), is_recycled(false) {}
-    };
-
-    // Creates and spawns child tasks
-    class parallel_invoke_helper : public empty_task {
-    public:
-        // Dummy functor class
-        class parallel_invoke_noop {
-        public:
-            void operator() () const {}
-        };
-        // Creates a helper object with user-defined number of children expected
-        parallel_invoke_helper(int number_of_children)
-        {
-            set_ref_count(number_of_children + 1);
-        }
-        // Adds child task and spawns it
-        template <typename function>
-        void add_child (const function &_func)
-        {
-            internal::function_invoker<function>* invoker = new (allocate_child()) internal::function_invoker<function>(_func);
-            __TBB_ASSERT(invoker, "Child task allocation failed");
-            spawn(*invoker);
-        }
-
-        // Adds a task with multiple child tasks and spawns it
-        // two arguments
-        template <typename function1, typename function2>
-        void add_children (const function1& _func1, const function2& _func2)
-        {
-            // The third argument is dummy, it is ignored actually.
-            parallel_invoke_noop noop;
-            internal::spawner<2, function1, function2, parallel_invoke_noop>& sub_root = *new(allocate_child())internal::spawner<2, function1, function2, parallel_invoke_noop>(_func1, _func2, noop);
-            spawn(sub_root);
-        }
-        // three arguments
-        template <typename function1, typename function2, typename function3>
-        void add_children (const function1& _func1, const function2& _func2, const function3& _func3)
-        {
-            internal::spawner<3, function1, function2, function3>& sub_root = *new(allocate_child())internal::spawner<3, function1, function2, function3>(_func1, _func2, _func3);
-            spawn(sub_root);
-        }
-
-        // Waits for all child tasks
-        template <typename F0>
-        void run_and_finish(const F0& f0)
-        {
-            internal::function_invoker<F0>* invoker = new (allocate_child()) internal::function_invoker<F0>(f0);
-            __TBB_ASSERT(invoker, "Child task allocation failed");
-            spawn_and_wait_for_all(*invoker);
-        }
-    };
-    // The class destroys root if exception occured as well as in normal case
-    class parallel_invoke_cleaner: internal::no_copy { 
-    public:
-#if __TBB_TASK_GROUP_CONTEXT
-        parallel_invoke_cleaner(int number_of_children, tbb::task_group_context& context)
-            : root(*new(task::allocate_root(context)) internal::parallel_invoke_helper(number_of_children))
-#else
-        parallel_invoke_cleaner(int number_of_children, tbb::task_group_context&)
-            : root(*new(task::allocate_root()) internal::parallel_invoke_helper(number_of_children))
-#endif /* !__TBB_TASK_GROUP_CONTEXT */
-        {}
-
-        ~parallel_invoke_cleaner(){
-            root.destroy(root);
-        }
-        internal::parallel_invoke_helper& root;
-    };
-} // namespace internal
-//! @endcond
-
-/** \name parallel_invoke
-    **/
-//@{
-//! Executes a list of tasks in parallel and waits for all tasks to complete.
-/** @ingroup algorithms */
-
-// parallel_invoke with user-defined context
-// two arguments
-template<typename F0, typename F1 >
-void parallel_invoke(const F0& f0, const F1& f1, tbb::task_group_context& context) {
-    internal::parallel_invoke_cleaner cleaner(2, context);
-    internal::parallel_invoke_helper& root = cleaner.root;
-
-    root.add_child(f1);
-
-    root.run_and_finish(f0);
-}
-
-// three arguments
-template<typename F0, typename F1, typename F2 >
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, tbb::task_group_context& context) {
-    internal::parallel_invoke_cleaner cleaner(3, context);
-    internal::parallel_invoke_helper& root = cleaner.root;
-
-    root.add_child(f2);
-    root.add_child(f1);
-
-    root.run_and_finish(f0);
-}
-
-// four arguments
-template<typename F0, typename F1, typename F2, typename F3>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3,
-                     tbb::task_group_context& context)
-{
-    internal::parallel_invoke_cleaner cleaner(4, context);
-    internal::parallel_invoke_helper& root = cleaner.root;
-
-    root.add_child(f3);
-    root.add_child(f2);
-    root.add_child(f1);
-
-    root.run_and_finish(f0);
-}
-
-// five arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4 >
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4,
-                     tbb::task_group_context& context)
-{
-    internal::parallel_invoke_cleaner cleaner(3, context);
-    internal::parallel_invoke_helper& root = cleaner.root;
-
-    root.add_children(f4, f3);
-    root.add_children(f2, f1);
-
-    root.run_and_finish(f0);
-}
-
-// six arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4, typename F5>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4, const F5& f5,
-                     tbb::task_group_context& context)
-{
-    internal::parallel_invoke_cleaner cleaner(3, context);
-    internal::parallel_invoke_helper& root = cleaner.root;
-
-    root.add_children(f5, f4, f3);
-    root.add_children(f2, f1);
-
-    root.run_and_finish(f0);
-}
-
-// seven arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4, typename F5, typename F6>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4,
-                     const F5& f5, const F6& f6,
-                     tbb::task_group_context& context)
-{
-    internal::parallel_invoke_cleaner cleaner(3, context);
-    internal::parallel_invoke_helper& root = cleaner.root;
-
-    root.add_children(f6, f5, f4);
-    root.add_children(f3, f2, f1);
-
-    root.run_and_finish(f0);
-}
-
-// eight arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4,
-         typename F5, typename F6, typename F7>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4,
-                     const F5& f5, const F6& f6, const F7& f7,
-                     tbb::task_group_context& context)
-{
-    internal::parallel_invoke_cleaner cleaner(4, context);
-    internal::parallel_invoke_helper& root = cleaner.root;
-
-    root.add_children(f7, f6, f5);
-    root.add_children(f4, f3);
-    root.add_children(f2, f1);
-
-    root.run_and_finish(f0);
-}
-
-// nine arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4,
-         typename F5, typename F6, typename F7, typename F8>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4,
-                     const F5& f5, const F6& f6, const F7& f7, const F8& f8,
-                     tbb::task_group_context& context)
-{
-    internal::parallel_invoke_cleaner cleaner(4, context);
-    internal::parallel_invoke_helper& root = cleaner.root;
-
-    root.add_children(f8, f7, f6);
-    root.add_children(f5, f4, f3);
-    root.add_children(f2, f1);
-
-    root.run_and_finish(f0);
-}
-
-// ten arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4,
-         typename F5, typename F6, typename F7, typename F8, typename F9>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4,
-                     const F5& f5, const F6& f6, const F7& f7, const F8& f8, const F9& f9,
-                     tbb::task_group_context& context)
-{
-    internal::parallel_invoke_cleaner cleaner(4, context);
-    internal::parallel_invoke_helper& root = cleaner.root;
-
-    root.add_children(f9, f8, f7);
-    root.add_children(f6, f5, f4);
-    root.add_children(f3, f2, f1);
-
-    root.run_and_finish(f0);
-}
-
-// two arguments
-template<typename F0, typename F1>
-void parallel_invoke(const F0& f0, const F1& f1) {
-    task_group_context context;
-    parallel_invoke<F0, F1>(f0, f1, context);
-}
-// three arguments
-template<typename F0, typename F1, typename F2>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2) {
-    task_group_context context;
-    parallel_invoke<F0, F1, F2>(f0, f1, f2, context);
-}
-// four arguments
-template<typename F0, typename F1, typename F2, typename F3 >
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3) {
-    task_group_context context;
-    parallel_invoke<F0, F1, F2, F3>(f0, f1, f2, f3, context);
-}
-// five arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4) {
-    task_group_context context;
-    parallel_invoke<F0, F1, F2, F3, F4>(f0, f1, f2, f3, f4, context);
-}
-// six arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4, typename F5>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4, const F5& f5) {
-    task_group_context context;
-    parallel_invoke<F0, F1, F2, F3, F4, F5>(f0, f1, f2, f3, f4, f5, context);
-}
-// seven arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4, typename F5, typename F6>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4,
-                     const F5& f5, const F6& f6)
-{
-    task_group_context context;
-    parallel_invoke<F0, F1, F2, F3, F4, F5, F6>(f0, f1, f2, f3, f4, f5, f6, context);
-}
-// eigth arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4, 
-         typename F5, typename F6, typename F7>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4,
-                     const F5& f5, const F6& f6, const F7& f7)
-{
-    task_group_context context;
-    parallel_invoke<F0, F1, F2, F3, F4, F5, F6, F7>(f0, f1, f2, f3, f4, f5, f6, f7, context);
-}
-// nine arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4,
-         typename F5, typename F6, typename F7, typename F8>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4,
-                     const F5& f5, const F6& f6, const F7& f7, const F8& f8)
-{
-    task_group_context context;
-    parallel_invoke<F0, F1, F2, F3, F4, F5, F6, F7, F8>(f0, f1, f2, f3, f4, f5, f6, f7, f8, context);
-}
-// ten arguments
-template<typename F0, typename F1, typename F2, typename F3, typename F4,
-         typename F5, typename F6, typename F7, typename F8, typename F9>
-void parallel_invoke(const F0& f0, const F1& f1, const F2& f2, const F3& f3, const F4& f4,
-                     const F5& f5, const F6& f6, const F7& f7, const F8& f8, const F9& f9)
-{
-    task_group_context context;
-    parallel_invoke<F0, F1, F2, F3, F4, F5, F6, F7, F8, F9>(f0, f1, f2, f3, f4, f5, f6, f7, f8, f9, context);
-}
-
-//@}
-
-} // namespace
-
-#endif /* __TBB_parallel_invoke_H */
diff --git a/dependencies64/tbb/include/tbb/parallel_reduce.h b/dependencies64/tbb/include/tbb/parallel_reduce.h
deleted file mode 100644 (file)
index 12d17ca..0000000
+++ /dev/null
@@ -1,513 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_parallel_reduce_H
-#define __TBB_parallel_reduce_H
-
-#include <new>
-#include "task.h"
-#include "aligned_space.h"
-#include "partitioner.h"
-#include "tbb_profiling.h"
-
-namespace tbb {
-
-namespace interface6 {
-//! @cond INTERNAL
-namespace internal {
-
-    using namespace tbb::internal;
-
-    //! 0 if root, 1 if a left child, 2 if a right child.
-    /** Represented as a char, not enum, for compactness. */
-    typedef char reduction_context;
-
-    //! Task type use to combine the partial results of parallel_reduce.
-    /** @ingroup algorithms */
-    template<typename Body>
-    class finish_reduce: public flag_task {
-        //! Pointer to body, or NULL if the left child has not yet finished. 
-        bool has_right_zombie;
-        const reduction_context my_context;
-        Body* my_body;
-        aligned_space<Body,1> zombie_space;
-        finish_reduce( reduction_context context_ ) : 
-            has_right_zombie(false), // TODO: substitute by flag_task::child_stolen?
-            my_context(context_),
-            my_body(NULL)
-        {
-        }
-        task* execute() {
-            if( has_right_zombie ) {
-                // Right child was stolen.
-                Body* s = zombie_space.begin();
-                my_body->join( *s );
-                s->~Body();
-            }
-            if( my_context==1 )  // left child
-                itt_store_word_with_release( static_cast<finish_reduce*>(parent())->my_body, my_body );
-            return NULL;
-        }
-        template<typename Range,typename Body_, typename Partitioner>
-        friend class start_reduce;
-    };
-
-    //! Task type used to split the work of parallel_reduce.
-    /** @ingroup algorithms */
-    template<typename Range, typename Body, typename Partitioner>
-    class start_reduce: public task {
-        typedef finish_reduce<Body> finish_type;
-        Body* my_body;
-        Range my_range;
-        typename Partitioner::task_partition_type my_partition;
-        reduction_context my_context; // TODO: factor out into start_reduce_base
-        /*override*/ task* execute();
-        template<typename Body_>
-        friend class finish_reduce;
-    
-public:
-        //! Constructor used for root task
-        start_reduce( const Range& range, Body* body, Partitioner& partitioner ) :
-            my_body(body),
-            my_range(range),
-            my_partition(partitioner),
-            my_context(0)
-        {
-        }
-        //! Splitting constructor used to generate children.
-        /** parent_ becomes left child.  Newly constructed object is right child. */
-        start_reduce( start_reduce& parent_, split ) :
-            my_body(parent_.my_body),
-            my_range(parent_.my_range,split()),
-            my_partition(parent_.my_partition,split()),
-            my_context(2)
-        {
-            my_partition.set_affinity(*this);
-            parent_.my_context = 1;
-        }
-        //! Construct right child from the given range as response to the demand.
-        /** parent_ remains left child.  Newly constructed object is right child. */
-        start_reduce( start_reduce& parent_, const Range& r, depth_t d ) :
-            my_body(parent_.my_body),
-            my_range(r),
-            my_partition(parent_.my_partition,split()),
-            my_context(2) // right leaf mark
-        {
-            my_partition.set_affinity(*this);
-            my_partition.align_depth( d );
-            parent_.my_context = 1; // left leaf mark
-        }
-        //! Update affinity info, if any
-        /*override*/ void note_affinity( affinity_id id ) {
-            my_partition.note_affinity( id );
-        }
-        static void run( const Range& range, Body& body, Partitioner& partitioner ) {
-            if( !range.empty() ) {
-#if !__TBB_TASK_GROUP_CONTEXT || TBB_JOIN_OUTER_TASK_GROUP
-                task::spawn_root_and_wait( *new(task::allocate_root()) start_reduce(range,&body,partitioner) );
-#else
-                // Bound context prevents exceptions from body to affect nesting or sibling algorithms,
-                // and allows users to handle exceptions safely by wrapping parallel_for in the try-block.
-                task_group_context context;
-                task::spawn_root_and_wait( *new(task::allocate_root(context)) start_reduce(range,&body,partitioner) );
-#endif /* __TBB_TASK_GROUP_CONTEXT && !TBB_JOIN_OUTER_TASK_GROUP */
-            }
-        }
-#if __TBB_TASK_GROUP_CONTEXT
-        static void run( const Range& range, Body& body, Partitioner& partitioner, task_group_context& context ) {
-            if( !range.empty() ) 
-                task::spawn_root_and_wait( *new(task::allocate_root(context)) start_reduce(range,&body,partitioner) );
-        }
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-        //! create a continuation task, serve as callback for partitioner
-        finish_type *create_continuation() {
-            return new( allocate_continuation() ) finish_type(my_context);
-        }
-        //! Run body for range
-        void run_body( Range &r ) { (*my_body)( r ); }
-    };
-    template<typename Range, typename Body, typename Partitioner>
-    task* start_reduce<Range,Body,Partitioner>::execute() {
-        my_partition.check_being_stolen( *this );
-        if( my_context==2 ) { // right child
-            finish_type* parent_ptr = static_cast<finish_type*>(parent());
-            if( !itt_load_word_with_acquire(parent_ptr->my_body) ) { // TODO: replace by is_stolen_task() or by parent_ptr->ref_count() == 2???
-                my_body = new( parent_ptr->zombie_space.begin() ) Body(*my_body,split());
-                parent_ptr->has_right_zombie = true;
-            }
-        } else __TBB_ASSERT(my_context==0,0);// because left leaf spawns right leafs without recycling
-        my_partition.execute(*this, my_range);
-        if( my_context==1 ) {
-            finish_type* parent_ptr = static_cast<finish_type*>(parent());
-            __TBB_ASSERT(my_body!=parent_ptr->zombie_space.begin(),0);
-            itt_store_word_with_release(parent_ptr->my_body, my_body );
-        }
-        return NULL;
-    }
-
-#if TBB_PREVIEW_DETERMINISTIC_REDUCE
-    //! Task type use to combine the partial results of parallel_deterministic_reduce.
-    /** @ingroup algorithms */
-    template<typename Body>
-    class finish_deterministic_reduce: public task {
-        Body &my_left_body;
-        Body my_right_body;
-
-        finish_deterministic_reduce( Body &body ) :
-            my_left_body( body ),
-            my_right_body( body, split() )
-        {
-        }
-        task* execute() {
-            my_left_body.join( my_right_body );
-            return NULL;
-        }
-        template<typename Range,typename Body_>
-        friend class start_deterministic_reduce;
-    };
-
-    //! Task type used to split the work of parallel_deterministic_reduce.
-    /** @ingroup algorithms */
-    template<typename Range, typename Body>
-    class start_deterministic_reduce: public task {
-        typedef finish_deterministic_reduce<Body> finish_type;
-        Body &my_body;
-        Range my_range;
-        /*override*/ task* execute();
-
-        //! Constructor used for root task
-        start_deterministic_reduce( const Range& range, Body& body ) :
-            my_body( body ),
-            my_range( range )
-        {
-        }
-        //! Splitting constructor used to generate children.
-        /** parent_ becomes left child.  Newly constructed object is right child. */
-        start_deterministic_reduce( start_deterministic_reduce& parent_, finish_type& c ) :
-            my_body( c.my_right_body ),
-            my_range( parent_.my_range, split() )
-        {
-        }
-
-public:
-        static void run( const Range& range, Body& body ) {
-            if( !range.empty() ) {
-#if !__TBB_TASK_GROUP_CONTEXT || TBB_JOIN_OUTER_TASK_GROUP
-                task::spawn_root_and_wait( *new(task::allocate_root()) start_deterministic_reduce(range,&body) );
-#else
-                // Bound context prevents exceptions from body to affect nesting or sibling algorithms,
-                // and allows users to handle exceptions safely by wrapping parallel_for in the try-block.
-                task_group_context context;
-                task::spawn_root_and_wait( *new(task::allocate_root(context)) start_deterministic_reduce(range,body) );
-#endif /* __TBB_TASK_GROUP_CONTEXT && !TBB_JOIN_OUTER_TASK_GROUP */
-            }
-        }
-#if __TBB_TASK_GROUP_CONTEXT
-        static void run( const Range& range, Body& body, task_group_context& context ) {
-            if( !range.empty() ) 
-                task::spawn_root_and_wait( *new(task::allocate_root(context)) start_deterministic_reduce(range,body) );
-        }
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-    };
-
-    template<typename Range, typename Body>
-    task* start_deterministic_reduce<Range,Body>::execute() {
-        if( !my_range.is_divisible() ) {
-            my_body( my_range );
-            return NULL;
-        } else {
-            finish_type& c = *new( allocate_continuation() ) finish_type( my_body );
-            recycle_as_child_of(c);
-            c.set_ref_count(2);
-            start_deterministic_reduce& b = *new( c.allocate_child() ) start_deterministic_reduce( *this, c );
-            task::spawn(b);
-            return this;
-        }
-    }
-#endif /* TBB_PREVIEW_DETERMINISTIC_REDUCE */
-} // namespace internal
-//! @endcond
-} //namespace interfaceX
-
-//! @cond INTERNAL
-namespace internal {
-    using interface6::internal::start_reduce;
-#if TBB_PREVIEW_DETERMINISTIC_REDUCE
-    using interface6::internal::start_deterministic_reduce;
-#endif
-    //! Auxiliary class for parallel_reduce; for internal use only.
-    /** The adaptor class that implements \ref parallel_reduce_body_req "parallel_reduce Body"
-        using given \ref parallel_reduce_lambda_req "anonymous function objects".
-     **/
-    /** @ingroup algorithms */
-    template<typename Range, typename Value, typename RealBody, typename Reduction>
-    class lambda_reduce_body {
-
-//FIXME: decide if my_real_body, my_reduction, and identity_element should be copied or referenced
-//       (might require some performance measurements)
-
-        const Value&     identity_element;
-        const RealBody&  my_real_body;
-        const Reduction& my_reduction;
-        Value            my_value;
-        lambda_reduce_body& operator= ( const lambda_reduce_body& other );
-    public:
-        lambda_reduce_body( const Value& identity, const RealBody& body, const Reduction& reduction )
-            : identity_element(identity)
-            , my_real_body(body)
-            , my_reduction(reduction)
-            , my_value(identity)
-        { }
-        lambda_reduce_body( const lambda_reduce_body& other )
-            : identity_element(other.identity_element)
-            , my_real_body(other.my_real_body)
-            , my_reduction(other.my_reduction)
-            , my_value(other.my_value)
-        { }
-        lambda_reduce_body( lambda_reduce_body& other, tbb::split )
-            : identity_element(other.identity_element)
-            , my_real_body(other.my_real_body)
-            , my_reduction(other.my_reduction)
-            , my_value(other.identity_element)
-        { }
-        void operator()(Range& range) {
-            my_value = my_real_body(range, const_cast<const Value&>(my_value));
-        }
-        void join( lambda_reduce_body& rhs ) {
-            my_value = my_reduction(const_cast<const Value&>(my_value), const_cast<const Value&>(rhs.my_value));
-        }
-        Value result() const {
-            return my_value;
-        }
-    };
-
-} // namespace internal
-//! @endcond
-
-// Requirements on Range concept are documented in blocked_range.h
-
-/** \page parallel_reduce_body_req Requirements on parallel_reduce body
-    Class \c Body implementing the concept of parallel_reduce body must define:
-    - \code Body::Body( Body&, split ); \endcode        Splitting constructor.
-                                                        Must be able to run concurrently with operator() and method \c join
-    - \code Body::~Body(); \endcode                     Destructor
-    - \code void Body::operator()( Range& r ); \endcode Function call operator applying body to range \c r
-                                                        and accumulating the result
-    - \code void Body::join( Body& b ); \endcode        Join results. 
-                                                        The result in \c b should be merged into the result of \c this
-**/
-
-/** \page parallel_reduce_lambda_req Requirements on parallel_reduce anonymous function objects (lambda functions)
-    TO BE DOCUMENTED
-**/
-
-/** \name parallel_reduce
-    See also requirements on \ref range_req "Range" and \ref parallel_reduce_body_req "parallel_reduce Body". **/
-//@{
-
-//! Parallel iteration with reduction and default partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_reduce( const Range& range, Body& body ) {
-    internal::start_reduce<Range,Body, const __TBB_DEFAULT_PARTITIONER>::run( range, body, __TBB_DEFAULT_PARTITIONER() );
-}
-
-//! Parallel iteration with reduction and simple_partitioner
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_reduce( const Range& range, Body& body, const simple_partitioner& partitioner ) {
-    internal::start_reduce<Range,Body,const simple_partitioner>::run( range, body, partitioner );
-}
-
-//! Parallel iteration with reduction and auto_partitioner
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_reduce( const Range& range, Body& body, const auto_partitioner& partitioner ) {
-    internal::start_reduce<Range,Body,const auto_partitioner>::run( range, body, partitioner );
-}
-
-//! Parallel iteration with reduction and affinity_partitioner
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_reduce( const Range& range, Body& body, affinity_partitioner& partitioner ) {
-    internal::start_reduce<Range,Body,affinity_partitioner>::run( range, body, partitioner );
-}
-
-#if __TBB_TASK_GROUP_CONTEXT
-//! Parallel iteration with reduction, simple partitioner and user-supplied context.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_reduce( const Range& range, Body& body, const simple_partitioner& partitioner, task_group_context& context ) {
-    internal::start_reduce<Range,Body,const simple_partitioner>::run( range, body, partitioner, context );
-}
-
-//! Parallel iteration with reduction, auto_partitioner and user-supplied context
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_reduce( const Range& range, Body& body, const auto_partitioner& partitioner, task_group_context& context ) {
-    internal::start_reduce<Range,Body,const auto_partitioner>::run( range, body, partitioner, context );
-}
-
-//! Parallel iteration with reduction, affinity_partitioner and user-supplied context
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_reduce( const Range& range, Body& body, affinity_partitioner& partitioner, task_group_context& context ) {
-    internal::start_reduce<Range,Body,affinity_partitioner>::run( range, body, partitioner, context );
-}
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-/** parallel_reduce overloads that work with anonymous function objects
-    (see also \ref parallel_reduce_lambda_req "requirements on parallel_reduce anonymous function objects"). **/
-
-//! Parallel iteration with reduction and default partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Value, typename RealBody, typename Reduction>
-Value parallel_reduce( const Range& range, const Value& identity, const RealBody& real_body, const Reduction& reduction ) {
-    internal::lambda_reduce_body<Range,Value,RealBody,Reduction> body(identity, real_body, reduction);
-    internal::start_reduce<Range,internal::lambda_reduce_body<Range,Value,RealBody,Reduction>,const __TBB_DEFAULT_PARTITIONER>
-                          ::run(range, body, __TBB_DEFAULT_PARTITIONER() );
-    return body.result();
-}
-
-//! Parallel iteration with reduction and simple_partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Value, typename RealBody, typename Reduction>
-Value parallel_reduce( const Range& range, const Value& identity, const RealBody& real_body, const Reduction& reduction,
-                       const simple_partitioner& partitioner ) {
-    internal::lambda_reduce_body<Range,Value,RealBody,Reduction> body(identity, real_body, reduction);
-    internal::start_reduce<Range,internal::lambda_reduce_body<Range,Value,RealBody,Reduction>,const simple_partitioner>
-                          ::run(range, body, partitioner );
-    return body.result();
-}
-
-//! Parallel iteration with reduction and auto_partitioner
-/** @ingroup algorithms **/
-template<typename Range, typename Value, typename RealBody, typename Reduction>
-Value parallel_reduce( const Range& range, const Value& identity, const RealBody& real_body, const Reduction& reduction,
-                       const auto_partitioner& partitioner ) {
-    internal::lambda_reduce_body<Range,Value,RealBody,Reduction> body(identity, real_body, reduction);
-    internal::start_reduce<Range,internal::lambda_reduce_body<Range,Value,RealBody,Reduction>,const auto_partitioner>
-                          ::run( range, body, partitioner );
-    return body.result();
-}
-
-//! Parallel iteration with reduction and affinity_partitioner
-/** @ingroup algorithms **/
-template<typename Range, typename Value, typename RealBody, typename Reduction>
-Value parallel_reduce( const Range& range, const Value& identity, const RealBody& real_body, const Reduction& reduction,
-                       affinity_partitioner& partitioner ) {
-    internal::lambda_reduce_body<Range,Value,RealBody,Reduction> body(identity, real_body, reduction);
-    internal::start_reduce<Range,internal::lambda_reduce_body<Range,Value,RealBody,Reduction>,affinity_partitioner>
-                                        ::run( range, body, partitioner );
-    return body.result();
-}
-
-#if __TBB_TASK_GROUP_CONTEXT
-//! Parallel iteration with reduction, simple partitioner and user-supplied context.
-/** @ingroup algorithms **/
-template<typename Range, typename Value, typename RealBody, typename Reduction>
-Value parallel_reduce( const Range& range, const Value& identity, const RealBody& real_body, const Reduction& reduction,
-                       const simple_partitioner& partitioner, task_group_context& context ) {
-    internal::lambda_reduce_body<Range,Value,RealBody,Reduction> body(identity, real_body, reduction);
-    internal::start_reduce<Range,internal::lambda_reduce_body<Range,Value,RealBody,Reduction>,const simple_partitioner>
-                          ::run( range, body, partitioner, context );
-    return body.result();
-}
-
-//! Parallel iteration with reduction, auto_partitioner and user-supplied context
-/** @ingroup algorithms **/
-template<typename Range, typename Value, typename RealBody, typename Reduction>
-Value parallel_reduce( const Range& range, const Value& identity, const RealBody& real_body, const Reduction& reduction,
-                       const auto_partitioner& partitioner, task_group_context& context ) {
-    internal::lambda_reduce_body<Range,Value,RealBody,Reduction> body(identity, real_body, reduction);
-    internal::start_reduce<Range,internal::lambda_reduce_body<Range,Value,RealBody,Reduction>,const auto_partitioner>
-                          ::run( range, body, partitioner, context );
-    return body.result();
-}
-
-//! Parallel iteration with reduction, affinity_partitioner and user-supplied context
-/** @ingroup algorithms **/
-template<typename Range, typename Value, typename RealBody, typename Reduction>
-Value parallel_reduce( const Range& range, const Value& identity, const RealBody& real_body, const Reduction& reduction,
-                       affinity_partitioner& partitioner, task_group_context& context ) {
-    internal::lambda_reduce_body<Range,Value,RealBody,Reduction> body(identity, real_body, reduction);
-    internal::start_reduce<Range,internal::lambda_reduce_body<Range,Value,RealBody,Reduction>,affinity_partitioner>
-                                        ::run( range, body, partitioner, context );
-    return body.result();
-}
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-#if TBB_PREVIEW_DETERMINISTIC_REDUCE
-//! Parallel iteration with deterministic reduction and default partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_deterministic_reduce( const Range& range, Body& body ) {
-    internal::start_deterministic_reduce<Range,Body>::run( range, body );
-}
-
-#if __TBB_TASK_GROUP_CONTEXT
-//! Parallel iteration with deterministic reduction, simple partitioner and user-supplied context.
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_deterministic_reduce( const Range& range, Body& body, task_group_context& context ) {
-    internal::start_deterministic_reduce<Range,Body>::run( range, body, context );
-}
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-/** parallel_reduce overloads that work with anonymous function objects
-    (see also \ref parallel_reduce_lambda_req "requirements on parallel_reduce anonymous function objects"). **/
-
-//! Parallel iteration with deterministic reduction and default partitioner.
-/** @ingroup algorithms **/
-template<typename Range, typename Value, typename RealBody, typename Reduction>
-Value parallel_deterministic_reduce( const Range& range, const Value& identity, const RealBody& real_body, const Reduction& reduction ) {
-    internal::lambda_reduce_body<Range,Value,RealBody,Reduction> body(identity, real_body, reduction);
-    internal::start_deterministic_reduce<Range,internal::lambda_reduce_body<Range,Value,RealBody,Reduction> >
-                          ::run(range, body);
-    return body.result();
-}
-
-#if __TBB_TASK_GROUP_CONTEXT
-//! Parallel iteration with deterministic reduction, simple partitioner and user-supplied context.
-/** @ingroup algorithms **/
-template<typename Range, typename Value, typename RealBody, typename Reduction>
-Value parallel_deterministic_reduce( const Range& range, const Value& identity, const RealBody& real_body, const Reduction& reduction,
-                       task_group_context& context ) {
-    internal::lambda_reduce_body<Range,Value,RealBody,Reduction> body(identity, real_body, reduction);
-    internal::start_deterministic_reduce<Range,internal::lambda_reduce_body<Range,Value,RealBody,Reduction> >
-                          ::run( range, body, context );
-    return body.result();
-}
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-#endif /* TBB_PREVIEW_DETERMINISTIC_REDUCE */
-//@}
-
-} // namespace tbb
-
-#endif /* __TBB_parallel_reduce_H */
-
diff --git a/dependencies64/tbb/include/tbb/parallel_scan.h b/dependencies64/tbb/include/tbb/parallel_scan.h
deleted file mode 100644 (file)
index a4a02cb..0000000
+++ /dev/null
@@ -1,351 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_parallel_scan_H
-#define __TBB_parallel_scan_H
-
-#include "task.h"
-#include "aligned_space.h"
-#include <new>
-#include "partitioner.h"
-
-namespace tbb {
-
-//! Used to indicate that the initial scan is being performed.
-/** @ingroup algorithms */
-struct pre_scan_tag {
-    static bool is_final_scan() {return false;}
-};
-
-//! Used to indicate that the final scan is being performed.
-/** @ingroup algorithms */
-struct final_scan_tag {
-    static bool is_final_scan() {return true;}
-};
-
-//! @cond INTERNAL
-namespace internal {
-
-    //! Performs final scan for a leaf 
-    /** @ingroup algorithms */
-    template<typename Range, typename Body>
-    class final_sum: public task {
-    public:
-        Body body;
-    private:
-        aligned_space<Range,1> range;
-        //! Where to put result of last subrange, or NULL if not last subrange.
-        Body* stuff_last;
-    public:
-        final_sum( Body& body_ ) :
-            body(body_,split())
-        {
-            poison_pointer(stuff_last);
-        }
-        ~final_sum() {
-            range.begin()->~Range();
-        }     
-        void finish_construction( const Range& range_, Body* stuff_last_ ) {
-            new( range.begin() ) Range(range_);
-            stuff_last = stuff_last_;
-        }
-    private:
-        /*override*/ task* execute() {
-            body( *range.begin(), final_scan_tag() );
-            if( stuff_last )
-                stuff_last->assign(body);
-            return NULL;
-        }
-    };       
-
-    //! Split work to be done in the scan.
-    /** @ingroup algorithms */
-    template<typename Range, typename Body>
-    class sum_node: public task {
-        typedef final_sum<Range,Body> final_sum_type;
-    public:
-        final_sum_type *incoming; 
-        final_sum_type *body;
-        Body *stuff_last;
-    private:
-        final_sum_type *left_sum;
-        sum_node *left;
-        sum_node *right;     
-        bool left_is_final;
-        Range range;
-        sum_node( const Range range_, bool left_is_final_ ) : 
-            left_sum(NULL), 
-            left(NULL), 
-            right(NULL), 
-            left_is_final(left_is_final_), 
-            range(range_)
-        {
-            // Poison fields that will be set by second pass.
-            poison_pointer(body);
-            poison_pointer(incoming);
-        }
-        task* create_child( const Range& range_, final_sum_type& f, sum_node* n, final_sum_type* incoming_, Body* stuff_last_ ) {
-            if( !n ) {
-                f.recycle_as_child_of( *this );
-                f.finish_construction( range_, stuff_last_ );
-                return &f;
-            } else {
-                n->body = &f;
-                n->incoming = incoming_;
-                n->stuff_last = stuff_last_;
-                return n;
-            }
-        }
-        /*override*/ task* execute() {
-            if( body ) {
-                if( incoming )
-                    left_sum->body.reverse_join( incoming->body );
-                recycle_as_continuation();
-                sum_node& c = *this;
-                task* b = c.create_child(Range(range,split()),*left_sum,right,left_sum,stuff_last);
-                task* a = left_is_final ? NULL : c.create_child(range,*body,left,incoming,NULL);
-                set_ref_count( (a!=NULL)+(b!=NULL) );
-                body = NULL; 
-                if( a ) spawn(*b);
-                else a = b;
-                return a;
-            } else {
-                return NULL;
-            }
-        }
-        template<typename Range_,typename Body_,typename Partitioner_>
-        friend class start_scan;
-
-        template<typename Range_,typename Body_>
-        friend class finish_scan;
-    };
-
-    //! Combine partial results
-    /** @ingroup algorithms */
-    template<typename Range, typename Body>
-    class finish_scan: public task {
-        typedef sum_node<Range,Body> sum_node_type;
-        typedef final_sum<Range,Body> final_sum_type;
-        final_sum_type** const sum;
-        sum_node_type*& return_slot;
-    public:
-        final_sum_type* right_zombie;
-        sum_node_type& result;
-
-        /*override*/ task* execute() {
-            __TBB_ASSERT( result.ref_count()==(result.left!=NULL)+(result.right!=NULL), NULL );
-            if( result.left )
-                result.left_is_final = false;
-            if( right_zombie && sum ) 
-                ((*sum)->body).reverse_join(result.left_sum->body);
-            __TBB_ASSERT( !return_slot, NULL );
-            if( right_zombie || result.right ) {
-                return_slot = &result;
-            } else {
-                destroy( result );
-            }
-            if( right_zombie && !sum && !result.right ) destroy(*right_zombie);
-            return NULL;
-        }
-
-        finish_scan( sum_node_type*& return_slot_, final_sum_type** sum_, sum_node_type& result_ ) : 
-            sum(sum_),
-            return_slot(return_slot_), 
-            right_zombie(NULL),
-            result(result_)
-        {
-            __TBB_ASSERT( !return_slot, NULL );
-        }
-    };
-
-    //! Initial task to split the work
-    /** @ingroup algorithms */
-    template<typename Range, typename Body, typename Partitioner=simple_partitioner>
-    class start_scan: public task {
-        typedef sum_node<Range,Body> sum_node_type;
-        typedef final_sum<Range,Body> final_sum_type;
-        final_sum_type* body;
-        /** Non-null if caller is requesting total. */
-        final_sum_type** sum; 
-        sum_node_type** return_slot;
-        /** Null if computing root. */
-        sum_node_type* parent_sum;
-        bool is_final;
-        bool is_right_child;
-        Range range;
-        typename Partitioner::partition_type partition;
-        /*override*/ task* execute();
-    public:
-        start_scan( sum_node_type*& return_slot_, start_scan& parent_, sum_node_type* parent_sum_ ) :
-            body(parent_.body),
-            sum(parent_.sum),
-            return_slot(&return_slot_),
-            parent_sum(parent_sum_),
-            is_final(parent_.is_final),
-            is_right_child(false),
-            range(parent_.range,split()),
-            partition(parent_.partition,split())
-        {
-            __TBB_ASSERT( !*return_slot, NULL );
-        }
-
-        start_scan( sum_node_type*& return_slot_, const Range& range_, final_sum_type& body_, const Partitioner& partitioner_) :
-            body(&body_),
-            sum(NULL),
-            return_slot(&return_slot_),
-            parent_sum(NULL),
-            is_final(true),
-            is_right_child(false),
-            range(range_),
-            partition(partitioner_)
-        {
-            __TBB_ASSERT( !*return_slot, NULL );
-        }
-
-        static void run(  const Range& range, Body& body, const Partitioner& partitioner ) {
-            if( !range.empty() ) {
-                typedef internal::start_scan<Range,Body,Partitioner> start_pass1_type;
-                internal::sum_node<Range,Body>* root = NULL;
-                typedef internal::final_sum<Range,Body> final_sum_type;
-                final_sum_type* temp_body = new(task::allocate_root()) final_sum_type( body );
-                start_pass1_type& pass1 = *new(task::allocate_root()) start_pass1_type(
-                    /*return_slot=*/root,
-                    range,
-                    *temp_body,
-                    partitioner );
-                task::spawn_root_and_wait( pass1 );
-                if( root ) {
-                    root->body = temp_body;
-                    root->incoming = NULL;
-                    root->stuff_last = &body;
-                    task::spawn_root_and_wait( *root );
-                } else {
-                    body.assign(temp_body->body);
-                    temp_body->finish_construction( range, NULL );
-                    temp_body->destroy(*temp_body);
-                }
-            }
-        }
-    };
-
-    template<typename Range, typename Body, typename Partitioner>
-    task* start_scan<Range,Body,Partitioner>::execute() {
-        typedef internal::finish_scan<Range,Body> finish_pass1_type;
-        finish_pass1_type* p = parent_sum ? static_cast<finish_pass1_type*>( parent() ) : NULL;
-        // Inspecting p->result.left_sum would ordinarily be a race condition.
-        // But we inspect it only if we are not a stolen task, in which case we
-        // know that task assigning to p->result.left_sum has completed.
-        bool treat_as_stolen = is_right_child && (is_stolen_task() || body!=p->result.left_sum);
-        if( treat_as_stolen ) {
-            // Invocation is for right child that has been really stolen or needs to be virtually stolen
-            p->right_zombie = body = new( allocate_root() ) final_sum_type(body->body);
-            is_final = false;
-        }
-        task* next_task = NULL;
-        if( (is_right_child && !treat_as_stolen) || !range.is_divisible() || partition.should_execute_range(*this) ) {
-            if( is_final )
-                (body->body)( range, final_scan_tag() );
-            else if( sum )
-                (body->body)( range, pre_scan_tag() );
-            if( sum ) 
-                *sum = body;
-            __TBB_ASSERT( !*return_slot, NULL );
-        } else {
-            sum_node_type* result;
-            if( parent_sum ) 
-                result = new(allocate_additional_child_of(*parent_sum)) sum_node_type(range,/*left_is_final=*/is_final);
-            else
-                result = new(task::allocate_root()) sum_node_type(range,/*left_is_final=*/is_final);
-            finish_pass1_type& c = *new( allocate_continuation()) finish_pass1_type(*return_slot,sum,*result);
-            // Split off right child
-            start_scan& b = *new( c.allocate_child() ) start_scan( /*return_slot=*/result->right, *this, result );
-            b.is_right_child = true;    
-            // Left child is recycling of *this.  Must recycle this before spawning b, 
-            // otherwise b might complete and decrement c.ref_count() to zero, which
-            // would cause c.execute() to run prematurely.
-            recycle_as_child_of(c);
-            c.set_ref_count(2);
-            c.spawn(b);
-            sum = &result->left_sum;
-            return_slot = &result->left;
-            is_right_child = false;
-            next_task = this;
-            parent_sum = result; 
-            __TBB_ASSERT( !*return_slot, NULL );
-        }
-        return next_task;
-    } 
-} // namespace internal
-//! @endcond
-
-// Requirements on Range concept are documented in blocked_range.h
-
-/** \page parallel_scan_body_req Requirements on parallel_scan body
-    Class \c Body implementing the concept of parallel_scan body must define:
-    - \code Body::Body( Body&, split ); \endcode    Splitting constructor.
-                                                    Split \c b so that \c this and \c b can accumulate separately
-    - \code Body::~Body(); \endcode                 Destructor
-    - \code void Body::operator()( const Range& r, pre_scan_tag ); \endcode
-                                                    Preprocess iterations for range \c r
-    - \code void Body::operator()( const Range& r, final_scan_tag ); \endcode 
-                                                    Do final processing for iterations of range \c r
-    - \code void Body::reverse_join( Body& a ); \endcode
-                                                    Merge preprocessing state of \c a into \c this, where \c a was 
-                                                    created earlier from \c b by b's splitting constructor
-**/
-
-/** \name parallel_scan
-    See also requirements on \ref range_req "Range" and \ref parallel_scan_body_req "parallel_scan Body". **/
-//@{
-
-//! Parallel prefix with default partitioner
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_scan( const Range& range, Body& body ) {
-    internal::start_scan<Range,Body,__TBB_DEFAULT_PARTITIONER>::run(range,body,__TBB_DEFAULT_PARTITIONER());
-}
-
-//! Parallel prefix with simple_partitioner
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_scan( const Range& range, Body& body, const simple_partitioner& partitioner ) {
-    internal::start_scan<Range,Body,simple_partitioner>::run(range,body,partitioner);
-}
-
-//! Parallel prefix with auto_partitioner
-/** @ingroup algorithms **/
-template<typename Range, typename Body>
-void parallel_scan( const Range& range, Body& body, const auto_partitioner& partitioner ) {
-    internal::start_scan<Range,Body,auto_partitioner>::run(range,body,partitioner);
-}
-//@}
-
-} // namespace tbb
-
-#endif /* __TBB_parallel_scan_H */
-
diff --git a/dependencies64/tbb/include/tbb/parallel_sort.h b/dependencies64/tbb/include/tbb/parallel_sort.h
deleted file mode 100644 (file)
index cdfbb61..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_parallel_sort_H
-#define __TBB_parallel_sort_H
-
-#include "parallel_for.h"
-#include "blocked_range.h"
-#include <algorithm>
-#include <iterator>
-#include <functional>
-
-namespace tbb {
-
-//! @cond INTERNAL
-namespace internal {
-
-//! Range used in quicksort to split elements into subranges based on a value.
-/** The split operation selects a splitter and places all elements less than or equal 
-    to the value in the first range and the remaining elements in the second range.
-    @ingroup algorithms */
-template<typename RandomAccessIterator, typename Compare>
-class quick_sort_range: private no_assign {
-
-    inline size_t median_of_three(const RandomAccessIterator &array, size_t l, size_t m, size_t r) const {
-        return comp(array[l], array[m]) ? ( comp(array[m], array[r]) ? m : ( comp( array[l], array[r]) ? r : l ) ) 
-                                        : ( comp(array[r], array[m]) ? m : ( comp( array[r], array[l] ) ? r : l ) );
-    }
-
-    inline size_t pseudo_median_of_nine( const RandomAccessIterator &array, const quick_sort_range &range ) const {
-        size_t offset = range.size/8u;
-        return median_of_three(array, 
-                               median_of_three(array, 0, offset, offset*2),
-                               median_of_three(array, offset*3, offset*4, offset*5),
-                               median_of_three(array, offset*6, offset*7, range.size - 1) );
-
-    }
-
-public:
-
-    static const size_t grainsize = 500;
-    const Compare &comp;
-    RandomAccessIterator begin;
-    size_t size;
-
-    quick_sort_range( RandomAccessIterator begin_, size_t size_, const Compare &comp_ ) :
-        comp(comp_), begin(begin_), size(size_) {}
-
-    bool empty() const {return size==0;}
-    bool is_divisible() const {return size>=grainsize;}
-
-    quick_sort_range( quick_sort_range& range, split ) : comp(range.comp) {
-        RandomAccessIterator array = range.begin;
-        RandomAccessIterator key0 = range.begin; 
-        size_t m = pseudo_median_of_nine(array, range);
-        if (m) std::swap ( array[0], array[m] );
-
-        size_t i=0;
-        size_t j=range.size;
-        // Partition interval [i+1,j-1] with key *key0.
-        for(;;) {
-            __TBB_ASSERT( i<j, NULL );
-            // Loop must terminate since array[l]==*key0.
-            do {
-                --j;
-                __TBB_ASSERT( i<=j, "bad ordering relation?" );
-            } while( comp( *key0, array[j] ));
-            do {
-                __TBB_ASSERT( i<=j, NULL );
-                if( i==j ) goto partition;
-                ++i;
-            } while( comp( array[i],*key0 ));
-            if( i==j ) goto partition;
-            std::swap( array[i], array[j] );
-        }
-partition:
-        // Put the partition key were it belongs
-        std::swap( array[j], *key0 );
-        // array[l..j) is less or equal to key.
-        // array(j..r) is greater or equal to key.
-        // array[j] is equal to key
-        i=j+1;
-        begin = array+i;
-        size = range.size-i;
-        range.size = j;
-    }
-};
-
-#if __TBB_TASK_GROUP_CONTEXT
-//! Body class used to test if elements in a range are presorted
-/** @ingroup algorithms */
-template<typename RandomAccessIterator, typename Compare>
-class quick_sort_pretest_body : internal::no_assign {
-    const Compare &comp;
-
-public:
-    quick_sort_pretest_body(const Compare &_comp) : comp(_comp) {}
-
-    void operator()( const blocked_range<RandomAccessIterator>& range ) const {
-        task &my_task = task::self();
-        RandomAccessIterator my_end = range.end();
-
-        int i = 0;
-        for (RandomAccessIterator k = range.begin(); k != my_end; ++k, ++i) {
-            if ( i%64 == 0 && my_task.is_cancelled() ) break;
-          
-            // The k-1 is never out-of-range because the first chunk starts at begin+serial_cutoff+1
-            if ( comp( *(k), *(k-1) ) ) {
-                my_task.cancel_group_execution();
-                break;
-            }
-        }
-    }
-
-};
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-//! Body class used to sort elements in a range that is smaller than the grainsize.
-/** @ingroup algorithms */
-template<typename RandomAccessIterator, typename Compare>
-struct quick_sort_body {
-    void operator()( const quick_sort_range<RandomAccessIterator,Compare>& range ) const {
-        //SerialQuickSort( range.begin, range.size, range.comp );
-        std::sort( range.begin, range.begin + range.size, range.comp );
-    }
-};
-
-//! Wrapper method to initiate the sort by calling parallel_for.
-/** @ingroup algorithms */
-template<typename RandomAccessIterator, typename Compare>
-void parallel_quick_sort( RandomAccessIterator begin, RandomAccessIterator end, const Compare& comp ) {
-#if __TBB_TASK_GROUP_CONTEXT
-    task_group_context my_context;
-    const int serial_cutoff = 9;
-
-    __TBB_ASSERT( begin + serial_cutoff < end, "min_parallel_size is smaller than serial cutoff?" );
-    RandomAccessIterator k;
-    for ( k = begin ; k != begin + serial_cutoff; ++k ) {
-        if ( comp( *(k+1), *k ) ) {
-            goto do_parallel_quick_sort;
-        }
-    }
-
-    parallel_for( blocked_range<RandomAccessIterator>(k+1, end),
-                  quick_sort_pretest_body<RandomAccessIterator,Compare>(comp),
-                  auto_partitioner(),
-                  my_context);
-
-    if (my_context.is_group_execution_cancelled())
-do_parallel_quick_sort:
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-        parallel_for( quick_sort_range<RandomAccessIterator,Compare>(begin, end-begin, comp ), 
-                      quick_sort_body<RandomAccessIterator,Compare>(),
-                      auto_partitioner() );
-}
-
-} // namespace internal
-//! @endcond
-
-/** \page parallel_sort_iter_req Requirements on iterators for parallel_sort
-    Requirements on value type \c T of \c RandomAccessIterator for \c parallel_sort:
-    - \code void swap( T& x, T& y ) \endcode        Swaps \c x and \c y
-    - \code bool Compare::operator()( const T& x, const T& y ) \endcode
-                                                    True if x comes before y;
-**/
-
-/** \name parallel_sort
-    See also requirements on \ref parallel_sort_iter_req "iterators for parallel_sort". **/
-//@{
-
-//! Sorts the data in [begin,end) using the given comparator 
-/** The compare function object is used for all comparisons between elements during sorting.
-    The compare object must define a bool operator() function.
-    @ingroup algorithms **/
-template<typename RandomAccessIterator, typename Compare>
-void parallel_sort( RandomAccessIterator begin, RandomAccessIterator end, const Compare& comp) { 
-    const int min_parallel_size = 500; 
-    if( end > begin ) {
-        if (end - begin < min_parallel_size) { 
-            std::sort(begin, end, comp);
-        } else {
-            internal::parallel_quick_sort(begin, end, comp);
-        }
-    }
-}
-
-//! Sorts the data in [begin,end) with a default comparator \c std::less<RandomAccessIterator>
-/** @ingroup algorithms **/
-template<typename RandomAccessIterator>
-inline void parallel_sort( RandomAccessIterator begin, RandomAccessIterator end ) { 
-    parallel_sort( begin, end, std::less< typename std::iterator_traits<RandomAccessIterator>::value_type >() );
-}
-
-//! Sorts the data in the range \c [begin,end) with a default comparator \c std::less<T>
-/** @ingroup algorithms **/
-template<typename T>
-inline void parallel_sort( T * begin, T * end ) {
-    parallel_sort( begin, end, std::less< T >() );
-}   
-//@}
-
-
-} // namespace tbb
-
-#endif
-
diff --git a/dependencies64/tbb/include/tbb/parallel_while.h b/dependencies64/tbb/include/tbb/parallel_while.h
deleted file mode 100644 (file)
index 94f9795..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_parallel_while
-#define __TBB_parallel_while
-
-#include "task.h"
-#include <new>
-
-namespace tbb {
-
-template<typename Body>
-class parallel_while;
-
-//! @cond INTERNAL
-namespace internal {
-
-    template<typename Stream, typename Body> class while_task;
-
-    //! For internal use only.
-    /** Executes one iteration of a while.
-        @ingroup algorithms */
-    template<typename Body>
-    class while_iteration_task: public task {
-        const Body& my_body;
-        typename Body::argument_type my_value;
-        /*override*/ task* execute() {
-            my_body(my_value); 
-            return NULL;
-        }
-        while_iteration_task( const typename Body::argument_type& value, const Body& body ) : 
-            my_body(body), my_value(value)
-        {}
-        template<typename Body_> friend class while_group_task;
-        friend class tbb::parallel_while<Body>;
-    };
-
-    //! For internal use only
-    /** Unpacks a block of iterations.
-        @ingroup algorithms */
-    template<typename Body>
-    class while_group_task: public task {
-        static const size_t max_arg_size = 4;         
-        const Body& my_body;
-        size_t size;
-        typename Body::argument_type my_arg[max_arg_size];
-        while_group_task( const Body& body ) : my_body(body), size(0) {} 
-        /*override*/ task* execute() {
-            typedef while_iteration_task<Body> iteration_type;
-            __TBB_ASSERT( size>0, NULL );
-            task_list list;
-            task* t; 
-            size_t k=0; 
-            for(;;) {
-                t = new( allocate_child() ) iteration_type(my_arg[k],my_body); 
-                if( ++k==size ) break;
-                list.push_back(*t);
-            }
-            set_ref_count(int(k+1));
-            spawn(list);
-            spawn_and_wait_for_all(*t);
-            return NULL;
-        }
-        template<typename Stream, typename Body_> friend class while_task;
-    };
-    
-    //! For internal use only.
-    /** Gets block of iterations from a stream and packages them into a while_group_task.
-        @ingroup algorithms */
-    template<typename Stream, typename Body>
-    class while_task: public task {
-        Stream& my_stream;
-        const Body& my_body;
-        empty_task& my_barrier;
-        /*override*/ task* execute() {
-            typedef while_group_task<Body> block_type;
-            block_type& t = *new( allocate_additional_child_of(my_barrier) ) block_type(my_body);
-            size_t k=0; 
-            while( my_stream.pop_if_present(t.my_arg[k]) ) {
-                if( ++k==block_type::max_arg_size ) {
-                    // There might be more iterations.
-                    recycle_to_reexecute();
-                    break;
-                }
-            }
-            if( k==0 ) {
-                destroy(t);
-                return NULL;
-            } else {
-                t.size = k;
-                return &t;
-            }
-        }
-        while_task( Stream& stream, const Body& body, empty_task& barrier ) : 
-            my_stream(stream),
-            my_body(body),
-            my_barrier(barrier)
-        {} 
-        friend class tbb::parallel_while<Body>;
-    };
-
-} // namespace internal
-//! @endcond
-
-//! Parallel iteration over a stream, with optional addition of more work.
-/** The Body b has the requirement: \n
-        "b(v)"                      \n
-        "b.argument_type"           \n
-    where v is an argument_type
-    @ingroup algorithms */
-template<typename Body>
-class parallel_while: internal::no_copy {
-public:
-    //! Construct empty non-running parallel while.
-    parallel_while() : my_body(NULL), my_barrier(NULL) {}
-
-    //! Destructor cleans up data members before returning.
-    ~parallel_while() {
-        if( my_barrier ) {
-            my_barrier->destroy(*my_barrier);    
-            my_barrier = NULL;
-        }
-    }
-
-    //! Type of items
-    typedef typename Body::argument_type value_type;
-
-    //! Apply body.apply to each item in the stream.
-    /** A Stream s has the requirements \n
-         "S::value_type"                \n
-         "s.pop_if_present(value) is convertible to bool */
-    template<typename Stream>
-    void run( Stream& stream, const Body& body );
-
-    //! Add a work item while running.
-    /** Should be executed only by body.apply or a thread spawned therefrom. */
-    void add( const value_type& item );
-
-private:
-    const Body* my_body;
-    empty_task* my_barrier;
-};
-
-template<typename Body>
-template<typename Stream>
-void parallel_while<Body>::run( Stream& stream, const Body& body ) {
-    using namespace internal;
-    empty_task& barrier = *new( task::allocate_root() ) empty_task();
-    my_body = &body;
-    my_barrier = &barrier;
-    my_barrier->set_ref_count(2);
-    while_task<Stream,Body>& w = *new( my_barrier->allocate_child() ) while_task<Stream,Body>( stream, body, barrier );
-    my_barrier->spawn_and_wait_for_all(w);
-    my_barrier->destroy(*my_barrier);
-    my_barrier = NULL;
-    my_body = NULL;
-}
-
-template<typename Body>
-void parallel_while<Body>::add( const value_type& item ) {
-    __TBB_ASSERT(my_barrier,"attempt to add to parallel_while that is not running");
-    typedef internal::while_iteration_task<Body> iteration_type;
-    iteration_type& i = *new( task::allocate_additional_child_of(*my_barrier) ) iteration_type(item,*my_body);
-    task::self().spawn( i );
-}
-
-} // namespace 
-
-#endif /* __TBB_parallel_while */
diff --git a/dependencies64/tbb/include/tbb/partitioner.h b/dependencies64/tbb/include/tbb/partitioner.h
deleted file mode 100644 (file)
index 9301be8..0000000
+++ /dev/null
@@ -1,509 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_partitioner_H
-#define __TBB_partitioner_H
-
-#ifndef __TBB_INITIAL_CHUNKS
-#define __TBB_INITIAL_CHUNKS 2
-#endif
-#ifndef __TBB_RANGE_POOL_CAPACITY
-#define __TBB_RANGE_POOL_CAPACITY 8
-#endif
-#ifndef __TBB_INIT_DEPTH
-#define __TBB_INIT_DEPTH 5
-#endif
-
-#include "task.h"
-#include "aligned_space.h"
-#include "atomic.h"
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER)
-    // Workaround for overzealous compiler warnings 
-    #pragma warning (push)
-    #pragma warning (disable: 4244)
-#endif
-
-namespace tbb {
-
-class auto_partitioner;
-class simple_partitioner;
-class affinity_partitioner;
-namespace interface6 {
-    namespace internal {
-        class affinity_partition_type;
-    }
-}
-
-namespace internal {
-size_t __TBB_EXPORTED_FUNC get_initial_auto_partitioner_divisor();
-
-//! Defines entry point for affinity partitioner into tbb run-time library.
-class affinity_partitioner_base_v3: no_copy {
-    friend class tbb::affinity_partitioner;
-    friend class tbb::interface6::internal::affinity_partition_type;
-    //! Array that remembers affinities of tree positions to affinity_id.
-    /** NULL if my_size==0. */
-    affinity_id* my_array;
-    //! Number of elements in my_array.
-    size_t my_size;
-    //! Zeros the fields.
-    affinity_partitioner_base_v3() : my_array(NULL), my_size(0) {}
-    //! Deallocates my_array.
-    ~affinity_partitioner_base_v3() {resize(0);}
-    //! Resize my_array.
-    /** Retains values if resulting size is the same. */
-    void __TBB_EXPORTED_METHOD resize( unsigned factor );
-};
-
-//! Provides backward-compatible methods for partition objects without affinity.
-class partition_type_base {
-public:
-    void set_affinity( task & ) {}
-    void note_affinity( task::affinity_id ) {}
-    task* continue_after_execute_range() {return NULL;}
-    bool decide_whether_to_delay() {return false;}
-    void spawn_or_delay( bool, task& b ) {
-        task::spawn(b);
-    }
-};
-
-template<typename Range, typename Body, typename Partitioner> class start_scan;
-
-} // namespace internal
-//! @endcond
-
-namespace serial {
-namespace interface6 {
-template<typename Range, typename Body, typename Partitioner> class start_for;
-}
-}
-
-namespace interface6 {
-//! @cond INTERNAL
-namespace internal {
-using namespace tbb::internal;
-template<typename Range, typename Body, typename Partitioner> class start_for;
-template<typename Range, typename Body, typename Partitioner> class start_reduce;
-
-//! Join task node that contains shared flag for stealing feedback
-class flag_task: public task {
-public:
-    tbb::atomic<bool> child_stolen;
-    flag_task() { child_stolen = false; }
-    task* execute() { return NULL; }
-};
-
-//! Task to signal the demand without carrying the work
-class signal_task: public task {
-public:
-    task* execute() {
-        if( is_stolen_task() ) {
-            static_cast<flag_task*>(parent())->child_stolen = true;
-        }
-        return NULL;
-    }
-};
-
-//! Depth is a relative depth of recursive division inside a range pool. Relative depth allows
-//! infinite absolute depth of the recursion for heavily imbalanced workloads with range represented
-//! by a number that cannot fit into machine word.
-typedef unsigned char depth_t;
-
-//! Range pool stores ranges of type T in a circular buffer with MaxCapacity
-template <typename T, depth_t MaxCapacity>
-class range_vector {
-    depth_t my_head;
-    depth_t my_tail;
-    depth_t my_size;
-    depth_t my_depth[MaxCapacity]; // relative depths of stored ranges
-    tbb::aligned_space<T, MaxCapacity> my_pool;
-
-public:
-    //! initialize via first range in pool
-    range_vector(const T& elem) : my_head(0), my_tail(0), my_size(1) {
-        my_depth[0] = 0;
-        new( my_pool.begin() ) T(elem);//TODO: std::move?
-    }
-    ~range_vector() {
-        while( !empty() ) pop_back();
-    }
-    bool empty() const { return my_size == 0; }
-    depth_t size() const { return my_size; }
-    //! Populates range pool via ranges up to max depth or while divisible
-    //! max_depth starts from 0, e.g. value 2 makes 3 ranges in the pool up to two 1/4 pieces
-    void split_to_fill(depth_t max_depth) {
-        while( my_size < MaxCapacity && my_depth[my_head] < max_depth
-          && my_pool.begin()[my_head].is_divisible() ) {
-            depth_t prev = my_head;
-            my_head = (my_head + 1) % MaxCapacity;
-            new(my_pool.begin()+my_head) T(my_pool.begin()[prev]); // copy TODO: std::move?
-            my_pool.begin()[prev].~T(); // instead of assignment
-            new(my_pool.begin()+prev) T(my_pool.begin()[my_head], split()); // do 'inverse' split
-            my_depth[my_head] = ++my_depth[prev];
-            my_size++;
-        }
-    }
-    void pop_back() {
-        __TBB_ASSERT(my_size > 0, "range_vector::pop_back() with empty size");
-        my_pool.begin()[my_head].~T();
-        my_size--;
-        my_head = (my_head + MaxCapacity - 1) % MaxCapacity;
-    }
-    void pop_front() {
-        __TBB_ASSERT(my_size > 0, "range_vector::pop_front() with empty size");
-        my_pool.begin()[my_tail].~T();
-        my_size--;
-        my_tail = (my_tail + 1) % MaxCapacity;
-    }
-    T& back() {
-        __TBB_ASSERT(my_size > 0, "range_vector::back() with empty size");
-        return my_pool.begin()[my_head];
-    }
-    T& front() {
-        __TBB_ASSERT(my_size > 0, "range_vector::front() with empty size");
-        return my_pool.begin()[my_tail];
-    }
-    //! similarly to front(), returns depth of the first range in the pool
-    depth_t front_depth() {
-        __TBB_ASSERT(my_size > 0, "range_vector::front_depth() with empty size");
-        return my_depth[my_tail];
-    }
-};
-
-//! Provides default methods for partition objects and common algorithm blocks.
-template <typename Partition>
-struct partition_type_base {
-    // decision makers
-    void set_affinity( task & ) {}
-    void note_affinity( task::affinity_id ) {}
-    bool check_being_stolen(task &) { return false; } // part of old should_execute_range()
-    bool check_for_demand(task &) { return false; }
-    bool divisions_left() { return true; } // part of old should_execute_range()
-    bool should_create_trap() { return false; }
-    depth_t max_depth() { return 0; }
-    void align_depth(depth_t) { }
-    // common function blocks
-    Partition& derived() { return *static_cast<Partition*>(this); }
-    template<typename StartType>
-    flag_task* split_work(StartType &start) {
-        flag_task* parent_ptr = start.create_continuation(); // the type here is to express expectation
-        start.set_parent(parent_ptr);
-        parent_ptr->set_ref_count(2);
-        StartType& right_work = *new( parent_ptr->allocate_child() ) StartType(start, split());
-        start.spawn(right_work);
-        return parent_ptr;
-    }
-    template<typename StartType, typename Range>
-    void execute(StartType &start, Range &range) {
-        // The algorithm in a few words ([]-denotes calls to decision mathods of partitioner):
-        // [If this task is stolen, adjust depth and divisions if necessary, set flag].
-        // If range is divisible {
-        //    Spread the work while [initial divisions left];
-        //    Create trap task [if necessary];
-        // }
-        // If not divisible or [max depth is reached], execute, else do the range pool part
-        task* parent_ptr = start.parent();
-        if( range.is_divisible() ) {
-            if( derived().divisions_left() )
-                do parent_ptr = split_work(start); // split until divisions_left()
-                while( range.is_divisible() && derived().divisions_left() );
-            if( derived().should_create_trap() ) { // only for range pool
-                if( parent_ptr->ref_count() > 1 ) { // create new parent if necessary
-                    parent_ptr = start.create_continuation();
-                    start.set_parent(parent_ptr);
-                } else __TBB_ASSERT(parent_ptr->ref_count() == 1, NULL);
-                parent_ptr->set_ref_count(2); // safe because parent has only one reference
-                signal_task& right_signal = *new( parent_ptr->allocate_child() ) signal_task();
-                start.spawn(right_signal); // pure signal is to avoid deep recursion in the end
-            }
-        }
-        if( !range.is_divisible() || !derived().max_depth() )
-            start.run_body( range ); // simple partitioner goes always here
-        else { // do range pool
-            internal::range_vector<Range, Partition::range_pool_size> range_pool(range);
-            do {
-                range_pool.split_to_fill(derived().max_depth()); // fill range pool
-                if( derived().check_for_demand( start ) ) {
-                    if( range_pool.size() > 1 ) {
-                        parent_ptr = start.create_continuation();
-                        start.set_parent(parent_ptr);
-                        parent_ptr->set_ref_count(2);
-                        StartType& right_work = *new( parent_ptr->allocate_child() ) StartType(start, range_pool.front(), range_pool.front_depth());
-                        start.spawn(right_work);
-                        range_pool.pop_front();
-                        continue;
-                    }
-                    if( range_pool.back().is_divisible() ) // was not enough depth to fork a task
-                        continue; // note: check_for_demand() should guarantee increasing max_depth() next time
-                }
-                start.run_body( range_pool.back() );
-                range_pool.pop_back();  
-            } while( !range_pool.empty() && !start.is_cancelled() );
-        }
-    }
-};
-
-//! Provides default methods for auto (adaptive) partition objects.
-template <typename Partition>
-struct auto_partition_type_base : partition_type_base<Partition> {
-    size_t my_divisor;
-    depth_t my_max_depth;
-    auto_partition_type_base() : my_max_depth(__TBB_INIT_DEPTH) {
-        my_divisor = tbb::internal::get_initial_auto_partitioner_divisor()*__TBB_INITIAL_CHUNKS/4;
-        __TBB_ASSERT(my_divisor, "initial value of get_initial_auto_partitioner_divisor() is not valid");
-    }
-    auto_partition_type_base(auto_partition_type_base &src, split) {
-        my_max_depth = src.my_max_depth;
-#if __TBB_INITIAL_TASK_IMBALANCE
-        if( src.my_divisor <= 1 ) my_divisor = 0;
-        else my_divisor = src.my_divisor = (src.my_divisor+1u) / 2u;
-#else
-        my_divisor = src.my_divisor / 2u;
-        src.my_divisor = src.my_divisor - my_divisor; // TODO: check the effect separately
-        if(my_divisor) src.my_max_depth += static_cast<depth_t>(__TBB_Log2(src.my_divisor/my_divisor));
-#endif
-    }
-    bool check_being_stolen( task &t) { // part of old should_execute_range()
-        if( !my_divisor ) {
-            my_divisor = 1; // todo: replace by on-stack flag (partition_state's member)?
-            if( t.is_stolen_task() ) {
-#if TBB_USE_EXCEPTIONS
-                // RTTI is available, check whether the cast is valid
-                __TBB_ASSERT(dynamic_cast<flag_task*>(t.parent()), 0);
-                // correctess of the cast rely on avoiding the root task for which:
-                // - initial value of my_divisor != 0 (protected by separate assertion)
-                // - is_stolen_task() always return false for the root task.
-#endif
-                static_cast<flag_task*>(t.parent())->child_stolen = true;
-                my_max_depth++;
-                return true;
-            }
-        }
-        return false;
-    }
-    bool divisions_left() { // part of old should_execute_range()
-        if( my_divisor > 1 ) return true;
-        if( my_divisor && my_max_depth > 1 ) { // can split the task and once more internally. TODO: on-stack flag instead
-            // keep same fragmentation while splitting for the local task pool
-            my_max_depth--;
-            my_divisor = 0;
-            return true;
-        } else return false;
-    }
-    bool should_create_trap() {
-        return my_divisor > 0;
-    }
-    bool check_for_demand(task &t) {
-        if( static_cast<flag_task*>(t.parent())->child_stolen ) {
-            my_max_depth++;
-            return true;
-        } else return false;
-    }
-    void align_depth(depth_t base) {
-        __TBB_ASSERT(base <= my_max_depth, 0);
-        my_max_depth -= base;
-    }
-    depth_t max_depth() { return my_max_depth; }
-};
-
-//! Provides default methods for affinity (adaptive) partition objects.
-class affinity_partition_type : public auto_partition_type_base<affinity_partition_type> {
-    static const unsigned factor_power = 4;
-    static const unsigned factor = 1<<factor_power;
-    bool my_delay;
-    unsigned map_begin, map_end, map_mid;
-    tbb::internal::affinity_id* my_array;
-    void set_mid() {
-        unsigned d = (map_end - map_begin)/2; // we could add 1 but it is rather for LIFO affinity
-        if( d > factor )
-            d &= 0u-factor;
-        map_mid = map_end - d;
-    }
-public:
-    affinity_partition_type( tbb::internal::affinity_partitioner_base_v3& ap ) {
-        __TBB_ASSERT( (factor&(factor-1))==0, "factor must be power of two" ); 
-        ap.resize(factor);
-        my_array = ap.my_array;
-        map_begin = 0;
-        map_end = unsigned(ap.my_size);
-        set_mid();
-        my_delay = true;
-        my_divisor /= __TBB_INITIAL_CHUNKS; // let excatly P tasks to be distributed across workers
-        my_max_depth = factor_power+1; // the first factor_power ranges will be spawned, and >=1 ranges should left
-        __TBB_ASSERT( my_max_depth < __TBB_RANGE_POOL_CAPACITY, 0 );
-    }
-    affinity_partition_type(affinity_partition_type& p, split)
-        : auto_partition_type_base<affinity_partition_type>(p, split()), my_array(p.my_array) {
-        __TBB_ASSERT( p.map_end-p.map_begin<factor || (p.map_end-p.map_begin)%factor==0, NULL );
-        map_end = p.map_end;
-        map_begin = p.map_end = p.map_mid;
-        set_mid(); p.set_mid();
-        my_delay = p.my_delay;
-    }
-    void set_affinity( task &t ) {
-        if( map_begin<map_end )
-            t.set_affinity( my_array[map_begin] );
-    }
-    void note_affinity( task::affinity_id id ) {
-        if( map_begin<map_end ) 
-            my_array[map_begin] = id;
-    }
-    bool check_for_demand( task &t ) {
-        if( !my_delay ) {
-            if( map_mid<map_end ) {
-                __TBB_ASSERT(my_max_depth>__TBB_Log2(map_end-map_mid), 0);
-                return true;// do not do my_max_depth++ here, but be sure my_max_depth is big enough
-            }
-            if( static_cast<flag_task*>(t.parent())->child_stolen ) {
-                my_max_depth++;
-                return true;
-            }
-        } else my_delay = false;
-        return false;
-    }
-    bool divisions_left() { // part of old should_execute_range()
-        return my_divisor > 1;
-    }
-    bool should_create_trap() {
-        return true; // TODO: rethink for the stage after memorizing level
-    }
-    static const unsigned range_pool_size = __TBB_RANGE_POOL_CAPACITY;
-};
-
-class auto_partition_type: public auto_partition_type_base<auto_partition_type> {
-public:
-    auto_partition_type( const auto_partitioner& ) {}
-    auto_partition_type( auto_partition_type& src, split)
-      : auto_partition_type_base<auto_partition_type>(src, split()) {}
-    static const unsigned range_pool_size = __TBB_RANGE_POOL_CAPACITY;
-};
-
-class simple_partition_type: public partition_type_base<simple_partition_type> {
-public:
-    simple_partition_type( const simple_partitioner& ) {}
-    simple_partition_type( const simple_partition_type&, split ) {}
-    //! simplified algorithm
-    template<typename StartType, typename Range>
-    void execute(StartType &start, Range &range) {
-        while( range.is_divisible() )
-            split_work( start );
-        start.run_body( range );
-    }
-    //static const unsigned range_pool_size = 1; - not necessary because execute() is overridden
-};
-
-//! Backward-compatible partition for auto and affinity partition objects.
-class old_auto_partition_type: public tbb::internal::partition_type_base {
-    size_t num_chunks;
-    static const size_t VICTIM_CHUNKS = 4;
-public:
-    bool should_execute_range(const task &t) {
-        if( num_chunks<VICTIM_CHUNKS && t.is_stolen_task() )
-            num_chunks = VICTIM_CHUNKS;
-        return num_chunks==1;
-    }
-    old_auto_partition_type( const auto_partitioner& )
-      : num_chunks(internal::get_initial_auto_partitioner_divisor()*__TBB_INITIAL_CHUNKS/4) {}
-    old_auto_partition_type( const affinity_partitioner& )
-      : num_chunks(internal::get_initial_auto_partitioner_divisor()*__TBB_INITIAL_CHUNKS/4) {}
-    old_auto_partition_type( old_auto_partition_type& pt, split ) {
-        num_chunks = pt.num_chunks = (pt.num_chunks+1u) / 2u;
-    }
-};
-
-} // namespace interfaceX::internal
-//! @endcond
-} // namespace interfaceX
-
-//! A simple partitioner 
-/** Divides the range until the range is not divisible. 
-    @ingroup algorithms */
-class simple_partitioner {
-public:
-    simple_partitioner() {}
-private:
-    template<typename Range, typename Body, typename Partitioner> friend class serial::interface6::start_for;
-    template<typename Range, typename Body, typename Partitioner> friend class interface6::internal::start_for;
-    template<typename Range, typename Body, typename Partitioner> friend class interface6::internal::start_reduce;
-    template<typename Range, typename Body, typename Partitioner> friend class internal::start_scan;
-    // backward compatibility
-    class partition_type: public internal::partition_type_base {
-    public:
-        bool should_execute_range(const task& ) {return false;}
-        partition_type( const simple_partitioner& ) {}
-        partition_type( const partition_type&, split ) {}
-    };
-    // new implementation just extends existing interface
-    typedef interface6::internal::simple_partition_type task_partition_type;
-};
-
-//! An auto partitioner 
-/** The range is initial divided into several large chunks.
-    Chunks are further subdivided into smaller pieces if demand detected and they are divisible.
-    @ingroup algorithms */
-class auto_partitioner {
-public:
-    auto_partitioner() {}
-
-private:
-    template<typename Range, typename Body, typename Partitioner> friend class serial::interface6::start_for;
-    template<typename Range, typename Body, typename Partitioner> friend class interface6::internal::start_for;
-    template<typename Range, typename Body, typename Partitioner> friend class interface6::internal::start_reduce;
-    template<typename Range, typename Body, typename Partitioner> friend class internal::start_scan;
-    // backward compatibility
-    typedef interface6::internal::old_auto_partition_type partition_type;
-    // new implementation just extends existing interface
-    typedef interface6::internal::auto_partition_type task_partition_type;
-};
-
-//! An affinity partitioner
-class affinity_partitioner: internal::affinity_partitioner_base_v3 {
-public:
-    affinity_partitioner() {}
-
-private:
-    template<typename Range, typename Body, typename Partitioner> friend class serial::interface6::start_for;
-    template<typename Range, typename Body, typename Partitioner> friend class interface6::internal::start_for;
-    template<typename Range, typename Body, typename Partitioner> friend class interface6::internal::start_reduce;
-    template<typename Range, typename Body, typename Partitioner> friend class internal::start_scan;
-    // backward compatibility - for parallel_scan only
-    typedef interface6::internal::old_auto_partition_type partition_type;
-    // new implementation just extends existing interface
-    typedef interface6::internal::affinity_partition_type task_partition_type;
-};
-
-} // namespace tbb
-
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER)
-    #pragma warning (pop)
-#endif // warning 4244 is back
-#undef __TBB_INITIAL_CHUNKS
-#undef __TBB_RANGE_POOL_CAPACITY
-#undef __TBB_INIT_DEPTH
-#endif /* __TBB_partitioner_H */
diff --git a/dependencies64/tbb/include/tbb/pipeline.h b/dependencies64/tbb/include/tbb/pipeline.h
deleted file mode 100644 (file)
index 60fe09b..0000000
+++ /dev/null
@@ -1,635 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_pipeline_H 
-#define __TBB_pipeline_H 
-
-#include "atomic.h"
-#include "task.h"
-#include "tbb_allocator.h"
-#include <cstddef>
-
-namespace tbb {
-
-class pipeline;
-class filter;
-
-//! @cond INTERNAL
-namespace internal {
-
-// The argument for PIPELINE_VERSION should be an integer between 2 and 9
-#define __TBB_PIPELINE_VERSION(x) (unsigned char)(x-2)<<1
-
-typedef unsigned long Token;
-typedef long tokendiff_t;
-class stage_task;
-class input_buffer;
-class pipeline_root_task;
-class pipeline_cleaner;
-
-} // namespace internal
-
-namespace interface6 {
-    template<typename T, typename U> class filter_t;
-
-    namespace internal {
-        class pipeline_proxy;
-    }
-}
-
-//! @endcond
-
-//! A stage in a pipeline.
-/** @ingroup algorithms */
-class filter: internal::no_copy {
-private:
-    //! Value used to mark "not in pipeline"
-    static filter* not_in_pipeline() {return reinterpret_cast<filter*>(intptr_t(-1));}
-protected:    
-    //! The lowest bit 0 is for parallel vs. serial
-    static const unsigned char filter_is_serial = 0x1; 
-
-    //! 4th bit distinguishes ordered vs unordered filters.
-    /** The bit was not set for parallel filters in TBB 2.1 and earlier,
-        but is_ordered() function always treats parallel filters as out of order. */
-    static const unsigned char filter_is_out_of_order = 0x1<<4;  
-
-    //! 5th bit distinguishes thread-bound and regular filters.
-    static const unsigned char filter_is_bound = 0x1<<5;  
-
-    //! 6th bit marks input filters emitting small objects
-    static const unsigned char filter_may_emit_null = 0x1<<6;
-
-    //! 7th bit defines exception propagation mode expected by the application.
-    static const unsigned char exact_exception_propagation =
-#if TBB_USE_CAPTURED_EXCEPTION
-            0x0;
-#else
-            0x1<<7;
-#endif /* TBB_USE_CAPTURED_EXCEPTION */
-
-    static const unsigned char current_version = __TBB_PIPELINE_VERSION(5);
-    static const unsigned char version_mask = 0x7<<1; // bits 1-3 are for version
-public:
-    enum mode {
-        //! processes multiple items in parallel and in no particular order
-        parallel = current_version | filter_is_out_of_order, 
-        //! processes items one at a time; all such filters process items in the same order
-        serial_in_order = current_version | filter_is_serial,
-        //! processes items one at a time and in no particular order
-        serial_out_of_order = current_version | filter_is_serial | filter_is_out_of_order,
-        //! @deprecated use serial_in_order instead
-        serial = serial_in_order
-    };
-protected:
-    filter( bool is_serial_ ) : 
-        next_filter_in_pipeline(not_in_pipeline()),
-        my_input_buffer(NULL),
-        my_filter_mode(static_cast<unsigned char>((is_serial_ ? serial : parallel) | exact_exception_propagation)),
-        prev_filter_in_pipeline(not_in_pipeline()),
-        my_pipeline(NULL),
-        next_segment(NULL)
-    {}
-    
-    filter( mode filter_mode ) :
-        next_filter_in_pipeline(not_in_pipeline()),
-        my_input_buffer(NULL),
-        my_filter_mode(static_cast<unsigned char>(filter_mode | exact_exception_propagation)),
-        prev_filter_in_pipeline(not_in_pipeline()),
-        my_pipeline(NULL),
-        next_segment(NULL)
-    {}
-
-    // signal end-of-input for concrete_filters
-    void __TBB_EXPORTED_METHOD set_end_of_input();
-
-public:
-    //! True if filter is serial.
-    bool is_serial() const {
-        return bool( my_filter_mode & filter_is_serial );
-    }  
-    
-    //! True if filter must receive stream in order.
-    bool is_ordered() const {
-        return (my_filter_mode & (filter_is_out_of_order|filter_is_serial))==filter_is_serial;
-    }
-
-    //! True if filter is thread-bound.
-    bool is_bound() const {
-        return ( my_filter_mode & filter_is_bound )==filter_is_bound;
-    }
-
-    //! true if an input filter can emit null
-    bool object_may_be_null() { 
-        return ( my_filter_mode & filter_may_emit_null ) == filter_may_emit_null;
-    }
-
-    //! Operate on an item from the input stream, and return item for output stream.
-    /** Returns NULL if filter is a sink. */
-    virtual void* operator()( void* item ) = 0;
-
-    //! Destroy filter.  
-    /** If the filter was added to a pipeline, the pipeline must be destroyed first. */
-    virtual __TBB_EXPORTED_METHOD ~filter();
-
-#if __TBB_TASK_GROUP_CONTEXT
-    //! Destroys item if pipeline was cancelled.
-    /** Required to prevent memory leaks.
-        Note it can be called concurrently even for serial filters.*/
-    virtual void finalize( void* /*item*/ ) {};
-#endif
-
-private:
-    //! Pointer to next filter in the pipeline.
-    filter* next_filter_in_pipeline;
-
-    //! has the filter not yet processed all the tokens it will ever see?  
-    //  (pipeline has not yet reached end_of_input or this filter has not yet
-    //  seen the last token produced by input_filter)
-    bool has_more_work();
-
-    //! Buffer for incoming tokens, or NULL if not required.
-    /** The buffer is required if the filter is serial or follows a thread-bound one. */
-    internal::input_buffer* my_input_buffer;
-
-    friend class internal::stage_task;
-    friend class internal::pipeline_root_task;
-    friend class pipeline;
-    friend class thread_bound_filter;
-
-    //! Storage for filter mode and dynamically checked implementation version.
-    const unsigned char my_filter_mode;
-
-    //! Pointer to previous filter in the pipeline.
-    filter* prev_filter_in_pipeline;
-
-    //! Pointer to the pipeline.
-    pipeline* my_pipeline;
-
-    //! Pointer to the next "segment" of filters, or NULL if not required.
-    /** In each segment, the first filter is not thread-bound but follows a thread-bound one. */
-    filter* next_segment;
-};
-
-//! A stage in a pipeline served by a user thread.
-/** @ingroup algorithms */
-class thread_bound_filter: public filter {
-public:
-    enum result_type {
-        // item was processed
-        success,
-        // item is currently not available
-        item_not_available,
-        // there are no more items to process
-        end_of_stream
-    };
-protected:
-    thread_bound_filter(mode filter_mode): 
-         filter(static_cast<mode>(filter_mode | filter::filter_is_bound))
-    {}
-public:
-    //! If a data item is available, invoke operator() on that item.  
-    /** This interface is non-blocking.
-        Returns 'success' if an item was processed.
-        Returns 'item_not_available' if no item can be processed now 
-        but more may arrive in the future, or if token limit is reached. 
-        Returns 'end_of_stream' if there are no more items to process. */
-    result_type __TBB_EXPORTED_METHOD try_process_item(); 
-
-    //! Wait until a data item becomes available, and invoke operator() on that item.
-    /** This interface is blocking.
-        Returns 'success' if an item was processed.
-        Returns 'end_of_stream' if there are no more items to process.
-        Never returns 'item_not_available', as it blocks until another return condition applies. */
-    result_type __TBB_EXPORTED_METHOD process_item();
-
-private:
-    //! Internal routine for item processing
-    result_type internal_process_item(bool is_blocking);
-};
-
-//! A processing pipeline that applies filters to items.
-/** @ingroup algorithms */
-class pipeline {
-public:
-    //! Construct empty pipeline.
-    __TBB_EXPORTED_METHOD pipeline();
-
-    /** Though the current implementation declares the destructor virtual, do not rely on this 
-        detail.  The virtualness is deprecated and may disappear in future versions of TBB. */
-    virtual __TBB_EXPORTED_METHOD ~pipeline();
-
-    //! Add filter to end of pipeline.
-    void __TBB_EXPORTED_METHOD add_filter( filter& filter_ );
-
-    //! Run the pipeline to completion.
-    void __TBB_EXPORTED_METHOD run( size_t max_number_of_live_tokens );
-
-#if __TBB_TASK_GROUP_CONTEXT
-    //! Run the pipeline to completion with user-supplied context.
-    void __TBB_EXPORTED_METHOD run( size_t max_number_of_live_tokens, tbb::task_group_context& context );
-#endif
-
-    //! Remove all filters from the pipeline.
-    void __TBB_EXPORTED_METHOD clear();
-
-private:
-    friend class internal::stage_task;
-    friend class internal::pipeline_root_task;
-    friend class filter;
-    friend class thread_bound_filter;
-    friend class internal::pipeline_cleaner;
-    friend class tbb::interface6::internal::pipeline_proxy;
-
-    //! Pointer to first filter in the pipeline.
-    filter* filter_list;
-
-    //! Pointer to location where address of next filter to be added should be stored.
-    filter* filter_end;
-
-    //! task who's reference count is used to determine when all stages are done.
-    task* end_counter;
-
-    //! Number of idle tokens waiting for input stage.
-    atomic<internal::Token> input_tokens;
-
-    //! Global counter of tokens 
-    atomic<internal::Token> token_counter;
-
-    //! False until fetch_input returns NULL.
-    bool end_of_input;
-
-    //! True if the pipeline contains a thread-bound filter; false otherwise.
-    bool has_thread_bound_filters;
-
-    //! Remove filter from pipeline.
-    void remove_filter( filter& filter_ );
-
-    //! Not used, but retained to satisfy old export files.
-    void __TBB_EXPORTED_METHOD inject_token( task& self );
-
-#if __TBB_TASK_GROUP_CONTEXT
-    //! Does clean up if pipeline is cancelled or exception occured
-    void clear_filters();
-#endif
-};
-
-//------------------------------------------------------------------------
-// Support for lambda-friendly parallel_pipeline interface
-//------------------------------------------------------------------------
-
-namespace interface6 {
-
-namespace internal {
-    template<typename T, typename U, typename Body> class concrete_filter;
-}
-
-//! input_filter control to signal end-of-input for parallel_pipeline
-class flow_control {
-    bool is_pipeline_stopped;
-    flow_control() { is_pipeline_stopped = false; }
-    template<typename T, typename U, typename Body> friend class internal::concrete_filter;
-public:
-    void stop() { is_pipeline_stopped = true; }
-};
-
-//! @cond INTERNAL
-namespace internal {
-
-template<typename T> struct is_large_object { enum { r = sizeof(T) > sizeof(void *) }; };
-
-template<typename T, bool> class token_helper;
-
-// large object helper (uses tbb_allocator)
-template<typename T>
-class token_helper<T, true> {
-    public:
-    typedef typename tbb::tbb_allocator<T> allocator;
-    typedef T* pointer;
-    typedef T value_type;
-    static pointer create_token(const value_type & source) {
-        pointer output_t = allocator().allocate(1);
-        return new (output_t) T(source);
-    }
-    static value_type & token(pointer & t) { return *t;}
-    static void * cast_to_void_ptr(pointer ref) { return (void *) ref; }
-    static pointer cast_from_void_ptr(void * ref) { return (pointer)ref; }
-    static void destroy_token(pointer token) {
-        allocator().destroy(token);
-        allocator().deallocate(token,1);
-    }
-};
-
-// pointer specialization
-template<typename T>
-class token_helper<T*, false > {
-    public:
-    typedef T* pointer;
-    typedef T* value_type;
-    static pointer create_token(const value_type & source) { return source; }
-    static value_type & token(pointer & t) { return t;}
-    static void * cast_to_void_ptr(pointer ref) { return (void *)ref; }
-    static pointer cast_from_void_ptr(void * ref) { return (pointer)ref; }
-    static void destroy_token( pointer /*token*/) {}
-};
-
-// small object specialization (converts void* to the correct type, passes objects directly.)
-template<typename T>
-class token_helper<T, false> {
-    typedef union {
-        T actual_value;
-        void * void_overlay;
-    } type_to_void_ptr_map;
-    public:
-    typedef T pointer;  // not really a pointer in this case.
-    typedef T value_type;
-    static pointer create_token(const value_type & source) {
-        return source; }
-    static value_type & token(pointer & t) { return t;}
-    static void * cast_to_void_ptr(pointer ref) { 
-        type_to_void_ptr_map mymap; 
-        mymap.void_overlay = NULL;
-        mymap.actual_value = ref; 
-        return mymap.void_overlay; 
-    }
-    static pointer cast_from_void_ptr(void * ref) { 
-        type_to_void_ptr_map mymap;
-        mymap.void_overlay = ref;
-        return mymap.actual_value;
-    }
-    static void destroy_token( pointer /*token*/) {}
-};
-
-template<typename T, typename U, typename Body>
-class concrete_filter: public tbb::filter {
-    const Body& my_body;
-    typedef token_helper<T,is_large_object<T>::r > t_helper;
-    typedef typename t_helper::pointer t_pointer;
-    typedef token_helper<U,is_large_object<U>::r > u_helper;
-    typedef typename u_helper::pointer u_pointer;
-
-    /*override*/ void* operator()(void* input) {
-        t_pointer temp_input = t_helper::cast_from_void_ptr(input);
-        u_pointer output_u = u_helper::create_token(my_body(t_helper::token(temp_input)));
-        t_helper::destroy_token(temp_input);
-        return u_helper::cast_to_void_ptr(output_u);
-    }
-
-public:
-    concrete_filter(tbb::filter::mode filter_mode, const Body& body) : filter(filter_mode), my_body(body) {}
-};
-
-// input 
-template<typename U, typename Body>
-class concrete_filter<void,U,Body>: public filter {
-    const Body& my_body;
-    typedef token_helper<U, is_large_object<U>::r > u_helper;
-    typedef typename u_helper::pointer u_pointer;
-
-    /*override*/void* operator()(void*) {
-        flow_control control;
-        u_pointer output_u = u_helper::create_token(my_body(control));
-        if(control.is_pipeline_stopped) {
-            u_helper::destroy_token(output_u);
-            set_end_of_input();
-            return NULL;
-        }
-        return u_helper::cast_to_void_ptr(output_u);
-    }
-
-public:
-    concrete_filter(tbb::filter::mode filter_mode, const Body& body) : 
-        filter(static_cast<tbb::filter::mode>(filter_mode | filter_may_emit_null)),
-        my_body(body)
-    {}
-};
-
-template<typename T, typename Body>
-class concrete_filter<T,void,Body>: public filter {
-    const Body& my_body;
-    typedef token_helper<T, is_large_object<T>::r > t_helper;
-    typedef typename t_helper::pointer t_pointer;
-   
-    /*override*/ void* operator()(void* input) {
-        t_pointer temp_input = t_helper::cast_from_void_ptr(input);
-        my_body(t_helper::token(temp_input));
-        t_helper::destroy_token(temp_input);
-        return NULL;
-    }
-public:
-    concrete_filter(tbb::filter::mode filter_mode, const Body& body) : filter(filter_mode), my_body(body) {}
-};
-
-template<typename Body>
-class concrete_filter<void,void,Body>: public filter {
-    const Body& my_body;
-    
-    /** Override privately because it is always called virtually */
-    /*override*/ void* operator()(void*) {
-        flow_control control;
-        my_body(control);
-        void* output = control.is_pipeline_stopped ? NULL : (void*)(intptr_t)-1; 
-        return output;
-    }
-public:
-    concrete_filter(filter::mode filter_mode, const Body& body) : filter(filter_mode), my_body(body) {}
-};
-
-//! The class that represents an object of the pipeline for parallel_pipeline().
-/** It primarily serves as RAII class that deletes heap-allocated filter instances. */
-class pipeline_proxy {
-    tbb::pipeline my_pipe;
-public:
-    pipeline_proxy( const filter_t<void,void>& filter_chain );
-    ~pipeline_proxy() {
-        while( filter* f = my_pipe.filter_list ) 
-            delete f; // filter destructor removes it from the pipeline
-    }
-    tbb::pipeline* operator->() { return &my_pipe; }
-};
-
-//! Abstract base class that represents a node in a parse tree underlying a filter_t.
-/** These nodes are always heap-allocated and can be shared by filter_t objects. */
-class filter_node: tbb::internal::no_copy {
-    /** Count must be atomic because it is hidden state for user, but might be shared by threads. */
-    tbb::atomic<intptr_t> ref_count;
-protected:
-    filter_node() {
-        ref_count = 0;
-#ifdef __TBB_TEST_FILTER_NODE_COUNT
-        ++(__TBB_TEST_FILTER_NODE_COUNT);
-#endif
-    }
-public:
-    //! Add concrete_filter to pipeline 
-    virtual void add_to( pipeline& ) = 0;
-    //! Increment reference count
-    void add_ref() {++ref_count;}
-    //! Decrement reference count and delete if it becomes zero.
-    void remove_ref() {
-        __TBB_ASSERT(ref_count>0,"ref_count underflow");
-        if( --ref_count==0 ) 
-            delete this;
-    }
-    virtual ~filter_node() {
-#ifdef __TBB_TEST_FILTER_NODE_COUNT
-        --(__TBB_TEST_FILTER_NODE_COUNT);
-#endif
-    }
-};
-
-//! Node in parse tree representing result of make_filter.
-template<typename T, typename U, typename Body>
-class filter_node_leaf: public filter_node  {
-    const tbb::filter::mode mode;
-    const Body body;
-    /*override*/void add_to( pipeline& p ) {
-        concrete_filter<T,U,Body>* f = new concrete_filter<T,U,Body>(mode,body);
-        p.add_filter( *f );
-    }
-public:
-    filter_node_leaf( tbb::filter::mode m, const Body& b ) : mode(m), body(b) {}
-};
-
-//! Node in parse tree representing join of two filters.
-class filter_node_join: public filter_node {
-    friend class filter_node; // to suppress GCC 3.2 warnings
-    filter_node& left;
-    filter_node& right;
-    /*override*/~filter_node_join() {
-       left.remove_ref();
-       right.remove_ref();
-    }
-    /*override*/void add_to( pipeline& p ) {
-        left.add_to(p);
-        right.add_to(p);
-    }
-public:
-    filter_node_join( filter_node& x, filter_node& y ) : left(x), right(y) {
-       left.add_ref();
-       right.add_ref();
-    }
-};
-
-} // namespace internal
-//! @endcond
-
-//! Create a filter to participate in parallel_pipeline
-template<typename T, typename U, typename Body>
-filter_t<T,U> make_filter(tbb::filter::mode mode, const Body& body) {
-    return new internal::filter_node_leaf<T,U,Body>(mode, body);
-}
-
-template<typename T, typename V, typename U>
-filter_t<T,U> operator& (const filter_t<T,V>& left, const filter_t<V,U>& right) {
-    __TBB_ASSERT(left.root,"cannot use default-constructed filter_t as left argument of '&'");
-    __TBB_ASSERT(right.root,"cannot use default-constructed filter_t as right argument of '&'");
-    return new internal::filter_node_join(*left.root,*right.root);
-}
-
-//! Class representing a chain of type-safe pipeline filters
-template<typename T, typename U>
-class filter_t {
-    typedef internal::filter_node filter_node;
-    filter_node* root;
-    filter_t( filter_node* root_ ) : root(root_) {
-        root->add_ref();
-    }
-    friend class internal::pipeline_proxy;
-    template<typename T_, typename U_, typename Body>
-    friend filter_t<T_,U_> make_filter(tbb::filter::mode, const Body& );
-    template<typename T_, typename V_, typename U_>
-    friend filter_t<T_,U_> operator& (const filter_t<T_,V_>& , const filter_t<V_,U_>& );
-public:
-    filter_t() : root(NULL) {}
-    filter_t( const filter_t<T,U>& rhs ) : root(rhs.root) {
-        if( root ) root->add_ref();
-    }
-    template<typename Body>
-    filter_t( tbb::filter::mode mode, const Body& body ) :
-        root( new internal::filter_node_leaf<T,U,Body>(mode, body) ) {
-        root->add_ref();
-    }
-
-    void operator=( const filter_t<T,U>& rhs ) {
-        // Order of operations below carefully chosen so that reference counts remain correct
-        // in unlikely event that remove_ref throws exception.
-        filter_node* old = root;
-        root = rhs.root; 
-        if( root ) root->add_ref();
-        if( old ) old->remove_ref();
-    }
-    ~filter_t() {
-        if( root ) root->remove_ref();
-    }
-    void clear() {
-        // Like operator= with filter_t() on right side.
-        if( root ) {
-            filter_node* old = root;
-            root = NULL;
-            old->remove_ref();
-        }
-    }
-};
-
-inline internal::pipeline_proxy::pipeline_proxy( const filter_t<void,void>& filter_chain ) : my_pipe() {
-    __TBB_ASSERT( filter_chain.root, "cannot apply parallel_pipeline to default-constructed filter_t"  );
-    filter_chain.root->add_to(my_pipe);
-}
-
-inline void parallel_pipeline(size_t max_number_of_live_tokens, const filter_t<void,void>& filter_chain
-#if __TBB_TASK_GROUP_CONTEXT
-    , tbb::task_group_context& context
-#endif
-    ) {
-    internal::pipeline_proxy pipe(filter_chain);
-    // tbb::pipeline::run() is called via the proxy
-    pipe->run(max_number_of_live_tokens
-#if __TBB_TASK_GROUP_CONTEXT
-              , context
-#endif
-    );
-}
-
-#if __TBB_TASK_GROUP_CONTEXT
-inline void parallel_pipeline(size_t max_number_of_live_tokens, const filter_t<void,void>& filter_chain) {
-    tbb::task_group_context context;
-    parallel_pipeline(max_number_of_live_tokens, filter_chain, context);
-}
-#endif // __TBB_TASK_GROUP_CONTEXT
-
-} // interface6
-
-using interface6::flow_control;
-using interface6::filter_t;
-using interface6::make_filter;
-using interface6::parallel_pipeline;
-
-} // tbb
-
-#endif /* __TBB_pipeline_H */
diff --git a/dependencies64/tbb/include/tbb/queuing_mutex.h b/dependencies64/tbb/include/tbb/queuing_mutex.h
deleted file mode 100644 (file)
index a7e224b..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_queuing_mutex_H
-#define __TBB_queuing_mutex_H
-
-#include "tbb_config.h"
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <cstring>
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-#include "atomic.h"
-#include "tbb_profiling.h"
-
-namespace tbb {
-
-//! Queuing lock with local-only spinning.
-/** @ingroup synchronization */
-class queuing_mutex {
-public:
-    //! Construct unacquired mutex.
-    queuing_mutex() {
-        q_tail = NULL;
-#if TBB_USE_THREADING_TOOLS
-        internal_construct();
-#endif
-    }
-
-    //! The scoped locking pattern
-    /** It helps to avoid the common problem of forgetting to release lock.
-        It also nicely provides the "node" for queuing locks. */
-    class scoped_lock: internal::no_copy {
-        //! Initialize fields to mean "no lock held".
-        void initialize() {
-            mutex = NULL;
-#if TBB_USE_ASSERT
-            internal::poison_pointer(next);
-#endif /* TBB_USE_ASSERT */
-        }
-    public:
-        //! Construct lock that has not acquired a mutex.
-        /** Equivalent to zero-initialization of *this. */
-        scoped_lock() {initialize();}
-
-        //! Acquire lock on given mutex.
-        scoped_lock( queuing_mutex& m ) {
-            initialize();
-            acquire(m);
-        }
-
-        //! Release lock (if lock is held).
-        ~scoped_lock() {
-            if( mutex ) release();
-        }
-
-        //! Acquire lock on given mutex.
-        void __TBB_EXPORTED_METHOD acquire( queuing_mutex& m );
-
-        //! Acquire lock on given mutex if free (i.e. non-blocking)
-        bool __TBB_EXPORTED_METHOD try_acquire( queuing_mutex& m );
-
-        //! Release lock.
-        void __TBB_EXPORTED_METHOD release();
-
-    private:
-        //! The pointer to the mutex owned, or NULL if not holding a mutex.
-        queuing_mutex* mutex;
-
-        //! The pointer to the next competitor for a mutex
-        scoped_lock *next;
-
-        //! The local spin-wait variable
-        /** Inverted (0 - blocked, 1 - acquired the mutex) for the sake of
-            zero-initialization.  Defining it as an entire word instead of
-            a byte seems to help performance slightly. */
-        uintptr_t going;
-    };
-
-    void __TBB_EXPORTED_METHOD internal_construct();
-
-    // Mutex traits
-    static const bool is_rw_mutex = false;
-    static const bool is_recursive_mutex = false;
-    static const bool is_fair_mutex = true;
-private:
-    //! The last competitor requesting the lock
-    atomic<scoped_lock*> q_tail;
-
-};
-
-__TBB_DEFINE_PROFILING_SET_NAME(queuing_mutex)
-
-} // namespace tbb
-
-#endif /* __TBB_queuing_mutex_H */
diff --git a/dependencies64/tbb/include/tbb/queuing_rw_mutex.h b/dependencies64/tbb/include/tbb/queuing_rw_mutex.h
deleted file mode 100644 (file)
index 644bdfd..0000000
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_queuing_rw_mutex_H
-#define __TBB_queuing_rw_mutex_H
-
-#include "tbb_config.h"
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <cstring>
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-#include "atomic.h"
-#include "tbb_profiling.h"
-
-namespace tbb {
-
-//! Reader-writer lock with local-only spinning.
-/** Adapted from Krieger, Stumm, et al. pseudocode at
-    http://www.eecg.toronto.edu/parallel/pubs_abs.html#Krieger_etal_ICPP93
-    @ingroup synchronization */
-class queuing_rw_mutex {
-public:
-    //! Construct unacquired mutex.
-    queuing_rw_mutex() {
-        q_tail = NULL;
-#if TBB_USE_THREADING_TOOLS
-        internal_construct();
-#endif
-    }
-
-    //! Destructor asserts if the mutex is acquired, i.e. q_tail is non-NULL
-    ~queuing_rw_mutex() {
-#if TBB_USE_ASSERT
-        __TBB_ASSERT( !q_tail, "destruction of an acquired mutex");
-#endif
-    }
-
-    class scoped_lock;
-    friend class scoped_lock;
-
-    //! The scoped locking pattern
-    /** It helps to avoid the common problem of forgetting to release lock.
-        It also nicely provides the "node" for queuing locks. */
-    class scoped_lock: internal::no_copy {
-        //! Initialize fields
-        void initialize() {
-            my_mutex = NULL;
-#if TBB_USE_ASSERT
-            my_state = 0xFF; // Set to invalid state
-            internal::poison_pointer(my_next);
-            internal::poison_pointer(my_prev);
-#endif /* TBB_USE_ASSERT */
-        }
-    public:
-        //! Construct lock that has not acquired a mutex.
-        /** Equivalent to zero-initialization of *this. */
-        scoped_lock() {initialize();}
-
-        //! Acquire lock on given mutex.
-        scoped_lock( queuing_rw_mutex& m, bool write=true ) {
-            initialize();
-            acquire(m,write);
-        }
-
-        //! Release lock (if lock is held).
-        ~scoped_lock() {
-            if( my_mutex ) release();
-        }
-
-        //! Acquire lock on given mutex.
-        void acquire( queuing_rw_mutex& m, bool write=true );
-
-        //! Try acquire lock on given mutex.
-        bool try_acquire( queuing_rw_mutex& m, bool write=true );
-
-        //! Release lock.
-        void release();
-
-        //! Upgrade reader to become a writer.
-        /** Returns true if the upgrade happened without re-acquiring the lock and false if opposite */
-        bool upgrade_to_writer();
-
-        //! Downgrade writer to become a reader.
-        bool downgrade_to_reader();
-
-    private:
-        //! The pointer to the current mutex to work
-        queuing_rw_mutex* my_mutex;
-
-        //! The pointer to the previous and next competitors for a mutex
-        scoped_lock *__TBB_atomic my_prev, *__TBB_atomic my_next;
-
-        typedef unsigned char state_t;
-
-        //! State of the request: reader, writer, active reader, other service states
-        atomic<state_t> my_state;
-
-        //! The local spin-wait variable
-        /** Corresponds to "spin" in the pseudocode but inverted for the sake of zero-initialization */
-        unsigned char __TBB_atomic my_going;
-
-        //! A tiny internal lock
-        unsigned char my_internal_lock;
-
-        //! Acquire the internal lock
-        void acquire_internal_lock();
-
-        //! Try to acquire the internal lock
-        /** Returns true if lock was successfully acquired. */
-        bool try_acquire_internal_lock();
-
-        //! Release the internal lock
-        void release_internal_lock();
-
-        //! Wait for internal lock to be released
-        void wait_for_release_of_internal_lock();
-
-        //! A helper function
-        void unblock_or_wait_on_internal_lock( uintptr_t );
-    };
-
-    void __TBB_EXPORTED_METHOD internal_construct();
-
-    // Mutex traits
-    static const bool is_rw_mutex = true;
-    static const bool is_recursive_mutex = false;
-    static const bool is_fair_mutex = true;
-
-private:
-    //! The last competitor requesting the lock
-    atomic<scoped_lock*> q_tail;
-
-};
-
-__TBB_DEFINE_PROFILING_SET_NAME(queuing_rw_mutex)
-
-} // namespace tbb
-
-#endif /* __TBB_queuing_rw_mutex_H */
diff --git a/dependencies64/tbb/include/tbb/reader_writer_lock.h b/dependencies64/tbb/include/tbb/reader_writer_lock.h
deleted file mode 100644 (file)
index 877234b..0000000
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_reader_writer_lock_H
-#define __TBB_reader_writer_lock_H
-
-#include "tbb_thread.h"
-#include "tbb_allocator.h"
-#include "atomic.h"
-
-namespace tbb {
-namespace interface5 {
-//! Writer-preference reader-writer lock with local-only spinning on readers.
-/** Loosely adapted from Mellor-Crummey and Scott pseudocode at
-    http://www.cs.rochester.edu/research/synchronization/pseudocode/rw.html#s_wp
-    @ingroup synchronization */
-    class reader_writer_lock : tbb::internal::no_copy {
- public:
-    friend class scoped_lock;
-    friend class scoped_lock_read;
-    //! Status type for nodes associated with lock instances
-    /** waiting_nonblocking: the wait state for nonblocking lock
-          instances; for writes, these transition straight to active
-          states; for reads, these are unused.
-
-        waiting: the start and spin state for all lock instances; these will
-          transition to active state when appropriate.  Non-blocking write locks
-          transition from this state to waiting_nonblocking immediately.
-
-        active: the active state means that the lock instance holds
-          the lock; it will transition to invalid state during node deletion
-
-        invalid: the end state for all nodes; this is set in the
-          destructor so if we encounter this state, we are looking at
-          memory that has already been freed
-        
-        The state diagrams below describe the status transitions.
-        Single arrows indicate that the thread that owns the node is
-        responsible for the transition; double arrows indicate that
-        any thread could make the transition.
-
-        State diagram for scoped_lock status:
-
-        waiting ----------> waiting_nonblocking
-          |     _____________/       |
-          V    V                     V
-        active -----------------> invalid
-  
-        State diagram for scoped_lock_read status:
-
-        waiting 
-          |                        
-          V                        
-        active ----------------->invalid
-
-    */
-    enum status_t { waiting_nonblocking, waiting, active, invalid };
-
-    //! Constructs a new reader_writer_lock
-    reader_writer_lock() {
-        internal_construct();
-    }
-
-    //! Destructs a reader_writer_lock object
-    ~reader_writer_lock() {
-        internal_destroy();
-    }
-
-    //! The scoped lock pattern for write locks
-    /** Scoped locks help avoid the common problem of forgetting to release the lock.
-        This type also serves as the node for queuing locks. */
-    class scoped_lock : tbb::internal::no_copy {
-    public:
-        friend class reader_writer_lock;
-        //! Construct with blocking attempt to acquire write lock on the passed-in lock 
-        scoped_lock(reader_writer_lock& lock) {
-            internal_construct(lock);
-        }
-        
-        //! Destructor, releases the write lock
-        ~scoped_lock() {
-            internal_destroy();
-        }
-
-        void* operator new(size_t s) {
-            return tbb::internal::allocate_via_handler_v3(s);
-        }
-        void operator delete(void* p) {
-            tbb::internal::deallocate_via_handler_v3(p);
-        }
-
-    private:
-        //! The pointer to the mutex to lock
-        reader_writer_lock *mutex;
-        //! The next queued competitor for the mutex
-        scoped_lock* next;
-        //! Status flag of the thread associated with this node
-        atomic<status_t> status;
-
-        //! Construct scoped_lock that is not holding lock
-        scoped_lock();
-
-        void __TBB_EXPORTED_METHOD internal_construct(reader_writer_lock&);
-        void __TBB_EXPORTED_METHOD internal_destroy();
-   };
-
-    //! The scoped lock pattern for read locks
-    class scoped_lock_read : tbb::internal::no_copy {
-    public:
-        friend class reader_writer_lock;
-
-        //! Construct with blocking attempt to acquire read lock on the passed-in lock 
-        scoped_lock_read(reader_writer_lock& lock) {
-            internal_construct(lock);
-        }
-
-        //! Destructor, releases the read lock
-        ~scoped_lock_read() { 
-            internal_destroy();
-        }
-        
-        void* operator new(size_t s) {
-            return tbb::internal::allocate_via_handler_v3(s);
-        }
-        void operator delete(void* p) {
-            tbb::internal::deallocate_via_handler_v3(p);
-        }
-
-    private:
-        //! The pointer to the mutex to lock
-        reader_writer_lock *mutex;
-        //! The next queued competitor for the mutex
-        scoped_lock_read *next;
-        //! Status flag of the thread associated with this node
-        atomic<status_t> status;
-
-        //! Construct scoped_lock_read that is not holding lock
-        scoped_lock_read();
-
-        void __TBB_EXPORTED_METHOD internal_construct(reader_writer_lock&);
-        void __TBB_EXPORTED_METHOD internal_destroy();
-    };
-    
-    //! Acquires the reader_writer_lock for write.  
-    /** If the lock is currently held in write mode by another
-        context, the writer will block by spinning on a local
-        variable.  Exceptions thrown: improper_lock The context tries
-        to acquire a reader_writer_lock that it already has write
-        ownership of.*/
-    void __TBB_EXPORTED_METHOD lock();
-
-    //! Tries to acquire the reader_writer_lock for write.   
-    /** This function does not block.  Return Value: True or false,
-        depending on whether the lock is acquired or not.  If the lock
-        is already held by this acquiring context, try_lock() returns
-        false. */
-    bool __TBB_EXPORTED_METHOD try_lock();
-
-    //! Acquires the reader_writer_lock for read.    
-    /** If the lock is currently held by a writer, this reader will
-        block and wait until the writers are done.  Exceptions thrown:
-        improper_lock The context tries to acquire a
-        reader_writer_lock that it already has write ownership of. */
-    void __TBB_EXPORTED_METHOD lock_read(); 
-
-    //! Tries to acquire the reader_writer_lock for read.  
-    /** This function does not block.  Return Value: True or false,
-        depending on whether the lock is acquired or not.  */
-    bool __TBB_EXPORTED_METHOD try_lock_read();
-
-    //! Releases the reader_writer_lock
-    void __TBB_EXPORTED_METHOD unlock();
-
- private:
-    void __TBB_EXPORTED_METHOD internal_construct();
-    void __TBB_EXPORTED_METHOD internal_destroy();
-
-    //! Attempts to acquire write lock
-    /** If unavailable, spins in blocking case, returns false in non-blocking case. */
-    bool start_write(scoped_lock *);
-    //! Sets writer_head to w and attempts to unblock
-    void set_next_writer(scoped_lock *w);
-    //! Relinquishes write lock to next waiting writer or group of readers 
-    void end_write(scoped_lock *);
-    //! Checks if current thread holds write lock
-    bool is_current_writer();
-
-    //! Attempts to acquire read lock
-    /** If unavailable, spins in blocking case, returns false in non-blocking case. */
-    void start_read(scoped_lock_read *);
-    //! Unblocks pending readers
-    void unblock_readers();
-    //! Relinquishes read lock by decrementing counter; last reader wakes pending writer
-    void end_read();
-
-    //! The list of pending readers
-    atomic<scoped_lock_read*> reader_head;
-    //! The list of pending writers
-    atomic<scoped_lock*> writer_head;
-    //! The last node in the list of pending writers
-    atomic<scoped_lock*> writer_tail;
-    //! Writer that owns the mutex; tbb_thread::id() otherwise.
-    tbb_thread::id my_current_writer;
-    //! Status of mutex
-    atomic<unsigned> rdr_count_and_flags;
-};
-
-} // namespace interface5
-
-using interface5::reader_writer_lock;
-
-} // namespace tbb
-
-#endif /* __TBB_reader_writer_lock_H */
diff --git a/dependencies64/tbb/include/tbb/recursive_mutex.h b/dependencies64/tbb/include/tbb/recursive_mutex.h
deleted file mode 100644 (file)
index 185fd19..0000000
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_recursive_mutex_H
-#define __TBB_recursive_mutex_H
-
-#if _WIN32||_WIN64
-#include "machine/windows_api.h"
-#else
-#include <pthread.h>
-#endif /* _WIN32||_WIN64 */
-
-#include <new>
-#include "aligned_space.h"
-#include "tbb_stddef.h"
-#include "tbb_profiling.h"
-
-namespace tbb {
-//! Mutex that allows recursive mutex acquisition.
-/** Mutex that allows recursive mutex acquisition.
-    @ingroup synchronization */
-class recursive_mutex {
-public:
-    //! Construct unacquired recursive_mutex.
-    recursive_mutex() {
-#if TBB_USE_ASSERT || TBB_USE_THREADING_TOOLS
-        internal_construct();
-#else
-  #if _WIN32||_WIN64
-        InitializeCriticalSection(&impl);
-  #else
-        pthread_mutexattr_t mtx_attr;
-        int error_code = pthread_mutexattr_init( &mtx_attr );
-        if( error_code )
-            tbb::internal::handle_perror(error_code,"recursive_mutex: pthread_mutexattr_init failed");
-
-        pthread_mutexattr_settype( &mtx_attr, PTHREAD_MUTEX_RECURSIVE );
-        error_code = pthread_mutex_init( &impl, &mtx_attr );
-        if( error_code )
-            tbb::internal::handle_perror(error_code,"recursive_mutex: pthread_mutex_init failed");
-
-        pthread_mutexattr_destroy( &mtx_attr );
-  #endif /* _WIN32||_WIN64*/
-#endif /* TBB_USE_ASSERT */
-    };
-
-    ~recursive_mutex() {
-#if TBB_USE_ASSERT
-        internal_destroy();
-#else
-  #if _WIN32||_WIN64
-        DeleteCriticalSection(&impl);
-  #else
-        pthread_mutex_destroy(&impl); 
-
-  #endif /* _WIN32||_WIN64 */
-#endif /* TBB_USE_ASSERT */
-    };
-
-    class scoped_lock;
-    friend class scoped_lock;
-
-    //! The scoped locking pattern
-    /** It helps to avoid the common problem of forgetting to release lock.
-        It also nicely provides the "node" for queuing locks. */
-    class scoped_lock: internal::no_copy {
-    public:
-        //! Construct lock that has not acquired a recursive_mutex. 
-        scoped_lock() : my_mutex(NULL) {};
-
-        //! Acquire lock on given mutex.
-        scoped_lock( recursive_mutex& mutex ) {
-#if TBB_USE_ASSERT
-            my_mutex = &mutex; 
-#endif /* TBB_USE_ASSERT */
-            acquire( mutex );
-        }
-
-        //! Release lock (if lock is held).
-        ~scoped_lock() {
-            if( my_mutex ) 
-                release();
-        }
-
-        //! Acquire lock on given mutex.
-        void acquire( recursive_mutex& mutex ) {
-#if TBB_USE_ASSERT
-            internal_acquire( mutex );
-#else
-            my_mutex = &mutex;
-            mutex.lock();
-#endif /* TBB_USE_ASSERT */
-        }
-
-        //! Try acquire lock on given recursive_mutex.
-        bool try_acquire( recursive_mutex& mutex ) {
-#if TBB_USE_ASSERT
-            return internal_try_acquire( mutex );
-#else
-            bool result = mutex.try_lock();
-            if( result )
-                my_mutex = &mutex;
-            return result;
-#endif /* TBB_USE_ASSERT */
-        }
-
-        //! Release lock
-        void release() {
-#if TBB_USE_ASSERT
-            internal_release();
-#else
-            my_mutex->unlock();
-            my_mutex = NULL;
-#endif /* TBB_USE_ASSERT */
-        }
-
-    private:
-        //! The pointer to the current recursive_mutex to work
-        recursive_mutex* my_mutex;
-
-        //! All checks from acquire using mutex.state were moved here
-        void __TBB_EXPORTED_METHOD internal_acquire( recursive_mutex& m );
-
-        //! All checks from try_acquire using mutex.state were moved here
-        bool __TBB_EXPORTED_METHOD internal_try_acquire( recursive_mutex& m );
-
-        //! All checks from release using mutex.state were moved here
-        void __TBB_EXPORTED_METHOD internal_release();
-
-        friend class recursive_mutex;
-    };
-
-    // Mutex traits
-    static const bool is_rw_mutex = false;
-    static const bool is_recursive_mutex = true;
-    static const bool is_fair_mutex = false;
-
-    // C++0x compatibility interface
-    
-    //! Acquire lock
-    void lock() {
-#if TBB_USE_ASSERT
-        aligned_space<scoped_lock,1> tmp;
-        new(tmp.begin()) scoped_lock(*this);
-#else
-  #if _WIN32||_WIN64
-        EnterCriticalSection(&impl);
-  #else
-        pthread_mutex_lock(&impl);
-  #endif /* _WIN32||_WIN64 */
-#endif /* TBB_USE_ASSERT */
-    }
-
-    //! Try acquiring lock (non-blocking)
-    /** Return true if lock acquired; false otherwise. */
-    bool try_lock() {
-#if TBB_USE_ASSERT
-        aligned_space<scoped_lock,1> tmp;
-        return (new(tmp.begin()) scoped_lock)->internal_try_acquire(*this);
-#else        
-  #if _WIN32||_WIN64
-        return TryEnterCriticalSection(&impl)!=0;
-  #else
-        return pthread_mutex_trylock(&impl)==0;
-  #endif /* _WIN32||_WIN64 */
-#endif /* TBB_USE_ASSERT */
-    }
-
-    //! Release lock
-    void unlock() {
-#if TBB_USE_ASSERT
-        aligned_space<scoped_lock,1> tmp;
-        scoped_lock& s = *tmp.begin();
-        s.my_mutex = this;
-        s.internal_release();
-#else
-  #if _WIN32||_WIN64
-        LeaveCriticalSection(&impl);
-  #else
-        pthread_mutex_unlock(&impl);
-  #endif /* _WIN32||_WIN64 */
-#endif /* TBB_USE_ASSERT */
-    }
-
-    //! Return native_handle
-  #if _WIN32||_WIN64
-    typedef LPCRITICAL_SECTION native_handle_type;
-  #else
-    typedef pthread_mutex_t* native_handle_type;
-  #endif
-    native_handle_type native_handle() { return (native_handle_type) &impl; }
-
-private:
-#if _WIN32||_WIN64
-    CRITICAL_SECTION impl;
-    enum state_t {
-        INITIALIZED=0x1234,
-        DESTROYED=0x789A,
-    } state;
-#else
-    pthread_mutex_t impl;
-#endif /* _WIN32||_WIN64 */
-
-    //! All checks from mutex constructor using mutex.state were moved here
-    void __TBB_EXPORTED_METHOD internal_construct();
-
-    //! All checks from mutex destructor using mutex.state were moved here
-    void __TBB_EXPORTED_METHOD internal_destroy();
-};
-
-__TBB_DEFINE_PROFILING_SET_NAME(recursive_mutex)
-
-} // namespace tbb 
-
-#endif /* __TBB_recursive_mutex_H */
diff --git a/dependencies64/tbb/include/tbb/runtime_loader.h b/dependencies64/tbb/include/tbb/runtime_loader.h
deleted file mode 100644 (file)
index e0d4526..0000000
+++ /dev/null
@@ -1,188 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_runtime_loader_H
-#define __TBB_runtime_loader_H
-
-#if ! TBB_PREVIEW_RUNTIME_LOADER
-    #error Set TBB_PREVIEW_RUNTIME_LOADER to include runtime_loader.h
-#endif
-
-#include "tbb/tbb_stddef.h"
-#include <climits>
-
-#if _MSC_VER
-    #if ! __TBB_NO_IMPLICIT_LINKAGE
-        #ifdef _DEBUG
-            #pragma comment( linker, "/nodefaultlib:tbb_debug.lib" )
-            #pragma comment( linker, "/defaultlib:tbbproxy_debug.lib" )
-        #else
-            #pragma comment( linker, "/nodefaultlib:tbb.lib" )
-            #pragma comment( linker, "/defaultlib:tbbproxy.lib" )
-        #endif
-    #endif
-#endif
-
-namespace tbb {
-
-namespace interface6 {
-
-//! Load TBB at runtime.
-/*!
-
-\b Usage:
-
-In source code:
-
-\code
-#include "tbb/runtime_loader.h"
-
-char const * path[] = { "<install dir>/lib/ia32", NULL };
-tbb::runtime_loader loader( path );
-
-// Now use TBB.
-\endcode
-
-Link with \c tbbproxy.lib (or \c libtbbproxy.a) instead of \c tbb.lib (\c libtbb.dylib,
-\c libtbb.so).
-
-TBB library will be loaded at runtime from \c <install dir>/lib/ia32 directory.
-
-\b Attention:
-
-All \c runtime_loader objects (in the same module, i.e. exe or dll) share some global state.
-The most noticeable piece of global state is loaded TBB library.
-There are some implications:
-
-    -   Only one TBB library can be loaded per module.
-
-    -   If one object has already loaded TBB library, another object will not load TBB.
-        If the loaded TBB library is suitable for the second object, both will use TBB
-        cooperatively, otherwise the second object will report an error.
-
-    -   \c runtime_loader objects will not work (correctly) in parallel due to absence of
-        syncronization.
-
-*/
-
-class runtime_loader : tbb::internal::no_copy {
-
-    public:
-
-        //! Error mode constants.
-        enum error_mode {
-            em_status,     //!< Save status of operation and continue.
-            em_throw,      //!< Throw an exception of tbb::runtime_loader::error_code type.
-            em_abort       //!< Print message to \c stderr and call \c abort().
-        }; // error_mode
-
-        //! Error codes.
-        enum error_code {
-            ec_ok,         //!< No errors.
-            ec_bad_call,   //!< Invalid function call (e. g. load() called when TBB is already loaded).
-            ec_bad_arg,    //!< Invalid argument passed.
-            ec_bad_lib,    //!< Invalid library found (e. g. \c TBB_runtime_version symbol not found).
-            ec_bad_ver,    //!< TBB found but version is not suitable.
-            ec_no_lib      //!< No suitable TBB library found.
-        }; // error_code
-
-        //! Initialize object but do not load TBB.
-        runtime_loader( error_mode mode = em_abort );
-
-        //! Initialize object and load TBB.
-        /*!
-            See load() for details.
-
-            If error mode is \c em_status, call status() to check whether TBB was loaded or not.
-        */
-        runtime_loader(
-            char const * path[],                           //!< List of directories to search TBB in.
-            int          min_ver = TBB_INTERFACE_VERSION,  //!< Minimal suitable version of TBB.
-            int          max_ver = INT_MAX,                //!< Maximal suitable version of TBB.
-            error_mode   mode    = em_abort                //!< Error mode for this object.
-        );
-
-        //! Destroy object.
-        ~runtime_loader();
-
-        //! Load TBB.
-        /*!
-            The method searches the directories specified in \c path[] array for the TBB library.
-            When the library is found, it is loaded and its version is checked. If the version is
-            not suitable, the library is unloaded, and the search continues.
-
-            \b Note:
-
-            For security reasons, avoid using relative directory names. For example, never load
-            TBB from current (\c "."), parent (\c "..") or any other relative directory (like
-            \c "lib" ). Use only absolute directory names (e. g. "/usr/local/lib").
-
-            For the same security reasons, avoid using system default directories (\c "") on
-            Windows. (See http://www.microsoft.com/technet/security/advisory/2269637.mspx for
-            details.)
-
-            Neglecting these rules may cause your program to execute 3-rd party malicious code.
-
-            \b Errors:
-                -   \c ec_bad_call - TBB already loaded by this object.
-                -   \c ec_bad_arg - \p min_ver and/or \p max_ver negative or zero,
-                    or \p min_ver > \p max_ver.
-                -   \c ec_bad_ver - TBB of unsuitable version already loaded by another object.
-                -   \c ec_no_lib - No suitable library found.
-        */
-        error_code
-        load(
-            char const * path[],                           //!< List of directories to search TBB in.
-            int          min_ver = TBB_INTERFACE_VERSION,  //!< Minimal suitable version of TBB.
-            int          max_ver = INT_MAX                 //!< Maximal suitable version of TBB.
-
-        );
-
-
-        //! Report status.
-        /*!
-            If error mode is \c em_status, the function returns status of the last operation.
-        */
-        error_code status();
-
-    private:
-
-        error_mode const my_mode;
-        error_code       my_status;
-        bool             my_loaded;
-
-}; // class runtime_loader
-
-} // namespace interface6
-
-using interface6::runtime_loader;
-
-} // namespace tbb
-
-#endif /* __TBB_runtime_loader_H */
-
diff --git a/dependencies64/tbb/include/tbb/scalable_allocator.h b/dependencies64/tbb/include/tbb/scalable_allocator.h
deleted file mode 100644 (file)
index 27f230e..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_scalable_allocator_H
-#define __TBB_scalable_allocator_H
-/** @file */
-
-#include <stddef.h> /* Need ptrdiff_t and size_t from here. */
-#if !_MSC_VER
-#include <stdint.h> /* Need intptr_t from here. */
-#endif
-
-#if !defined(__cplusplus) && __ICC==1100
-    #pragma warning (push)
-    #pragma warning (disable: 991)
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-#if _MSC_VER >= 1400
-#define __TBB_EXPORTED_FUNC   __cdecl
-#else
-#define __TBB_EXPORTED_FUNC
-#endif
-
-/** The "malloc" analogue to allocate block of memory of size bytes.
-  * @ingroup memory_allocation */
-void * __TBB_EXPORTED_FUNC scalable_malloc (size_t size);
-
-/** The "free" analogue to discard a previously allocated piece of memory.
-    @ingroup memory_allocation */
-void   __TBB_EXPORTED_FUNC scalable_free (void* ptr);
-
-/** The "realloc" analogue complementing scalable_malloc.
-    @ingroup memory_allocation */
-void * __TBB_EXPORTED_FUNC scalable_realloc (void* ptr, size_t size);
-
-/** The "calloc" analogue complementing scalable_malloc.
-    @ingroup memory_allocation */
-void * __TBB_EXPORTED_FUNC scalable_calloc (size_t nobj, size_t size);
-
-/** The "posix_memalign" analogue.
-    @ingroup memory_allocation */
-int __TBB_EXPORTED_FUNC scalable_posix_memalign (void** memptr, size_t alignment, size_t size);
-
-/** The "_aligned_malloc" analogue.
-    @ingroup memory_allocation */
-void * __TBB_EXPORTED_FUNC scalable_aligned_malloc (size_t size, size_t alignment);
-
-/** The "_aligned_realloc" analogue.
-    @ingroup memory_allocation */
-void * __TBB_EXPORTED_FUNC scalable_aligned_realloc (void* ptr, size_t size, size_t alignment);
-
-/** The "_aligned_free" analogue.
-    @ingroup memory_allocation */
-void __TBB_EXPORTED_FUNC scalable_aligned_free (void* ptr);
-
-/** The analogue of _msize/malloc_size/malloc_usable_size.
-    Returns the usable size of a memory block previously allocated by scalable_*,
-    or 0 (zero) if ptr does not point to such a block.
-    @ingroup memory_allocation */
-size_t __TBB_EXPORTED_FUNC scalable_msize (void* ptr);
-
-#ifdef __cplusplus
-} /* extern "C" */
-#endif /* __cplusplus */
-
-#ifdef __cplusplus
-
-namespace rml {
-class MemoryPool;
-
-#define MEM_POLICY_DEFINED 1
-typedef void *(*rawAllocType)(intptr_t pool_id, size_t &bytes);
-typedef int   (*rawFreeType)(intptr_t pool_id, void* raw_ptr, size_t raw_bytes);
-
-struct MemPoolPolicy {
-    rawAllocType pAlloc;
-    rawFreeType  pFree;
-    size_t       granularity;   // granularity of pAlloc allocations
-    void        *pReserved;     // reserved for future extensions
-    size_t       szReserved;    // size of pReserved data
-};
-
-MemoryPool *pool_create(intptr_t pool_id, const MemPoolPolicy* memPoolPolicy);
-bool  pool_destroy(MemoryPool* memPool);
-void *pool_malloc(MemoryPool* memPool, size_t size);
-void *pool_realloc(MemoryPool* memPool, void *object, size_t size);
-bool  pool_reset(MemoryPool* memPool);
-bool  pool_free(MemoryPool *memPool, void *object);
-}
-
-#include <new>      /* To use new with the placement argument */
-
-/* Ensure that including this header does not cause implicit linkage with TBB */
-#ifndef __TBB_NO_IMPLICIT_LINKAGE
-    #define __TBB_NO_IMPLICIT_LINKAGE 1
-    #include "tbb_stddef.h"
-    #undef  __TBB_NO_IMPLICIT_LINKAGE
-#else
-    #include "tbb_stddef.h"
-#endif
-
-
-namespace tbb {
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    // Workaround for erroneous "unreferenced parameter" warning in method destroy.
-    #pragma warning (push)
-    #pragma warning (disable: 4100)
-#endif
-
-//! Meets "allocator" requirements of ISO C++ Standard, Section 20.1.5
-/** The members are ordered the same way they are in section 20.4.1
-    of the ISO C++ standard.
-    @ingroup memory_allocation */
-template<typename T>
-class scalable_allocator {
-public:
-    typedef typename internal::allocator_type<T>::value_type value_type;
-    typedef value_type* pointer;
-    typedef const value_type* const_pointer;
-    typedef value_type& reference;
-    typedef const value_type& const_reference;
-    typedef size_t size_type;
-    typedef ptrdiff_t difference_type;
-    template<class U> struct rebind {
-        typedef scalable_allocator<U> other;
-    };
-
-    scalable_allocator() throw() {}
-    scalable_allocator( const scalable_allocator& ) throw() {}
-    template<typename U> scalable_allocator(const scalable_allocator<U>&) throw() {}
-
-    pointer address(reference x) const {return &x;}
-    const_pointer address(const_reference x) const {return &x;}
-
-    //! Allocate space for n objects.
-    pointer allocate( size_type n, const void* /*hint*/ =0 ) {
-        return static_cast<pointer>( scalable_malloc( n * sizeof(value_type) ) );
-    }
-
-    //! Free previously allocated block of memory
-    void deallocate( pointer p, size_type ) {
-        scalable_free( p );
-    }
-
-    //! Largest value for which method allocate might succeed.
-    size_type max_size() const throw() {
-        size_type absolutemax = static_cast<size_type>(-1) / sizeof (value_type);
-        return (absolutemax > 0 ? absolutemax : 1);
-    }
-    void construct( pointer p, const value_type& value ) {::new((void*)(p)) value_type(value);}
-    void destroy( pointer p ) {p->~value_type();}
-};
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    #pragma warning (pop)
-#endif // warning 4100 is back
-
-//! Analogous to std::allocator<void>, as defined in ISO C++ Standard, Section 20.4.1
-/** @ingroup memory_allocation */
-template<>
-class scalable_allocator<void> {
-public:
-    typedef void* pointer;
-    typedef const void* const_pointer;
-    typedef void value_type;
-    template<class U> struct rebind {
-        typedef scalable_allocator<U> other;
-    };
-};
-
-template<typename T, typename U>
-inline bool operator==( const scalable_allocator<T>&, const scalable_allocator<U>& ) {return true;}
-
-template<typename T, typename U>
-inline bool operator!=( const scalable_allocator<T>&, const scalable_allocator<U>& ) {return false;}
-
-} // namespace tbb
-
-#if _MSC_VER
-    #if __TBB_BUILD && !defined(__TBBMALLOC_NO_IMPLICIT_LINKAGE)
-        #define __TBBMALLOC_NO_IMPLICIT_LINKAGE 1
-    #endif
-
-    #if !__TBBMALLOC_NO_IMPLICIT_LINKAGE
-        #ifdef _DEBUG
-            #pragma comment(lib, "tbbmalloc_debug.lib")
-        #else
-            #pragma comment(lib, "tbbmalloc.lib")
-        #endif
-    #endif
-
-
-#endif
-
-#endif /* __cplusplus */
-
-#if !defined(__cplusplus) && __ICC==1100
-    #pragma warning (pop)
-#endif // ICC 11.0 warning 991 is back
-
-#endif /* __TBB_scalable_allocator_H */
diff --git a/dependencies64/tbb/include/tbb/spin_mutex.h b/dependencies64/tbb/include/tbb/spin_mutex.h
deleted file mode 100644 (file)
index 0d200a1..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_spin_mutex_H
-#define __TBB_spin_mutex_H
-
-#include <cstddef>
-#include <new>
-#include "aligned_space.h"
-#include "tbb_stddef.h"
-#include "tbb_machine.h"
-#include "tbb_profiling.h"
-
-namespace tbb {
-
-//! A lock that occupies a single byte.
-/** A spin_mutex is a spin mutex that fits in a single byte.  
-    It should be used only for locking short critical sections 
-    (typically less than 20 instructions) when fairness is not an issue.  
-    If zero-initialized, the mutex is considered unheld.
-    @ingroup synchronization */
-class spin_mutex {
-    //! 0 if lock is released, 1 if lock is acquired.
-    __TBB_atomic_flag flag;
-
-public:
-    //! Construct unacquired lock.
-    /** Equivalent to zero-initialization of *this. */
-    spin_mutex() : flag(0) {
-#if TBB_USE_THREADING_TOOLS
-        internal_construct();
-#endif
-    }
-
-    //! Represents acquisition of a mutex.
-    class scoped_lock : internal::no_copy {
-    private:
-        //! Points to currently held mutex, or NULL if no lock is held.
-        spin_mutex* my_mutex; 
-
-        //! Value to store into spin_mutex::flag to unlock the mutex.
-        __TBB_Flag my_unlock_value;
-
-        //! Like acquire, but with ITT instrumentation.
-        void __TBB_EXPORTED_METHOD internal_acquire( spin_mutex& m );
-
-        //! Like try_acquire, but with ITT instrumentation.
-        bool __TBB_EXPORTED_METHOD internal_try_acquire( spin_mutex& m );
-
-        //! Like release, but with ITT instrumentation.
-        void __TBB_EXPORTED_METHOD internal_release();
-
-        friend class spin_mutex;
-
-    public:
-        //! Construct without acquiring a mutex.
-        scoped_lock() : my_mutex(NULL), my_unlock_value(0) {}
-
-        //! Construct and acquire lock on a mutex.
-        scoped_lock( spin_mutex& m ) { 
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-            my_mutex=NULL;
-            internal_acquire(m);
-#else
-            my_unlock_value = __TBB_LockByte(m.flag);
-            my_mutex=&m;
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT*/
-        }
-
-        //! Acquire lock.
-        void acquire( spin_mutex& m ) {
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-            internal_acquire(m);
-#else
-            my_unlock_value = __TBB_LockByte(m.flag);
-            my_mutex = &m;
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT*/
-        }
-
-        //! Try acquiring lock (non-blocking)
-        /** Return true if lock acquired; false otherwise. */
-        bool try_acquire( spin_mutex& m ) {
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-            return internal_try_acquire(m);
-#else
-            bool result = __TBB_TryLockByte(m.flag);
-            if( result ) {
-                my_unlock_value = 0;
-                my_mutex = &m;
-            }
-            return result;
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT*/
-        }
-
-        //! Release lock
-        void release() {
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-            internal_release();
-#else
-            __TBB_UnlockByte(my_mutex->flag, my_unlock_value);
-            my_mutex = NULL;
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT */
-        }
-
-        //! Destroy lock.  If holding a lock, releases the lock first.
-        ~scoped_lock() {
-            if( my_mutex ) {
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-                internal_release();
-#else
-                __TBB_UnlockByte(my_mutex->flag, my_unlock_value);
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT */
-            }
-        }
-    };
-
-    void __TBB_EXPORTED_METHOD internal_construct();
-
-    // Mutex traits
-    static const bool is_rw_mutex = false;
-    static const bool is_recursive_mutex = false;
-    static const bool is_fair_mutex = false;
-
-    // ISO C++0x compatibility methods
-
-    //! Acquire lock
-    void lock() {
-#if TBB_USE_THREADING_TOOLS
-        aligned_space<scoped_lock,1> tmp;
-        new(tmp.begin()) scoped_lock(*this);
-#else
-        __TBB_LockByte(flag);
-#endif /* TBB_USE_THREADING_TOOLS*/
-    }
-
-    //! Try acquiring lock (non-blocking)
-    /** Return true if lock acquired; false otherwise. */
-    bool try_lock() {
-#if TBB_USE_THREADING_TOOLS
-        aligned_space<scoped_lock,1> tmp;
-        return (new(tmp.begin()) scoped_lock)->internal_try_acquire(*this);
-#else
-        return __TBB_TryLockByte(flag);
-#endif /* TBB_USE_THREADING_TOOLS*/
-    }
-
-    //! Release lock
-    void unlock() {
-#if TBB_USE_THREADING_TOOLS
-        aligned_space<scoped_lock,1> tmp;
-        scoped_lock& s = *tmp.begin();
-        s.my_mutex = this;
-        s.my_unlock_value = 0;
-        s.internal_release();
-#else
-        __TBB_store_with_release(flag, 0);
-#endif /* TBB_USE_THREADING_TOOLS */
-    }
-
-    friend class scoped_lock;
-};
-
-__TBB_DEFINE_PROFILING_SET_NAME(spin_mutex)
-
-} // namespace tbb
-
-#endif /* __TBB_spin_mutex_H */
diff --git a/dependencies64/tbb/include/tbb/spin_rw_mutex.h b/dependencies64/tbb/include/tbb/spin_rw_mutex.h
deleted file mode 100644 (file)
index cfe806e..0000000
+++ /dev/null
@@ -1,228 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_spin_rw_mutex_H
-#define __TBB_spin_rw_mutex_H
-
-#include "tbb_stddef.h"
-#include "tbb_machine.h"
-#include "tbb_profiling.h"
-
-namespace tbb {
-
-class spin_rw_mutex_v3;
-typedef spin_rw_mutex_v3 spin_rw_mutex;
-
-//! Fast, unfair, spinning reader-writer lock with backoff and writer-preference
-/** @ingroup synchronization */
-class spin_rw_mutex_v3 {
-    //! @cond INTERNAL
-
-    //! Internal acquire write lock.
-    bool __TBB_EXPORTED_METHOD internal_acquire_writer();
-
-    //! Out of line code for releasing a write lock.  
-    /** This code is has debug checking and instrumentation for Intel(R) Thread Checker and Intel(R) Thread Profiler. */
-    void __TBB_EXPORTED_METHOD internal_release_writer();
-
-    //! Internal acquire read lock.
-    void __TBB_EXPORTED_METHOD internal_acquire_reader();
-
-    //! Internal upgrade reader to become a writer.
-    bool __TBB_EXPORTED_METHOD internal_upgrade();
-
-    //! Out of line code for downgrading a writer to a reader.   
-    /** This code is has debug checking and instrumentation for Intel(R) Thread Checker and Intel(R) Thread Profiler. */
-    void __TBB_EXPORTED_METHOD internal_downgrade();
-
-    //! Internal release read lock.
-    void __TBB_EXPORTED_METHOD internal_release_reader();
-
-    //! Internal try_acquire write lock.
-    bool __TBB_EXPORTED_METHOD internal_try_acquire_writer();
-
-    //! Internal try_acquire read lock.
-    bool __TBB_EXPORTED_METHOD internal_try_acquire_reader();
-
-    //! @endcond
-public:
-    //! Construct unacquired mutex.
-    spin_rw_mutex_v3() : state(0) {
-#if TBB_USE_THREADING_TOOLS
-        internal_construct();
-#endif
-    }
-
-#if TBB_USE_ASSERT
-    //! Destructor asserts if the mutex is acquired, i.e. state is zero.
-    ~spin_rw_mutex_v3() {
-        __TBB_ASSERT( !state, "destruction of an acquired mutex");
-    };
-#endif /* TBB_USE_ASSERT */
-
-    //! The scoped locking pattern
-    /** It helps to avoid the common problem of forgetting to release lock.
-        It also nicely provides the "node" for queuing locks. */
-    class scoped_lock : internal::no_copy {
-    public:
-        //! Construct lock that has not acquired a mutex.
-        /** Equivalent to zero-initialization of *this. */
-        scoped_lock() : mutex(NULL), is_writer(false) {}
-
-        //! Acquire lock on given mutex.
-        scoped_lock( spin_rw_mutex& m, bool write = true ) : mutex(NULL) {
-            acquire(m, write);
-        }
-
-        //! Release lock (if lock is held).
-        ~scoped_lock() {
-            if( mutex ) release();
-        }
-
-        //! Acquire lock on given mutex.
-        void acquire( spin_rw_mutex& m, bool write = true ) {
-            __TBB_ASSERT( !mutex, "holding mutex already" );
-            is_writer = write; 
-            mutex = &m;
-            if( write ) mutex->internal_acquire_writer();
-            else        mutex->internal_acquire_reader();
-        }
-
-        //! Upgrade reader to become a writer.
-        /** Returns true if the upgrade happened without re-acquiring the lock and false if opposite */
-        bool upgrade_to_writer() {
-            __TBB_ASSERT( mutex, "lock is not acquired" );
-            __TBB_ASSERT( !is_writer, "not a reader" );
-            is_writer = true; 
-            return mutex->internal_upgrade();
-        }
-
-        //! Release lock.
-        void release() {
-            __TBB_ASSERT( mutex, "lock is not acquired" );
-            spin_rw_mutex *m = mutex; 
-            mutex = NULL;
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-            if( is_writer ) m->internal_release_writer();
-            else            m->internal_release_reader();
-#else
-            if( is_writer ) __TBB_AtomicAND( &m->state, READERS ); 
-            else            __TBB_FetchAndAddWrelease( &m->state, -(intptr_t)ONE_READER);
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT */
-        }
-
-        //! Downgrade writer to become a reader.
-        bool downgrade_to_reader() {
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-            __TBB_ASSERT( mutex, "lock is not acquired" );
-            __TBB_ASSERT( is_writer, "not a writer" );
-            mutex->internal_downgrade();
-#else
-            __TBB_FetchAndAddW( &mutex->state, ((intptr_t)ONE_READER-WRITER));
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT */
-            is_writer = false;
-
-            return true;
-        }
-
-        //! Try acquire lock on given mutex.
-        bool try_acquire( spin_rw_mutex& m, bool write = true ) {
-            __TBB_ASSERT( !mutex, "holding mutex already" );
-            bool result;
-            is_writer = write; 
-            result = write? m.internal_try_acquire_writer()
-                          : m.internal_try_acquire_reader();
-            if( result ) 
-                mutex = &m;
-            return result;
-        }
-
-    protected:
-        //! The pointer to the current mutex that is held, or NULL if no mutex is held.
-        spin_rw_mutex* mutex;
-
-        //! If mutex!=NULL, then is_writer is true if holding a writer lock, false if holding a reader lock.
-        /** Not defined if not holding a lock. */
-        bool is_writer;
-    };
-
-    // Mutex traits
-    static const bool is_rw_mutex = true;
-    static const bool is_recursive_mutex = false;
-    static const bool is_fair_mutex = false;
-
-    // ISO C++0x compatibility methods
-
-    //! Acquire writer lock
-    void lock() {internal_acquire_writer();}
-
-    //! Try acquiring writer lock (non-blocking)
-    /** Return true if lock acquired; false otherwise. */
-    bool try_lock() {return internal_try_acquire_writer();}
-
-    //! Release lock
-    void unlock() {
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-        if( state&WRITER ) internal_release_writer();
-        else               internal_release_reader();
-#else
-        if( state&WRITER ) __TBB_AtomicAND( &state, READERS ); 
-        else               __TBB_FetchAndAddWrelease( &state, -(intptr_t)ONE_READER);
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT */
-    }
-
-    // Methods for reader locks that resemble ISO C++0x compatibility methods.
-
-    //! Acquire reader lock
-    void lock_read() {internal_acquire_reader();}
-
-    //! Try acquiring reader lock (non-blocking)
-    /** Return true if reader lock acquired; false otherwise. */
-    bool try_lock_read() {return internal_try_acquire_reader();}
-
-private:
-    typedef intptr_t state_t;
-    static const state_t WRITER = 1;
-    static const state_t WRITER_PENDING = 2;
-    static const state_t READERS = ~(WRITER | WRITER_PENDING);
-    static const state_t ONE_READER = 4;
-    static const state_t BUSY = WRITER | READERS;
-    //! State of lock
-    /** Bit 0 = writer is holding lock
-        Bit 1 = request by a writer to acquire lock (hint to readers to wait)
-        Bit 2..N = number of readers holding lock */
-    state_t state;
-
-    void __TBB_EXPORTED_METHOD internal_construct();
-};
-
-__TBB_DEFINE_PROFILING_SET_NAME(spin_rw_mutex)
-
-} // namespace tbb
-
-#endif /* __TBB_spin_rw_mutex_H */
diff --git a/dependencies64/tbb/include/tbb/task.h b/dependencies64/tbb/include/tbb/task.h
deleted file mode 100644 (file)
index a887431..0000000
+++ /dev/null
@@ -1,961 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_task_H
-#define __TBB_task_H
-
-#include "tbb_stddef.h"
-#include "tbb_machine.h"
-#include <climits>
-
-typedef struct ___itt_caller *__itt_caller;
-
-namespace tbb {
-
-class task;
-class task_list;
-
-#if __TBB_TASK_GROUP_CONTEXT
-class task_group_context;
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-// MSVC does not allow taking the address of a member that was defined
-// privately in task_base and made public in class task via a using declaration.
-#if _MSC_VER || (__GNUC__==3 && __GNUC_MINOR__<3)
-#define __TBB_TASK_BASE_ACCESS public
-#else
-#define __TBB_TASK_BASE_ACCESS private
-#endif
-
-namespace internal {
-
-    class allocate_additional_child_of_proxy: no_assign {
-        //! No longer used, but retained for binary layout compatibility.  Always NULL.
-        task* self;
-        task& parent;
-    public:
-        explicit allocate_additional_child_of_proxy( task& parent_ ) : self(NULL), parent(parent_) {}
-        task& __TBB_EXPORTED_METHOD allocate( size_t size ) const;
-        void __TBB_EXPORTED_METHOD free( task& ) const;
-    };
-
-}
-
-namespace interface5 {
-    namespace internal {
-        //! Base class for methods that became static in TBB 3.0.
-        /** TBB's evolution caused the "this" argument for several methods to become obsolete.
-            However, for backwards binary compatibility, the new methods need distinct names,
-            otherwise the One Definition Rule would be broken.  Hence the new methods are
-            defined in this private base class, and then exposed in class task via
-            using declarations. */
-        class task_base: tbb::internal::no_copy {
-        __TBB_TASK_BASE_ACCESS:
-            friend class tbb::task;
-
-            //! Schedule task for execution when a worker becomes available.
-            static void spawn( task& t );
-
-            //! Spawn multiple tasks and clear list.
-            static void spawn( task_list& list );
-
-            //! Like allocate_child, except that task's parent becomes "t", not this.
-            /** Typically used in conjunction with schedule_to_reexecute to implement while loops.
-               Atomically increments the reference count of t.parent() */
-            static tbb::internal::allocate_additional_child_of_proxy allocate_additional_child_of( task& t ) {
-                return tbb::internal::allocate_additional_child_of_proxy(t);
-            }
-
-            //! Destroy a task.
-            /** Usually, calling this method is unnecessary, because a task is
-                implicitly deleted after its execute() method runs.  However,
-                sometimes a task needs to be explicitly deallocated, such as
-                when a root task is used as the parent in spawn_and_wait_for_all. */
-            static void __TBB_EXPORTED_FUNC destroy( task& victim );
-        };
-    } // internal
-} // interface5
-
-//! @cond INTERNAL
-namespace internal {
-
-    class scheduler: no_copy {
-    public:
-        //! For internal use only
-        virtual void spawn( task& first, task*& next ) = 0;
-
-        //! For internal use only
-        virtual void wait_for_all( task& parent, task* child ) = 0;
-
-        //! For internal use only
-        virtual void spawn_root_and_wait( task& first, task*& next ) = 0;
-
-        //! Pure virtual destructor;
-        //  Have to have it just to shut up overzealous compilation warnings
-        virtual ~scheduler() = 0;
-
-        //! For internal use only
-        virtual void enqueue( task& t, void* reserved ) = 0;
-    };
-
-    //! A reference count
-    /** Should always be non-negative.  A signed type is used so that underflow can be detected. */
-    typedef intptr_t reference_count;
-
-    //! An id as used for specifying affinity.
-    typedef unsigned short affinity_id;
-
-#if __TBB_TASK_GROUP_CONTEXT
-    class generic_scheduler;
-
-    struct context_list_node_t {
-        context_list_node_t *my_prev,
-                            *my_next;
-    };
-
-    class allocate_root_with_context_proxy: no_assign {
-        task_group_context& my_context;
-    public:
-        allocate_root_with_context_proxy ( task_group_context& ctx ) : my_context(ctx) {}
-        task& __TBB_EXPORTED_METHOD allocate( size_t size ) const;
-        void __TBB_EXPORTED_METHOD free( task& ) const;
-    };
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-    class allocate_root_proxy: no_assign {
-    public:
-        static task& __TBB_EXPORTED_FUNC allocate( size_t size );
-        static void __TBB_EXPORTED_FUNC free( task& );
-    };
-
-    class allocate_continuation_proxy: no_assign {
-    public:
-        task& __TBB_EXPORTED_METHOD allocate( size_t size ) const;
-        void __TBB_EXPORTED_METHOD free( task& ) const;
-    };
-
-    class allocate_child_proxy: no_assign {
-    public:
-        task& __TBB_EXPORTED_METHOD allocate( size_t size ) const;
-        void __TBB_EXPORTED_METHOD free( task& ) const;
-    };
-
-    //! Memory prefix to a task object.
-    /** This class is internal to the library.
-        Do not reference it directly, except within the library itself.
-        Fields are ordered in way that preserves backwards compatibility and yields
-        good packing on typical 32-bit and 64-bit platforms.
-
-        In case task prefix size exceeds 32 or 64 bytes on IA32 and Intel64
-        architectures correspondingly, consider dynamic setting of task_alignment
-        and task_prefix_reservation_size based on the maximal operand size supported
-        by the current CPU.
-
-        @ingroup task_scheduling */
-    class task_prefix {
-    private:
-        friend class tbb::task;
-        friend class tbb::interface5::internal::task_base;
-        friend class tbb::task_list;
-        friend class internal::scheduler;
-        friend class internal::allocate_root_proxy;
-        friend class internal::allocate_child_proxy;
-        friend class internal::allocate_continuation_proxy;
-        friend class internal::allocate_additional_child_of_proxy;
-
-#if __TBB_TASK_GROUP_CONTEXT
-        //! Shared context that is used to communicate asynchronous state changes
-        /** Currently it is used to broadcast cancellation requests generated both
-            by users and as the result of unhandled exceptions in the task::execute()
-            methods. */
-        task_group_context  *context;
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-        //! The scheduler that allocated the task, or NULL if the task is big.
-        /** Small tasks are pooled by the scheduler that allocated the task.
-            If a scheduler needs to free a small task allocated by another scheduler,
-            it returns the task to that other scheduler.  This policy avoids
-            memory space blowup issues for memory allocators that allocate from
-            thread-specific pools. */
-        scheduler* origin;
-
-#if __TBB_TASK_PRIORITY
-        union {
-#endif /* __TBB_TASK_PRIORITY */
-        //! Obsolete. The scheduler that owns the task.
-        /** Retained only for the sake of backward binary compatibility.
-            Still used by inline methods in the task.h header. **/
-        scheduler* owner;
-
-#if __TBB_TASK_PRIORITY
-        //! Pointer to the next offloaded lower priority task.
-        /** Used to maintain a list of offloaded tasks inside the scheduler. **/
-        task* next_offloaded;
-        };
-#endif /* __TBB_TASK_PRIORITY */
-
-        //! The task whose reference count includes me.
-        /** In the "blocking style" of programming, this field points to the parent task.
-            In the "continuation-passing style" of programming, this field points to the
-            continuation of the parent. */
-        tbb::task* parent;
-
-        //! Reference count used for synchronization.
-        /** In the "continuation-passing style" of programming, this field is
-            the difference of the number of allocated children minus the
-            number of children that have completed.
-            In the "blocking style" of programming, this field is one more than the difference. */
-        __TBB_atomic reference_count ref_count;
-
-        //! Obsolete. Used to be scheduling depth before TBB 2.2
-        /** Retained only for the sake of backward binary compatibility.
-            Not used by TBB anymore. **/
-        int depth;
-
-        //! A task::state_type, stored as a byte for compactness.
-        /** This state is exposed to users via method task::state(). */
-        unsigned char state;
-
-        //! Miscellaneous state that is not directly visible to users, stored as a byte for compactness.
-        /** 0x0 -> version 1.0 task
-            0x1 -> version >=2.1 task
-            0x20 -> task_proxy
-            0x40 -> task has live ref_count
-            0x80 -> a stolen task */
-        unsigned char extra_state;
-
-        affinity_id affinity;
-
-        //! "next" field for list of task
-        tbb::task* next;
-
-        //! The task corresponding to this task_prefix.
-        tbb::task& task() {return *reinterpret_cast<tbb::task*>(this+1);}
-    };
-
-} // namespace internal
-//! @endcond
-
-#if __TBB_TASK_GROUP_CONTEXT
-
-#if __TBB_TASK_PRIORITY
-namespace internal {
-    static const int priority_stride_v4 = INT_MAX / 4;
-}
-
-enum priority_t {
-    priority_normal = internal::priority_stride_v4 * 2,
-    priority_low = priority_normal - internal::priority_stride_v4,
-    priority_high = priority_normal + internal::priority_stride_v4
-};
-
-#endif /* __TBB_TASK_PRIORITY */
-
-#if TBB_USE_CAPTURED_EXCEPTION
-    class tbb_exception;
-#else
-    namespace internal {
-        class tbb_exception_ptr;
-    }
-#endif /* !TBB_USE_CAPTURED_EXCEPTION */
-
-class task_scheduler_init;
-
-//! Used to form groups of tasks
-/** @ingroup task_scheduling
-    The context services explicit cancellation requests from user code, and unhandled
-    exceptions intercepted during tasks execution. Intercepting an exception results
-    in generating internal cancellation requests (which is processed in exactly the
-    same way as external ones).
-
-    The context is associated with one or more root tasks and defines the cancellation
-    group that includes all the descendants of the corresponding root task(s). Association
-    is established when a context object is passed as an argument to the task::allocate_root()
-    method. See task_group_context::task_group_context for more details.
-
-    The context can be bound to another one, and other contexts can be bound to it,
-    forming a tree-like structure: parent -> this -> children. Arrows here designate
-    cancellation propagation direction. If a task in a cancellation group is canceled
-    all the other tasks in this group and groups bound to it (as children) get canceled too.
-
-    IMPLEMENTATION NOTE:
-    When adding new members to task_group_context or changing types of existing ones,
-    update the size of both padding buffers (_leading_padding and _trailing_padding)
-    appropriately. See also VERSIONING NOTE at the constructor definition below. **/
-class task_group_context : internal::no_copy {
-private:
-    friend class internal::generic_scheduler;
-    friend class task_scheduler_init;
-
-#if TBB_USE_CAPTURED_EXCEPTION
-    typedef tbb_exception exception_container_type;
-#else
-    typedef internal::tbb_exception_ptr exception_container_type;
-#endif
-
-    enum version_traits_word_layout {
-        traits_offset = 16,
-        version_mask = 0xFFFF,
-        traits_mask = 0xFFFFul << traits_offset
-    };
-
-public:
-    enum kind_type {
-        isolated,
-        bound
-    };
-
-    enum traits_type {
-        exact_exception = 0x0001ul << traits_offset,
-        concurrent_wait = 0x0004ul << traits_offset,
-#if TBB_USE_CAPTURED_EXCEPTION
-        default_traits = 0
-#else
-        default_traits = exact_exception
-#endif /* !TBB_USE_CAPTURED_EXCEPTION */
-    };
-
-private:
-    enum state {
-        may_have_children = 1
-    };
-
-    union {
-        //! Flavor of this context: bound or isolated.
-        kind_type my_kind;
-        uintptr_t _my_kind_aligner;
-    };
-
-    //! Pointer to the context of the parent cancellation group. NULL for isolated contexts.
-    task_group_context *my_parent;
-
-    //! Used to form the thread specific list of contexts without additional memory allocation.
-    /** A context is included into the list of the current thread when its binding to
-        its parent happens. Any context can be present in the list of one thread only. **/
-    internal::context_list_node_t my_node;
-
-    //! Used to set and maintain stack stitching point for Intel Performance Tools.
-    __itt_caller itt_caller;
-
-    //! Leading padding protecting accesses to frequently used members from false sharing.
-    /** Read accesses to the field my_cancellation_requested are on the hot path inside
-        the scheduler. This padding ensures that this field never shares the same cache
-        line with a local variable that is frequently written to. **/
-    char _leading_padding[internal::NFS_MaxLineSize
-                          - 2 * sizeof(uintptr_t)- sizeof(void*) - sizeof(internal::context_list_node_t)
-                          - sizeof(__itt_caller)];
-
-    //! Specifies whether cancellation was request for this task group.
-    uintptr_t my_cancellation_requested;
-
-    //! Version for run-time checks and behavioral traits of the context.
-    /** Version occupies low 16 bits, and traits (zero or more ORed enumerators
-        from the traits_type enumerations) take the next 16 bits.
-        Original (zeroth) version of the context did not support any traits. **/
-    uintptr_t  my_version_and_traits;
-
-    //! Pointer to the container storing exception being propagated across this task group.
-    exception_container_type *my_exception;
-
-    //! Scheduler instance that registered this context in its thread specific list.
-    internal::generic_scheduler *my_owner;
-
-    //! Internal state (combination of state flags).
-    uintptr_t my_state;
-
-#if __TBB_TASK_PRIORITY
-    //! Priority level of the task group (in normalized representation)
-    intptr_t my_priority;
-#endif /* __TBB_TASK_PRIORITY */
-
-    //! Trailing padding protecting accesses to frequently used members from false sharing
-    /** \sa _leading_padding **/
-    char _trailing_padding[internal::NFS_MaxLineSize - 2 * sizeof(uintptr_t) - 2 * sizeof(void*)
-#if __TBB_TASK_PRIORITY
-                            - sizeof(intptr_t)
-#endif /* __TBB_TASK_PRIORITY */
-                          ];
-
-public:
-    //! Default & binding constructor.
-    /** By default a bound context is created. That is this context will be bound
-        (as child) to the context of the task calling task::allocate_root(this_context)
-        method. Cancellation requests passed to the parent context are propagated
-        to all the contexts bound to it. Similarly priority change is propagated
-        from the parent context to its children.
-
-        If task_group_context::isolated is used as the argument, then the tasks associated
-        with this context will never be affected by events in any other context.
-
-        Creating isolated contexts involve much less overhead, but they have limited
-        utility. Normally when an exception occurs in an algorithm that has nested
-        ones running, it is desirably to have all the nested algorithms canceled
-        as well. Such a behavior requires nested algorithms to use bound contexts.
-
-        There is one good place where using isolated algorithms is beneficial. It is
-        a master thread. That is if a particular algorithm is invoked directly from
-        the master thread (not from a TBB task), supplying it with explicitly
-        created isolated context will result in a faster algorithm startup.
-
-        VERSIONING NOTE:
-        Implementation(s) of task_group_context constructor(s) cannot be made
-        entirely out-of-line because the run-time version must be set by the user
-        code. This will become critically important for binary compatibility, if
-        we ever have to change the size of the context object.
-
-        Boosting the runtime version will also be necessary if new data fields are
-        introduced in the currently unused padding areas and these fields are updated
-        by inline methods. **/
-    task_group_context ( kind_type relation_with_parent = bound,
-                         uintptr_t traits = default_traits )
-        : my_kind(relation_with_parent)
-        , my_version_and_traits(1 | traits)
-    {
-        init();
-    }
-
-    __TBB_EXPORTED_METHOD ~task_group_context ();
-
-    //! Forcefully reinitializes the context after the task tree it was associated with is completed.
-    /** Because the method assumes that all the tasks that used to be associated with
-        this context have already finished, calling it while the context is still
-        in use somewhere in the task hierarchy leads to undefined behavior.
-
-        IMPORTANT: This method is not thread safe!
-
-        The method does not change the context's parent if it is set. **/
-    void __TBB_EXPORTED_METHOD reset ();
-
-    //! Initiates cancellation of all tasks in this cancellation group and its subordinate groups.
-    /** \return false if cancellation has already been requested, true otherwise.
-
-        Note that canceling never fails. When false is returned, it just means that
-        another thread (or this one) has already sent cancellation request to this
-        context or to one of its ancestors (if this context is bound). It is guaranteed
-        that when this method is concurrently called on the same not yet cancelled
-        context, true will be returned by one and only one invocation. **/
-    bool __TBB_EXPORTED_METHOD cancel_group_execution ();
-
-    //! Returns true if the context received cancellation request.
-    bool __TBB_EXPORTED_METHOD is_group_execution_cancelled () const;
-
-    //! Records the pending exception, and cancels the task group.
-    /** May be called only from inside a catch-block. If the context is already
-        canceled, does nothing.
-        The method brings the task group associated with this context exactly into
-        the state it would be in, if one of its tasks threw the currently pending
-        exception during its execution. In other words, it emulates the actions
-        of the scheduler's dispatch loop exception handler. **/
-    void __TBB_EXPORTED_METHOD register_pending_exception ();
-
-#if __TBB_TASK_PRIORITY
-    //! Changes priority of the task grop
-    void set_priority ( priority_t );
-
-    //! Retrieves current priority of the current task group
-    priority_t priority () const;
-#endif /* __TBB_TASK_PRIORITY */
-
-protected:
-    //! Out-of-line part of the constructor.
-    /** Singled out to ensure backward binary compatibility of the future versions. **/
-    void __TBB_EXPORTED_METHOD init ();
-
-private:
-    friend class task;
-    friend class internal::allocate_root_with_context_proxy;
-
-    static const kind_type binding_required = bound;
-    static const kind_type binding_completed = kind_type(bound+1);
-    static const kind_type detached = kind_type(binding_completed+1);
-    static const kind_type dying = kind_type(detached+1);
-
-    //! Propagates state change (if any) from an ancestor
-    /** Checks if one of this object's ancestors is in a new state, and propagates
-        the new state to all its descendants in this object's heritage line. **/
-    template <typename T>
-    void propagate_state_from_ancestors ( T task_group_context::*mptr_state, T new_state );
-
-    //! Makes sure that the context is registered with a scheduler instance.
-    inline void finish_initialization ( internal::generic_scheduler *local_sched );
-
-    //! Registers this context with the local scheduler and binds it to its parent context
-    void bind_to ( internal::generic_scheduler *local_sched );
-
-    //! Registers this context with the local scheduler
-    void register_with ( internal::generic_scheduler *local_sched );
-
-}; // class task_group_context
-
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-//! Base class for user-defined tasks.
-/** @ingroup task_scheduling */
-class task: __TBB_TASK_BASE_ACCESS interface5::internal::task_base {
-
-    //! Set reference count
-    void __TBB_EXPORTED_METHOD internal_set_ref_count( int count );
-
-    //! Decrement reference count and return its new value.
-    internal::reference_count __TBB_EXPORTED_METHOD internal_decrement_ref_count();
-
-protected:
-    //! Default constructor.
-    task() {prefix().extra_state=1;}
-
-public:
-    //! Destructor.
-    virtual ~task() {}
-
-    //! Should be overridden by derived classes.
-    virtual task* execute() = 0;
-
-    //! Enumeration of task states that the scheduler considers.
-    enum state_type {
-        //! task is running, and will be destroyed after method execute() completes.
-        executing,
-        //! task to be rescheduled.
-        reexecute,
-        //! task is in ready pool, or is going to be put there, or was just taken off.
-        ready,
-        //! task object is freshly allocated or recycled.
-        allocated,
-        //! task object is on free list, or is going to be put there, or was just taken off.
-        freed,
-        //! task to be recycled as continuation
-        recycle
-    };
-
-    //------------------------------------------------------------------------
-    // Allocating tasks
-    //------------------------------------------------------------------------
-
-    //! Returns proxy for overloaded new that allocates a root task.
-    static internal::allocate_root_proxy allocate_root() {
-        return internal::allocate_root_proxy();
-    }
-
-#if __TBB_TASK_GROUP_CONTEXT
-    //! Returns proxy for overloaded new that allocates a root task associated with user supplied context.
-    static internal::allocate_root_with_context_proxy allocate_root( task_group_context& ctx ) {
-        return internal::allocate_root_with_context_proxy(ctx);
-    }
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-    //! Returns proxy for overloaded new that allocates a continuation task of *this.
-    /** The continuation's parent becomes the parent of *this. */
-    internal::allocate_continuation_proxy& allocate_continuation() {
-        return *reinterpret_cast<internal::allocate_continuation_proxy*>(this);
-    }
-
-    //! Returns proxy for overloaded new that allocates a child task of *this.
-    internal::allocate_child_proxy& allocate_child() {
-        return *reinterpret_cast<internal::allocate_child_proxy*>(this);
-    }
-
-    //! Define recommended static form via import from base class.
-    using task_base::allocate_additional_child_of;
-
-#if __TBB_DEPRECATED_TASK_INTERFACE
-    //! Destroy a task.
-    /** Usually, calling this method is unnecessary, because a task is
-        implicitly deleted after its execute() method runs.  However,
-        sometimes a task needs to be explicitly deallocated, such as
-        when a root task is used as the parent in spawn_and_wait_for_all. */
-    void __TBB_EXPORTED_METHOD destroy( task& t );
-#else /* !__TBB_DEPRECATED_TASK_INTERFACE */
-    //! Define recommended static form via import from base class.
-    using task_base::destroy;
-#endif /* !__TBB_DEPRECATED_TASK_INTERFACE */
-
-    //------------------------------------------------------------------------
-    // Recycling of tasks
-    //------------------------------------------------------------------------
-
-    //! Change this to be a continuation of its former self.
-    /** The caller must guarantee that the task's refcount does not become zero until
-        after the method execute() returns.  Typically, this is done by having
-        method execute() return a pointer to a child of the task.  If the guarantee
-        cannot be made, use method recycle_as_safe_continuation instead.
-
-        Because of the hazard, this method may be deprecated in the future. */
-    void recycle_as_continuation() {
-        __TBB_ASSERT( prefix().state==executing, "execute not running?" );
-        prefix().state = allocated;
-    }
-
-    //! Recommended to use, safe variant of recycle_as_continuation
-    /** For safety, it requires additional increment of ref_count.
-        With no descendants and ref_count of 1, it has the semantics of recycle_to_reexecute. */
-    void recycle_as_safe_continuation() {
-        __TBB_ASSERT( prefix().state==executing, "execute not running?" );
-        prefix().state = recycle;
-    }
-
-    //! Change this to be a child of new_parent.
-    void recycle_as_child_of( task& new_parent ) {
-        internal::task_prefix& p = prefix();
-        __TBB_ASSERT( prefix().state==executing||prefix().state==allocated, "execute not running, or already recycled" );
-        __TBB_ASSERT( prefix().ref_count==0, "no child tasks allowed when recycled as a child" );
-        __TBB_ASSERT( p.parent==NULL, "parent must be null" );
-        __TBB_ASSERT( new_parent.prefix().state<=recycle, "corrupt parent's state" );
-        __TBB_ASSERT( new_parent.prefix().state!=freed, "parent already freed" );
-        p.state = allocated;
-        p.parent = &new_parent;
-#if __TBB_TASK_GROUP_CONTEXT
-        p.context = new_parent.prefix().context;
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-    }
-
-    //! Schedule this for reexecution after current execute() returns.
-    /** Made obsolete by recycle_as_safe_continuation; may become deprecated. */
-    void recycle_to_reexecute() {
-        __TBB_ASSERT( prefix().state==executing, "execute not running, or already recycled" );
-        __TBB_ASSERT( prefix().ref_count==0, "no child tasks allowed when recycled for reexecution" );
-        prefix().state = reexecute;
-    }
-
-    // All depth-related methods are obsolete, and are retained for the sake
-    // of backward source compatibility only
-    intptr_t depth() const {return 0;}
-    void set_depth( intptr_t ) {}
-    void add_to_depth( int ) {}
-
-
-    //------------------------------------------------------------------------
-    // Spawning and blocking
-    //------------------------------------------------------------------------
-
-    //! Set reference count
-    void set_ref_count( int count ) {
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-        internal_set_ref_count(count);
-#else
-        prefix().ref_count = count;
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT */
-    }
-
-    //! Atomically increment reference count and returns its old value.
-    /** Has acquire semantics */
-    void increment_ref_count() {
-        __TBB_FetchAndIncrementWacquire( &prefix().ref_count );
-    }
-
-    //! Atomically decrement reference count and returns its new value.
-    /** Has release semantics. */
-    int decrement_ref_count() {
-#if TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT
-        return int(internal_decrement_ref_count());
-#else
-        return int(__TBB_FetchAndDecrementWrelease( &prefix().ref_count ))-1;
-#endif /* TBB_USE_THREADING_TOOLS||TBB_USE_ASSERT */
-    }
-
-    //! Define recommended static forms via import from base class.
-    using task_base::spawn;
-
-    //! Similar to spawn followed by wait_for_all, but more efficient.
-    void spawn_and_wait_for_all( task& child ) {
-        prefix().owner->wait_for_all( *this, &child );
-    }
-
-    //! Similar to spawn followed by wait_for_all, but more efficient.
-    void __TBB_EXPORTED_METHOD spawn_and_wait_for_all( task_list& list );
-
-    //! Spawn task allocated by allocate_root, wait for it to complete, and deallocate it.
-    static void spawn_root_and_wait( task& root ) {
-        root.prefix().owner->spawn_root_and_wait( root, root.prefix().next );
-    }
-
-    //! Spawn root tasks on list and wait for all of them to finish.
-    /** If there are more tasks than worker threads, the tasks are spawned in
-        order of front to back. */
-    static void spawn_root_and_wait( task_list& root_list );
-
-    //! Wait for reference count to become one, and set reference count to zero.
-    /** Works on tasks while waiting. */
-    void wait_for_all() {
-        prefix().owner->wait_for_all( *this, NULL );
-    }
-
-    //! Enqueue task for starvation-resistant execution.
-#if __TBB_TASK_PRIORITY
-    /** The task will be enqueued on the normal priority level disregarding the
-        priority of its task group.
-
-        The rationale of such semantics is that priority of an enqueued task is
-        statically fixed at the moment of its enqueuing, while task group priority
-        is dynamic. Thus automatic priority inheritance would be generally a subject
-        to the race, which may result in unexpected behavior.
-
-        Use enqueue() overload with explicit priority value and task::group_priority()
-        method to implement such priority inheritance when it is really necessary. **/
-#endif /* __TBB_TASK_PRIORITY */
-    static void enqueue( task& t ) {
-        t.prefix().owner->enqueue( t, NULL );
-    }
-
-#if __TBB_TASK_PRIORITY
-    //! Enqueue task for starvation-resistant execution on the specified priority level.
-    static void enqueue( task& t, priority_t p ) {
-        __TBB_ASSERT( p == priority_low || p == priority_normal || p == priority_high, "Invalid priority level value" );
-        t.prefix().owner->enqueue( t, (void*)p );
-    }
-#endif /* __TBB_TASK_PRIORITY */
-
-    //! The innermost task being executed or destroyed by the current thread at the moment.
-    static task& __TBB_EXPORTED_FUNC self();
-
-    //! task on whose behalf this task is working, or NULL if this is a root.
-    task* parent() const {return prefix().parent;}
-
-    //! sets parent task pointer to specified value
-    void set_parent(task* p) {
-#if __TBB_TASK_GROUP_CONTEXT
-        __TBB_ASSERT(prefix().context == p->prefix().context, "The tasks must be in the same context");
-#endif
-        prefix().parent = p;
-    }
-
-#if __TBB_TASK_GROUP_CONTEXT
-    //! This method is deprecated and will be removed in the future.
-    /** Use method group() instead. **/
-    task_group_context* context() {return prefix().context;}
-
-    //! Pointer to the task group descriptor.
-    task_group_context* group () { return prefix().context; }
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-    //! True if task was stolen from the task pool of another thread.
-    bool is_stolen_task() const {
-        return (prefix().extra_state & 0x80)!=0;
-    }
-
-    //------------------------------------------------------------------------
-    // Debugging
-    //------------------------------------------------------------------------
-
-    //! Current execution state
-    state_type state() const {return state_type(prefix().state);}
-
-    //! The internal reference count.
-    int ref_count() const {
-#if TBB_USE_ASSERT
-        internal::reference_count ref_count_ = prefix().ref_count;
-        __TBB_ASSERT( ref_count_==int(ref_count_), "integer overflow error");
-#endif
-        return int(prefix().ref_count);
-    }
-
-    //! Obsolete, and only retained for the sake of backward compatibility. Always returns true.
-    bool __TBB_EXPORTED_METHOD is_owned_by_current_thread() const;
-
-    //------------------------------------------------------------------------
-    // Affinity
-    //------------------------------------------------------------------------
-
-    //! An id as used for specifying affinity.
-    /** Guaranteed to be integral type.  Value of 0 means no affinity. */
-    typedef internal::affinity_id affinity_id;
-
-    //! Set affinity for this task.
-    void set_affinity( affinity_id id ) {prefix().affinity = id;}
-
-    //! Current affinity of this task
-    affinity_id affinity() const {return prefix().affinity;}
-
-    //! Invoked by scheduler to notify task that it ran on unexpected thread.
-    /** Invoked before method execute() runs, if task is stolen, or task has
-        affinity but will be executed on another thread.
-
-        The default action does nothing. */
-    virtual void __TBB_EXPORTED_METHOD note_affinity( affinity_id id );
-
-#if __TBB_TASK_GROUP_CONTEXT
-    //! Moves this task from its current group into another one.
-    /** Argument ctx specifies the new group.
-
-        The primary purpose of this method is to associate unique task group context
-        with a task allocated for subsequent enqueuing. In contrast to spawned tasks
-        enqueued ones normally outlive the scope where they were created. This makes
-        traditional usage model where task group context are allocated locally on
-        the stack inapplicable. Dynamic allocation of context objects is performance
-        inefficient. Method change_group() allows to make task group context object
-        a member of the task class, and then associate it with its containing task
-        object in the latter's constructor. **/
-    void __TBB_EXPORTED_METHOD change_group ( task_group_context& ctx );
-
-    //! Initiates cancellation of all tasks in this cancellation group and its subordinate groups.
-    /** \return false if cancellation has already been requested, true otherwise. **/
-    bool cancel_group_execution () { return prefix().context->cancel_group_execution(); }
-
-    //! Returns true if the context has received cancellation request.
-    bool is_cancelled () const { return prefix().context->is_group_execution_cancelled(); }
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-#if __TBB_TASK_PRIORITY
-    //! Changes priority of the task group this task belongs to.
-    void set_group_priority ( priority_t p ) {  prefix().context->set_priority(p); }
-
-    //! Retrieves current priority of the task group this task belongs to.
-    priority_t group_priority () const { return prefix().context->priority(); }
-
-#endif /* __TBB_TASK_PRIORITY */
-
-private:
-    friend class interface5::internal::task_base;
-    friend class task_list;
-    friend class internal::scheduler;
-    friend class internal::allocate_root_proxy;
-#if __TBB_TASK_GROUP_CONTEXT
-    friend class internal::allocate_root_with_context_proxy;
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-    friend class internal::allocate_continuation_proxy;
-    friend class internal::allocate_child_proxy;
-    friend class internal::allocate_additional_child_of_proxy;
-
-    //! Get reference to corresponding task_prefix.
-    /** Version tag prevents loader on Linux from using the wrong symbol in debug builds. **/
-    internal::task_prefix& prefix( internal::version_tag* = NULL ) const {
-        return reinterpret_cast<internal::task_prefix*>(const_cast<task*>(this))[-1];
-    }
-}; // class task
-
-//! task that does nothing.  Useful for synchronization.
-/** @ingroup task_scheduling */
-class empty_task: public task {
-    /*override*/ task* execute() {
-        return NULL;
-    }
-};
-
-//! A list of children.
-/** Used for method task::spawn_children
-    @ingroup task_scheduling */
-class task_list: internal::no_copy {
-private:
-    task* first;
-    task** next_ptr;
-    friend class task;
-    friend class interface5::internal::task_base;
-public:
-    //! Construct empty list
-    task_list() : first(NULL), next_ptr(&first) {}
-
-    //! Destroys the list, but does not destroy the task objects.
-    ~task_list() {}
-
-    //! True if list if empty; false otherwise.
-    bool empty() const {return !first;}
-
-    //! Push task onto back of list.
-    void push_back( task& task ) {
-        task.prefix().next = NULL;
-        *next_ptr = &task;
-        next_ptr = &task.prefix().next;
-    }
-
-    //! Pop the front task from the list.
-    task& pop_front() {
-        __TBB_ASSERT( !empty(), "attempt to pop item from empty task_list" );
-        task* result = first;
-        first = result->prefix().next;
-        if( !first ) next_ptr = &first;
-        return *result;
-    }
-
-    //! Clear the list
-    void clear() {
-        first=NULL;
-        next_ptr=&first;
-    }
-};
-
-inline void interface5::internal::task_base::spawn( task& t ) {
-    t.prefix().owner->spawn( t, t.prefix().next );
-}
-
-inline void interface5::internal::task_base::spawn( task_list& list ) {
-    if( task* t = list.first ) {
-        t->prefix().owner->spawn( *t, *list.next_ptr );
-        list.clear();
-    }
-}
-
-inline void task::spawn_root_and_wait( task_list& root_list ) {
-    if( task* t = root_list.first ) {
-        t->prefix().owner->spawn_root_and_wait( *t, *root_list.next_ptr );
-        root_list.clear();
-    }
-}
-
-} // namespace tbb
-
-inline void *operator new( size_t bytes, const tbb::internal::allocate_root_proxy& ) {
-    return &tbb::internal::allocate_root_proxy::allocate(bytes);
-}
-
-inline void operator delete( void* task, const tbb::internal::allocate_root_proxy& ) {
-    tbb::internal::allocate_root_proxy::free( *static_cast<tbb::task*>(task) );
-}
-
-#if __TBB_TASK_GROUP_CONTEXT
-inline void *operator new( size_t bytes, const tbb::internal::allocate_root_with_context_proxy& p ) {
-    return &p.allocate(bytes);
-}
-
-inline void operator delete( void* task, const tbb::internal::allocate_root_with_context_proxy& p ) {
-    p.free( *static_cast<tbb::task*>(task) );
-}
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-inline void *operator new( size_t bytes, const tbb::internal::allocate_continuation_proxy& p ) {
-    return &p.allocate(bytes);
-}
-
-inline void operator delete( void* task, const tbb::internal::allocate_continuation_proxy& p ) {
-    p.free( *static_cast<tbb::task*>(task) );
-}
-
-inline void *operator new( size_t bytes, const tbb::internal::allocate_child_proxy& p ) {
-    return &p.allocate(bytes);
-}
-
-inline void operator delete( void* task, const tbb::internal::allocate_child_proxy& p ) {
-    p.free( *static_cast<tbb::task*>(task) );
-}
-
-inline void *operator new( size_t bytes, const tbb::internal::allocate_additional_child_of_proxy& p ) {
-    return &p.allocate(bytes);
-}
-
-inline void operator delete( void* task, const tbb::internal::allocate_additional_child_of_proxy& p ) {
-    p.free( *static_cast<tbb::task*>(task) );
-}
-
-#endif /* __TBB_task_H */
diff --git a/dependencies64/tbb/include/tbb/task_group.h b/dependencies64/tbb/include/tbb/task_group.h
deleted file mode 100644 (file)
index 2e42544..0000000
+++ /dev/null
@@ -1,252 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_task_group_H
-#define __TBB_task_group_H
-
-#include "task.h"
-#include "tbb_exception.h"
-
-#if __TBB_TASK_GROUP_CONTEXT
-
-namespace tbb {
-
-namespace internal {
-    template<typename F> class task_handle_task;
-}
-
-template<typename F>
-class task_handle : internal::no_assign {
-    template<typename _F> friend class internal::task_handle_task;
-
-    static const intptr_t scheduled = 0x1;
-
-    F my_func;
-    intptr_t my_state;
-
-    void mark_scheduled () {
-        // The check here is intentionally lax to avoid the impact of interlocked operation
-        if ( my_state & scheduled )
-            internal::throw_exception( internal::eid_invalid_multiple_scheduling );
-        my_state |= scheduled;
-    }
-public:
-    task_handle( const F& f ) : my_func(f), my_state(0) {}
-
-    void operator() () const { my_func(); }
-};
-
-enum task_group_status {
-    not_complete,
-    complete,
-    canceled
-};
-
-namespace internal {
-
-// Suppress gratuitous warnings from icc 11.0 when lambda expressions are used in instances of function_task.
-//#pragma warning(disable: 588)
-
-template<typename F>
-class function_task : public task {
-    F my_func;
-    /*override*/ task* execute() {
-        my_func();
-        return NULL;
-    }
-public:
-    function_task( const F& f ) : my_func(f) {}
-};
-
-template<typename F>
-class task_handle_task : public task {
-    task_handle<F>& my_handle;
-    /*override*/ task* execute() {
-        my_handle();
-        return NULL;
-    }
-public:
-    task_handle_task( task_handle<F>& h ) : my_handle(h) { h.mark_scheduled(); }
-};
-
-class task_group_base : internal::no_copy {
-protected:
-    empty_task* my_root;
-    task_group_context my_context;
-
-    task& owner () { return *my_root; }
-
-    template<typename F>
-    task_group_status internal_run_and_wait( F& f ) {
-        __TBB_TRY {
-            if ( !my_context.is_group_execution_cancelled() )
-                f();
-        } __TBB_CATCH( ... ) {
-            my_context.register_pending_exception();
-        }
-        return wait();
-    }
-
-    template<typename F, typename Task>
-    void internal_run( F& f ) {
-        owner().spawn( *new( owner().allocate_additional_child_of(*my_root) ) Task(f) );
-    }
-
-public:
-    task_group_base( uintptr_t traits = 0 )
-        : my_context(task_group_context::bound, task_group_context::default_traits | traits)
-    {
-        my_root = new( task::allocate_root(my_context) ) empty_task;
-        my_root->set_ref_count(1);
-    }
-
-    ~task_group_base() {
-        if( my_root->ref_count() > 1 ) {
-            bool stack_unwinding_in_progress = std::uncaught_exception();
-            // Always attempt to do proper cleanup to avoid inevitable memory corruption 
-            // in case of missing wait (for the sake of better testability & debuggability)
-            if ( !is_canceling() )
-                cancel();
-            __TBB_TRY {
-                my_root->wait_for_all();
-            } __TBB_CATCH (...) {
-                task::destroy(*my_root);
-                __TBB_RETHROW();
-            }
-            task::destroy(*my_root);
-            if ( !stack_unwinding_in_progress )
-                internal::throw_exception( internal::eid_missing_wait );
-        }
-        else {
-            task::destroy(*my_root);
-        }
-    }
-
-    template<typename F>
-    void run( task_handle<F>& h ) {
-        internal_run< task_handle<F>, internal::task_handle_task<F> >( h );
-    }
-
-    task_group_status wait() {
-        __TBB_TRY {
-            my_root->wait_for_all();
-        } __TBB_CATCH( ... ) {
-            my_context.reset();
-            __TBB_RETHROW();
-        }
-        if ( my_context.is_group_execution_cancelled() ) {
-            my_context.reset();
-            return canceled;
-        }
-        return complete;
-    }
-
-    bool is_canceling() {
-        return my_context.is_group_execution_cancelled();
-    }
-
-    void cancel() {
-        my_context.cancel_group_execution();
-    }
-}; // class task_group_base
-
-} // namespace internal
-
-class task_group : public internal::task_group_base {
-public:
-    task_group () : task_group_base( task_group_context::concurrent_wait ) {}
-
-#if TBB_DEPRECATED
-    ~task_group() __TBB_TRY {
-        __TBB_ASSERT( my_root->ref_count() != 0, NULL );
-        if( my_root->ref_count() > 1 )
-            my_root->wait_for_all();
-    }
-#if TBB_USE_EXCEPTIONS
-    catch (...) {
-        // Have to destroy my_root here as the base class destructor won't be called
-        task::destroy(*my_root);
-        throw;
-    }
-#endif /* TBB_USE_EXCEPTIONS */
-#endif /* TBB_DEPRECATED */
-
-#if __SUNPRO_CC
-    template<typename F>
-    void run( task_handle<F>& h ) {
-        internal_run< task_handle<F>, internal::task_handle_task<F> >( h );
-    }
-#else
-    using task_group_base::run;
-#endif
-
-    template<typename F>
-    void run( const F& f ) {
-        internal_run< const F, internal::function_task<F> >( f );
-    }
-
-    template<typename F>
-    task_group_status run_and_wait( const F& f ) {
-        return internal_run_and_wait<const F>( f );
-    }
-
-    template<typename F>
-    task_group_status run_and_wait( task_handle<F>& h ) {
-      return internal_run_and_wait< task_handle<F> >( h );
-    }
-}; // class task_group
-
-class structured_task_group : public internal::task_group_base {
-public:
-    template<typename F>
-    task_group_status run_and_wait ( task_handle<F>& h ) {
-        return internal_run_and_wait< task_handle<F> >( h );
-    }
-
-    task_group_status wait() {
-        task_group_status res = task_group_base::wait();
-        my_root->set_ref_count(1);
-        return res;
-    }
-}; // class structured_task_group
-
-inline 
-bool is_current_task_group_canceling() {
-    return task::self().is_cancelled();
-}
-
-template<class F>
-task_handle<F> make_task( const F& f ) {
-    return task_handle<F>( f );
-}
-
-} // namespace tbb
-
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-#endif /* __TBB_task_group_H */
diff --git a/dependencies64/tbb/include/tbb/task_scheduler_init.h b/dependencies64/tbb/include/tbb/task_scheduler_init.h
deleted file mode 100644 (file)
index 576d370..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_task_scheduler_init_H
-#define __TBB_task_scheduler_init_H
-
-#include "tbb_stddef.h"
-#include "limits.h"
-
-namespace tbb {
-
-typedef std::size_t stack_size_type;
-
-//! @cond INTERNAL
-namespace internal {
-    //! Internal to library. Should not be used by clients.
-    /** @ingroup task_scheduling */
-    class scheduler;
-} // namespace internal
-//! @endcond
-
-//! Class delimiting the scope of task scheduler activity.
-/** A thread can construct a task_scheduler_init object and keep it alive
-    while it uses TBB's tasking subsystem (including parallel algorithms).
-
-    This class allows to customize properties of the TBB task pool to some extent.
-    For example it can limit concurrency level of parallel work initiated by the
-    given thread. It also can be used to specify stack size of the TBB worker threads,
-    though this setting is not effective if the thread pool has already been created.
-
-    If a parallel construct is used without task_scheduler_init object previously
-    created, the scheduler will be initialized automatically with default settings,
-    and will persist until this thread exits. Default concurrency level is defined
-    as described in task_scheduler_init::initialize().
-    @ingroup task_scheduling */
-class task_scheduler_init: internal::no_copy {
-    enum ExceptionPropagationMode {
-        propagation_mode_exact = 1u,
-        propagation_mode_captured = 2u,
-        propagation_mode_mask = propagation_mode_exact | propagation_mode_captured
-    };
-
-    /** NULL if not currently initialized. */
-    internal::scheduler* my_scheduler;
-public:
-
-    //! Typedef for number of threads that is automatic.
-    static const int automatic = -1;
-
-    //! Argument to initialize() or constructor that causes initialization to be deferred.
-    static const int deferred = -2;
-
-    //! Ensure that scheduler exists for this thread
-    /** A value of -1 lets TBB decide on the number of threads, which is usually
-        maximal hardware concurrency for this process, that is the number of logical
-        CPUs on the machine (possibly limited by the processor affinity mask of this
-        process (Windows) or of this thread (Linux, FreeBSD). It is preferable option
-        for production code because it helps to avoid nasty surprises when several
-        TBB based components run side-by-side or in a nested fashion inside the same
-        process.
-
-        The number_of_threads is ignored if any other task_scheduler_inits 
-        currently exist.  A thread may construct multiple task_scheduler_inits.  
-        Doing so does no harm because the underlying scheduler is reference counted. */
-    void __TBB_EXPORTED_METHOD initialize( int number_of_threads=automatic );
-
-    //! The overloaded method with stack size parameter
-    /** Overloading is necessary to preserve ABI compatibility */
-    void __TBB_EXPORTED_METHOD initialize( int number_of_threads, stack_size_type thread_stack_size );
-
-    //! Inverse of method initialize.
-    void __TBB_EXPORTED_METHOD terminate();
-
-    //! Shorthand for default constructor followed by call to initialize(number_of_threads).
-    task_scheduler_init( int number_of_threads=automatic, stack_size_type thread_stack_size=0 ) : my_scheduler(NULL)  {
-        // Two lowest order bits of the stack size argument may be taken to communicate
-        // default exception propagation mode of the client to be used when the
-        // client manually creates tasks in the master thread and does not use
-        // explicit task group context object. This is necessary because newer 
-        // TBB binaries with exact propagation enabled by default may be used 
-        // by older clients that expect tbb::captured_exception wrapper.
-        // All zeros mean old client - no preference. 
-        __TBB_ASSERT( !(thread_stack_size & propagation_mode_mask), "Requested stack size is not aligned" );
-#if TBB_USE_EXCEPTIONS
-        thread_stack_size |= TBB_USE_CAPTURED_EXCEPTION ? propagation_mode_captured : propagation_mode_exact;
-#endif /* TBB_USE_EXCEPTIONS */
-        initialize( number_of_threads, thread_stack_size );
-    }
-
-    //! Destroy scheduler for this thread if thread has no other live task_scheduler_inits.
-    ~task_scheduler_init() {
-        if( my_scheduler ) 
-            terminate();
-        internal::poison_pointer( my_scheduler );
-    }
-    //! Returns the number of threads TBB scheduler would create if initialized by default.
-    /** Result returned by this method does not depend on whether the scheduler 
-        has already been initialized.
-        
-        Because tbb 2.0 does not support blocking tasks yet, you may use this method
-        to boost the number of threads in the tbb's internal pool, if your tasks are 
-        doing I/O operations. The optimal number of additional threads depends on how
-        much time your tasks spend in the blocked state.
-        
-        Before TBB 3.0 U4 this method returned the number of logical CPU in the
-        system. Currently on Windows, Linux and FreeBSD it returns the number of
-        logical CPUs available to the current process in accordance with its affinity
-        mask.
-        
-        NOTE: The return value of this method never changes after its first invocation. 
-        This means that changes in the process affinity mask that took place after
-        this method was first invoked will not affect the number of worker threads
-        in the TBB worker threads pool. */
-    static int __TBB_EXPORTED_FUNC default_num_threads ();
-
-    //! Returns true if scheduler is active (initialized); false otherwise
-    bool is_active() const { return my_scheduler != NULL; }
-};
-
-} // namespace tbb
-
-#endif /* __TBB_task_scheduler_init_H */
diff --git a/dependencies64/tbb/include/tbb/task_scheduler_observer.h b/dependencies64/tbb/include/tbb/task_scheduler_observer.h
deleted file mode 100644 (file)
index 4c09863..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_task_scheduler_observer_H
-#define __TBB_task_scheduler_observer_H
-
-#include "atomic.h"
-
-#if __TBB_SCHEDULER_OBSERVER
-
-namespace tbb {
-
-namespace internal {
-
-class observer_proxy;
-
-class task_scheduler_observer_v3 {
-    friend class observer_proxy;
-    observer_proxy* my_proxy;
-    atomic<intptr_t> my_busy_count;
-public:
-    //! Enable or disable observation
-    void __TBB_EXPORTED_METHOD observe( bool state=true );
-
-    //! True if observation is enables; false otherwise.
-    bool is_observing() const {return my_proxy!=NULL;}
-
-    //! Construct observer with observation disabled.
-    task_scheduler_observer_v3() : my_proxy(NULL) {my_busy_count=0;}
-
-    //! Called by thread before first steal since observation became enabled
-    virtual void on_scheduler_entry( bool /*is_worker*/ ) {} 
-
-    //! Called by thread when it no longer takes part in task stealing.
-    virtual void on_scheduler_exit( bool /*is_worker*/ ) {}
-
-    //! Destructor
-    virtual ~task_scheduler_observer_v3() {observe(false);}
-};
-
-} // namespace internal
-
-typedef internal::task_scheduler_observer_v3 task_scheduler_observer;
-
-} // namespace tbb
-
-#endif /* __TBB_SCHEDULER_OBSERVER */
-
-#endif /* __TBB_task_scheduler_observer_H */
diff --git a/dependencies64/tbb/include/tbb/tbb.h b/dependencies64/tbb/include/tbb/tbb.h
deleted file mode 100644 (file)
index 259d1df..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_tbb_H
-#define __TBB_tbb_H
-
-/** 
-    This header bulk-includes declarations or definitions of all the functionality 
-    provided by TBB (save for malloc dependent headers). 
-
-    If you use only a few TBB constructs, consider including specific headers only.
-    Any header listed below can be included independently of others.
-**/
-
-#include "aligned_space.h"
-#include "atomic.h"
-#include "blocked_range.h"
-#include "blocked_range2d.h"
-#include "blocked_range3d.h"
-#include "cache_aligned_allocator.h"
-#include "combinable.h"
-#include "concurrent_unordered_map.h"
-#include "concurrent_hash_map.h"
-#include "concurrent_queue.h"
-#include "concurrent_vector.h"
-#include "critical_section.h"
-#include "enumerable_thread_specific.h"
-#include "mutex.h"
-#include "null_mutex.h"
-#include "null_rw_mutex.h"
-#include "parallel_do.h"
-#include "parallel_for.h"
-#include "parallel_for_each.h"
-#include "parallel_invoke.h"
-#include "parallel_reduce.h"
-#include "parallel_scan.h"
-#include "parallel_sort.h"
-#include "partitioner.h"
-#include "pipeline.h"
-#include "queuing_mutex.h"
-#include "queuing_rw_mutex.h"
-#include "reader_writer_lock.h"
-#if TBB_PREVIEW_CONCURRENT_PRIORITY_QUEUE
-#include "concurrent_priority_queue.h"
-#endif
-#include "recursive_mutex.h"
-#include "spin_mutex.h"
-#include "spin_rw_mutex.h"
-#include "task.h"
-#include "task_group.h"
-#include "task_scheduler_init.h"
-#include "task_scheduler_observer.h"
-#include "tbb_allocator.h"
-#include "tbb_exception.h"
-#include "tbb_thread.h"
-#include "tick_count.h"
-
-#endif /* __TBB_tbb_H */
diff --git a/dependencies64/tbb/include/tbb/tbb_allocator.h b/dependencies64/tbb/include/tbb/tbb_allocator.h
deleted file mode 100644 (file)
index bb4690e..0000000
+++ /dev/null
@@ -1,214 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_tbb_allocator_H
-#define __TBB_tbb_allocator_H
-
-#include "tbb_stddef.h"
-#include <new>
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <cstring>
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-namespace tbb {
-
-//! @cond INTERNAL
-namespace internal {
-
-    //! Deallocates memory using FreeHandler
-    /** The function uses scalable_free if scalable allocator is available and free if not*/
-    void __TBB_EXPORTED_FUNC deallocate_via_handler_v3( void *p );
-
-    //! Allocates memory using MallocHandler
-    /** The function uses scalable_malloc if scalable allocator is available and malloc if not*/
-    void* __TBB_EXPORTED_FUNC allocate_via_handler_v3( size_t n );
-
-    //! Returns true if standard malloc/free are used to work with memory.
-    bool __TBB_EXPORTED_FUNC is_malloc_used_v3();
-}
-//! @endcond
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    // Workaround for erroneous "unreferenced parameter" warning in method destroy.
-    #pragma warning (push)
-    #pragma warning (disable: 4100)
-#endif
-
-//! Meets "allocator" requirements of ISO C++ Standard, Section 20.1.5
-/** The class selects the best memory allocation mechanism available 
-    from scalable_malloc and standard malloc.
-    The members are ordered the same way they are in section 20.4.1
-    of the ISO C++ standard.
-    @ingroup memory_allocation */
-template<typename T>
-class tbb_allocator {
-public:
-    typedef typename internal::allocator_type<T>::value_type value_type;
-    typedef value_type* pointer;
-    typedef const value_type* const_pointer;
-    typedef value_type& reference;
-    typedef const value_type& const_reference;
-    typedef size_t size_type;
-    typedef ptrdiff_t difference_type;
-    template<typename U> struct rebind {
-        typedef tbb_allocator<U> other;
-    };
-
-    //! Specifies current allocator
-    enum malloc_type {
-        scalable, 
-        standard
-    };
-
-    tbb_allocator() throw() {}
-    tbb_allocator( const tbb_allocator& ) throw() {}
-    template<typename U> tbb_allocator(const tbb_allocator<U>&) throw() {}
-
-    pointer address(reference x) const {return &x;}
-    const_pointer address(const_reference x) const {return &x;}
-    
-    //! Allocate space for n objects.
-    pointer allocate( size_type n, const void* /*hint*/ = 0) {
-        return pointer(internal::allocate_via_handler_v3( n * sizeof(value_type) ));
-    }
-
-    //! Free previously allocated block of memory.
-    void deallocate( pointer p, size_type ) {
-        internal::deallocate_via_handler_v3(p);        
-    }
-
-    //! Largest value for which method allocate might succeed.
-    size_type max_size() const throw() {
-        size_type max = static_cast<size_type>(-1) / sizeof (value_type);
-        return (max > 0 ? max : 1);
-    }
-    
-    //! Copy-construct value at location pointed to by p.
-    void construct( pointer p, const value_type& value ) {::new((void*)(p)) value_type(value);}
-
-    //! Destroy value at location pointed to by p.
-    void destroy( pointer p ) {p->~value_type();}
-
-    //! Returns current allocator
-    static malloc_type allocator_type() {
-        return internal::is_malloc_used_v3() ? standard : scalable;
-    }
-};
-
-#if _MSC_VER && !defined(__INTEL_COMPILER)
-    #pragma warning (pop)
-#endif // warning 4100 is back
-
-//! Analogous to std::allocator<void>, as defined in ISO C++ Standard, Section 20.4.1
-/** @ingroup memory_allocation */
-template<> 
-class tbb_allocator<void> {
-public:
-    typedef void* pointer;
-    typedef const void* const_pointer;
-    typedef void value_type;
-    template<typename U> struct rebind {
-        typedef tbb_allocator<U> other;
-    };
-};
-
-template<typename T, typename U>
-inline bool operator==( const tbb_allocator<T>&, const tbb_allocator<U>& ) {return true;}
-
-template<typename T, typename U>
-inline bool operator!=( const tbb_allocator<T>&, const tbb_allocator<U>& ) {return false;}
-
-//! Meets "allocator" requirements of ISO C++ Standard, Section 20.1.5
-/** The class is an adapter over an actual allocator that fills the allocation
-    using memset function with template argument C as the value.
-    The members are ordered the same way they are in section 20.4.1
-    of the ISO C++ standard.
-    @ingroup memory_allocation */
-template <typename T, template<typename X> class Allocator = tbb_allocator>
-class zero_allocator : public Allocator<T>
-{
-public:
-    typedef Allocator<T> base_allocator_type;
-    typedef typename base_allocator_type::value_type value_type;
-    typedef typename base_allocator_type::pointer pointer;
-    typedef typename base_allocator_type::const_pointer const_pointer;
-    typedef typename base_allocator_type::reference reference;
-    typedef typename base_allocator_type::const_reference const_reference;
-    typedef typename base_allocator_type::size_type size_type;
-    typedef typename base_allocator_type::difference_type difference_type;
-    template<typename U> struct rebind {
-        typedef zero_allocator<U, Allocator> other;
-    };
-
-    zero_allocator() throw() { }
-    zero_allocator(const zero_allocator &a) throw() : base_allocator_type( a ) { }
-    template<typename U>
-    zero_allocator(const zero_allocator<U> &a) throw() : base_allocator_type( Allocator<U>( a ) ) { }
-
-    pointer allocate(const size_type n, const void *hint = 0 ) {
-        pointer ptr = base_allocator_type::allocate( n, hint );
-        std::memset( ptr, 0, n * sizeof(value_type) );
-        return ptr;
-    }
-};
-
-//! Analogous to std::allocator<void>, as defined in ISO C++ Standard, Section 20.4.1
-/** @ingroup memory_allocation */
-template<template<typename T> class Allocator> 
-class zero_allocator<void, Allocator> : public Allocator<void> {
-public:
-    typedef Allocator<void> base_allocator_type;
-    typedef typename base_allocator_type::value_type value_type;
-    typedef typename base_allocator_type::pointer pointer;
-    typedef typename base_allocator_type::const_pointer const_pointer;
-    template<typename U> struct rebind {
-        typedef zero_allocator<U, Allocator> other;
-    };
-};
-
-template<typename T1, template<typename X1> class B1, typename T2, template<typename X2> class B2>
-inline bool operator==( const zero_allocator<T1,B1> &a, const zero_allocator<T2,B2> &b) {
-    return static_cast< B1<T1> >(a) == static_cast< B2<T2> >(b);
-}
-template<typename T1, template<typename X1> class B1, typename T2, template<typename X2> class B2>
-inline bool operator!=( const zero_allocator<T1,B1> &a, const zero_allocator<T2,B2> &b) {
-    return static_cast< B1<T1> >(a) != static_cast< B2<T2> >(b);
-}
-
-} // namespace tbb 
-
-#endif /* __TBB_tbb_allocator_H */
diff --git a/dependencies64/tbb/include/tbb/tbb_config.h b/dependencies64/tbb/include/tbb/tbb_config.h
deleted file mode 100644 (file)
index 3b7c737..0000000
+++ /dev/null
@@ -1,263 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_tbb_config_H
-#define __TBB_tbb_config_H
-
-/** This header is supposed to contain macro definitions and C style comments only.
-    The macros defined here are intended to control such aspects of TBB build as 
-    - presence of compiler features
-    - compilation modes
-    - feature sets
-    - known compiler/platform issues
-**/
-
-#define __TBB_GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
-
-/** Presence of compiler features **/
-
-#if (__TBB_GCC_VERSION >= 40400) && !defined(__INTEL_COMPILER)
-    /** warning suppression pragmas available in GCC since 4.4 **/
-    #define __TBB_GCC_WARNING_SUPPRESSION_PRESENT 1
-#endif
-
-/* TODO: The following condition should be extended when new compilers/runtimes 
-         with std::exception_ptr support appear. */
-#define __TBB_EXCEPTION_PTR_PRESENT  ((_MSC_VER >= 1600 || (__GXX_EXPERIMENTAL_CXX0X__ && __GNUC__==4 && __GNUC_MINOR__>=4)) && !__INTEL_COMPILER)
-
-#if __GNUC__ || __SUNPRO_CC || __IBMCPP__
-    /* ICC defines __GNUC__ and so is covered */
-    #define __TBB_ATTRIBUTE_ALIGNED_PRESENT 1
-#elif _MSC_VER && (_MSC_VER >= 1300 || __INTEL_COMPILER)
-    #define __TBB_DECLSPEC_ALIGN_PRESENT 1
-#endif
-
-#if (__TBB_GCC_VERSION >= 40102) && !defined(__INTEL_COMPILER)
-    /** built-in atomics available in GCC since 4.1.2 **/
-    #define __TBB_GCC_BUILTIN_ATOMICS_PRESENT 1
-#endif
-
-/** User controlled TBB features & modes **/
-
-#ifndef TBB_USE_DEBUG
-#ifdef TBB_DO_ASSERT
-#define TBB_USE_DEBUG TBB_DO_ASSERT
-#else
-#ifdef _DEBUG
-#define TBB_USE_DEBUG _DEBUG
-#else
-#define TBB_USE_DEBUG 0
-#endif
-#endif /* TBB_DO_ASSERT */
-#endif /* TBB_USE_DEBUG */
-
-#ifndef TBB_USE_ASSERT
-#ifdef TBB_DO_ASSERT
-#define TBB_USE_ASSERT TBB_DO_ASSERT
-#else 
-#define TBB_USE_ASSERT TBB_USE_DEBUG
-#endif /* TBB_DO_ASSERT */
-#endif /* TBB_USE_ASSERT */
-
-#ifndef TBB_USE_THREADING_TOOLS
-#ifdef TBB_DO_THREADING_TOOLS
-#define TBB_USE_THREADING_TOOLS TBB_DO_THREADING_TOOLS
-#else 
-#define TBB_USE_THREADING_TOOLS TBB_USE_DEBUG
-#endif /* TBB_DO_THREADING_TOOLS */
-#endif /* TBB_USE_THREADING_TOOLS */
-
-#ifndef TBB_USE_PERFORMANCE_WARNINGS
-#ifdef TBB_PERFORMANCE_WARNINGS
-#define TBB_USE_PERFORMANCE_WARNINGS TBB_PERFORMANCE_WARNINGS
-#else 
-#define TBB_USE_PERFORMANCE_WARNINGS TBB_USE_DEBUG
-#endif /* TBB_PEFORMANCE_WARNINGS */
-#endif /* TBB_USE_PERFORMANCE_WARNINGS */
-
-
-#if !defined(__EXCEPTIONS) && !defined(_CPPUNWIND) && !defined(__SUNPRO_CC) || defined(_XBOX)
-    #if TBB_USE_EXCEPTIONS
-        #error Compilation settings do not support exception handling. Please do not set TBB_USE_EXCEPTIONS macro or set it to 0.
-    #elif !defined(TBB_USE_EXCEPTIONS)
-        #define TBB_USE_EXCEPTIONS 0
-    #endif
-#elif !defined(TBB_USE_EXCEPTIONS)
-    #define TBB_USE_EXCEPTIONS 1
-#endif
-
-#ifndef TBB_IMPLEMENT_CPP0X
-    /** By default, use C++0x classes if available **/
-    #if __GNUC__==4 && __GNUC_MINOR__>=4 && __GXX_EXPERIMENTAL_CXX0X__
-        #define TBB_IMPLEMENT_CPP0X 0
-    #else
-        #define TBB_IMPLEMENT_CPP0X 1
-    #endif
-#endif /* TBB_IMPLEMENT_CPP0X */
-
-#ifndef TBB_USE_CAPTURED_EXCEPTION
-    #if __TBB_EXCEPTION_PTR_PRESENT
-        #define TBB_USE_CAPTURED_EXCEPTION 0
-    #else
-        #define TBB_USE_CAPTURED_EXCEPTION 1
-    #endif
-#else /* defined TBB_USE_CAPTURED_EXCEPTION */
-    #if !TBB_USE_CAPTURED_EXCEPTION && !__TBB_EXCEPTION_PTR_PRESENT
-        #error Current runtime does not support std::exception_ptr. Set TBB_USE_CAPTURED_EXCEPTION and make sure that your code is ready to catch tbb::captured_exception.
-    #endif
-#endif /* defined TBB_USE_CAPTURED_EXCEPTION */
-
-/** Check whether the request to use GCC atomics can be satisfied **/
-#if (TBB_USE_GCC_BUILTINS && !__TBB_GCC_BUILTIN_ATOMICS_PRESENT)
-    #error "GCC atomic built-ins are not supported."
-#endif
-
-/** Internal TBB features & modes **/
-
-#ifndef __TBB_DYNAMIC_LOAD_ENABLED
-    #define __TBB_DYNAMIC_LOAD_ENABLED !__TBB_TASK_CPP_DIRECTLY_INCLUDED
-#elif !__TBB_DYNAMIC_LOAD_ENABLED
-    #if _WIN32||_WIN64
-        #define __TBB_NO_IMPLICIT_LINKAGE 1
-        #define __TBBMALLOC_NO_IMPLICIT_LINKAGE 1
-    #else
-        #define __TBB_WEAK_SYMBOLS 1
-    #endif
-#endif
-
-#ifndef __TBB_COUNT_TASK_NODES
-    #define __TBB_COUNT_TASK_NODES TBB_USE_ASSERT
-#endif
-
-#ifndef __TBB_TASK_GROUP_CONTEXT
-    #define __TBB_TASK_GROUP_CONTEXT 1
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-#if TBB_USE_EXCEPTIONS && !__TBB_TASK_GROUP_CONTEXT
-    #error TBB_USE_EXCEPTIONS requires __TBB_TASK_GROUP_CONTEXT to be enabled
-#endif
-
-#ifndef __TBB_SCHEDULER_OBSERVER
-    #define __TBB_SCHEDULER_OBSERVER 1
-#endif /* __TBB_SCHEDULER_OBSERVER */
-
-#ifndef __TBB_TASK_PRIORITY
-    #define __TBB_TASK_PRIORITY __TBB_TASK_GROUP_CONTEXT
-#endif /* __TBB_TASK_PRIORITY */
-
-#if __TBB_TASK_PRIORITY && !__TBB_TASK_GROUP_CONTEXT
-    #error __TBB_TASK_PRIORITY requires __TBB_TASK_GROUP_CONTEXT to be enabled
-#endif
-
-#if !defined(__TBB_SURVIVE_THREAD_SWITCH) && (_WIN32 || _WIN64 || __linux__)
-    #define __TBB_SURVIVE_THREAD_SWITCH 1
-#endif /* __TBB_SURVIVE_THREAD_SWITCH */
-
-#ifndef __TBB_DEFAULT_PARTITIONER
-#if TBB_DEPRECATED
-/** Default partitioner for parallel loop templates in TBB 1.0-2.1 */
-#define __TBB_DEFAULT_PARTITIONER tbb::simple_partitioner
-#else
-/** Default partitioner for parallel loop templates since TBB 2.2 */
-#define __TBB_DEFAULT_PARTITIONER tbb::auto_partitioner
-#endif /* TBB_DEPRECATED */
-#endif /* !defined(__TBB_DEFAULT_PARTITIONER */
-
-/** Macros of the form __TBB_XXX_BROKEN denote known issues that are caused by
-    the bugs in compilers, standard or OS specific libraries. They should be 
-    removed as soon as the corresponding bugs are fixed or the buggy OS/compiler
-    versions go out of the support list. 
-**/
-
-#if __GNUC__ && __TBB_x86_64 && __INTEL_COMPILER == 1200
-    #define __TBB_ICC_12_0_INL_ASM_FSTCW_BROKEN 1
-#endif
-
-#if _MSC_VER && __INTEL_COMPILER && (__INTEL_COMPILER<1110 || __INTEL_COMPILER==1110 && __INTEL_COMPILER_BUILD_DATE < 20091012)
-    /** Necessary to avoid ICL error (or warning in non-strict mode): 
-        "exception specification for implicitly declared virtual destructor is 
-        incompatible with that of overridden one". **/
-    #define __TBB_DEFAULT_DTOR_THROW_SPEC_BROKEN 1
-#endif
-
-#if defined(_MSC_VER) && _MSC_VER < 1500 && !defined(__INTEL_COMPILER)
-    /** VS2005 and earlier do not allow declaring template class as a friend 
-        of classes defined in other namespaces. **/
-    #define __TBB_TEMPLATE_FRIENDS_BROKEN 1
-#endif
-
-#if __GLIBC__==2 && __GLIBC_MINOR__==3 || __MINGW32__ || (__APPLE__ && __INTEL_COMPILER==1200 && !TBB_USE_DEBUG)
-    //! Macro controlling EH usages in TBB tests
-    /** Some older versions of glibc crash when exception handling happens concurrently. **/
-    #define __TBB_THROW_ACROSS_MODULE_BOUNDARY_BROKEN 1
-#endif
-
-#if (_WIN32||_WIN64) && __INTEL_COMPILER == 1110
-    /** That's a bug in Intel compiler 11.1.044/IA-32/Windows, that leads to a worker thread crash on the thread's startup. **/
-    #define __TBB_ICL_11_1_CODE_GEN_BROKEN 1
-#endif
-
-#if __GNUC__==3 && __GNUC_MINOR__==3 && !defined(__INTEL_COMPILER)
-    /** A bug in GCC 3.3 with access to nested classes declared in protected area */
-    #define __TBB_GCC_3_3_PROTECTED_BROKEN 1
-#endif
-
-#if __MINGW32__ && (__GNUC__<4 || __GNUC__==4 && __GNUC_MINOR__<2)
-    /** MinGW has a bug with stack alignment for routines invoked from MS RTLs.
-        Since GCC 4.2, the bug can be worked around via a special attribute. **/
-    #define __TBB_SSE_STACK_ALIGNMENT_BROKEN 1
-#endif
-
-#if __GNUC__==4 && __GNUC_MINOR__==3 && __GNUC_PATCHLEVEL__==0
-    // GCC of this version may rashly ignore control dependencies
-    #define __TBB_GCC_OPTIMIZER_ORDERING_BROKEN 1
-#endif
-
-#if __FreeBSD__
-    /** A bug in FreeBSD 8.0 results in kernel panic when there is contention 
-        on a mutex created with this attribute. **/
-    #define __TBB_PRIO_INHERIT_BROKEN 1
-
-    /** A bug in FreeBSD 8.0 results in test hanging when an exception occurs 
-        during (concurrent?) object construction by means of placement new operator. **/
-    #define __TBB_PLACEMENT_NEW_EXCEPTION_SAFETY_BROKEN 1
-#endif /* __FreeBSD__ */
-
-#if (__linux__ || __APPLE__) && __i386__ && defined(__INTEL_COMPILER)
-    /** The Intel compiler for IA-32 (Linux|Mac OS X) crashes or generates 
-        incorrect code when __asm__ arguments have a cast to volatile. **/
-    #define __TBB_ICC_ASM_VOLATILE_BROKEN 1
-#endif
-
-#if !__INTEL_COMPILER && (_MSC_VER || __GNUC__==3 && __GNUC_MINOR__<=2)
-    /** Bug in GCC 3.2 and MSVC compilers that sometimes return 0 for __alignof(T) 
-        when T has not yet been instantiated. **/
-    #define __TBB_ALIGNOF_NOT_INSTANTIATED_TYPES_BROKEN 1
-#endif
-
-#endif /* __TBB_tbb_config_H */
diff --git a/dependencies64/tbb/include/tbb/tbb_exception.h b/dependencies64/tbb/include/tbb/tbb_exception.h
deleted file mode 100644 (file)
index 2346690..0000000
+++ /dev/null
@@ -1,360 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_exception_H
-#define __TBB_exception_H
-
-#include "tbb_stddef.h"
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <stdexcept>
-#include <string> // required to construct std exception classes
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-namespace tbb {
-
-//! Exception for concurrent containers
-class bad_last_alloc : public std::bad_alloc {
-public:
-    /*override*/ const char* what() const throw();
-#if __TBB_DEFAULT_DTOR_THROW_SPEC_BROKEN
-    /*override*/ ~bad_last_alloc() throw() {}
-#endif
-};
-
-//! Exception for PPL locks
-class improper_lock : public std::exception {
-public:
-    /*override*/ const char* what() const throw();
-};
-
-//! Exception for missing wait on structured_task_group
-class missing_wait : public std::exception {
-public:
-    /*override*/ const char* what() const throw();
-};
-
-//! Exception for repeated scheduling of the same task_handle
-class invalid_multiple_scheduling : public std::exception {
-public:
-    /*override*/ const char* what() const throw();
-};
-
-namespace internal {
-//! Obsolete
-void __TBB_EXPORTED_FUNC throw_bad_last_alloc_exception_v4();
-
-enum exception_id {
-    eid_bad_alloc = 1,
-    eid_bad_last_alloc,
-    eid_nonpositive_step,
-    eid_out_of_range,
-    eid_segment_range_error,
-    eid_index_range_error,
-    eid_missing_wait,
-    eid_invalid_multiple_scheduling,
-    eid_improper_lock,
-    eid_possible_deadlock,
-    eid_operation_not_permitted,
-    eid_condvar_wait_failed,
-    eid_invalid_load_factor,
-    eid_reserved, // free slot for backward compatibility, can be reused.
-    eid_invalid_swap,
-    eid_reservation_length_error,
-    eid_invalid_key,
-    //! The last enumerator tracks the number of defined IDs. It must remain the last one.
-    /** When adding new IDs, place them immediately _before_ this comment (that is
-        _after_ all the existing IDs. NEVER insert new IDs between the existing ones. **/
-    eid_max
-};
-
-//! Gathers all throw operators in one place.
-/** Its purpose is to minimize code bloat that can be caused by throw operators
-    scattered in multiple places, especially in templates. **/
-void __TBB_EXPORTED_FUNC throw_exception_v4 ( exception_id );
-
-//! Versionless convenience wrapper for throw_exception_v4()
-inline void throw_exception ( exception_id eid ) { throw_exception_v4(eid); }
-
-} // namespace internal
-} // namespace tbb
-
-#if __TBB_TASK_GROUP_CONTEXT
-#include "tbb_allocator.h"
-#include <exception>
-#include <typeinfo>
-#include <new>
-
-namespace tbb {
-
-//! Interface to be implemented by all exceptions TBB recognizes and propagates across the threads.
-/** If an unhandled exception of the type derived from tbb::tbb_exception is intercepted
-    by the TBB scheduler in one of the worker threads, it is delivered to and re-thrown in
-    the root thread. The root thread is the thread that has started the outermost algorithm
-    or root task sharing the same task_group_context with the guilty algorithm/task (the one
-    that threw the exception first).
-
-    Note: when documentation mentions workers with respect to exception handling,
-    masters are implied as well, because they are completely equivalent in this context.
-    Consequently a root thread can be master or worker thread.
-
-    NOTE: In case of nested algorithms or complex task hierarchies when the nested
-    levels share (explicitly or by means of implicit inheritance) the task group
-    context of the outermost level, the exception may be (re-)thrown multiple times
-    (ultimately - in each worker on each nesting level) before reaching the root
-    thread at the outermost level. IMPORTANT: if you intercept an exception derived
-    from this class on a nested level, you must re-throw it in the catch block by means
-    of the "throw;" operator.
-
-    TBB provides two implementations of this interface: tbb::captured_exception and
-    template class tbb::movable_exception. See their declarations for more info. **/
-class tbb_exception : public std::exception
-{
-    /** No operator new is provided because the TBB usage model assumes dynamic
-        creation of the TBB exception objects only by means of applying move()
-        operation on an exception thrown out of TBB scheduler. **/
-    void* operator new ( size_t );
-
-public:
-    //! Creates and returns pointer to the deep copy of this exception object.
-    /** Move semantics is allowed. **/
-    virtual tbb_exception* move () throw() = 0;
-
-    //! Destroys objects created by the move() method.
-    /** Frees memory and calls destructor for this exception object.
-        Can and must be used only on objects created by the move method. **/
-    virtual void destroy () throw() = 0;
-
-    //! Throws this exception object.
-    /** Make sure that if you have several levels of derivation from this interface
-        you implement or override this method on the most derived level. The implementation
-        is as simple as "throw *this;". Failure to do this will result in exception
-        of a base class type being thrown. **/
-    virtual void throw_self () = 0;
-
-    //! Returns RTTI name of the originally intercepted exception
-    virtual const char* name() const throw() = 0;
-
-    //! Returns the result of originally intercepted exception's what() method.
-    virtual const char* what() const throw() = 0;
-
-    /** Operator delete is provided only to allow using existing smart pointers
-        with TBB exception objects obtained as the result of applying move()
-        operation on an exception thrown out of TBB scheduler.
-
-        When overriding method move() make sure to override operator delete as well
-        if memory is allocated not by TBB's scalable allocator. **/
-    void operator delete ( void* p ) {
-        internal::deallocate_via_handler_v3(p);
-    }
-};
-
-//! This class is used by TBB to propagate information about unhandled exceptions into the root thread.
-/** Exception of this type is thrown by TBB in the root thread (thread that started a parallel
-    algorithm ) if an unhandled exception was intercepted during the algorithm execution in one
-    of the workers.
-    \sa tbb::tbb_exception **/
-class captured_exception : public tbb_exception
-{
-public:
-    captured_exception ( const captured_exception& src )
-        : tbb_exception(src), my_dynamic(false)
-    {
-        set(src.my_exception_name, src.my_exception_info);
-    }
-
-    captured_exception ( const char* name_, const char* info )
-        : my_dynamic(false)
-    {
-        set(name_, info);
-    }
-
-    __TBB_EXPORTED_METHOD ~captured_exception () throw();
-
-    captured_exception& operator= ( const captured_exception& src ) {
-        if ( this != &src ) {
-            clear();
-            set(src.my_exception_name, src.my_exception_info);
-        }
-        return *this;
-    }
-
-    /*override*/
-    captured_exception* __TBB_EXPORTED_METHOD move () throw();
-
-    /*override*/
-    void __TBB_EXPORTED_METHOD destroy () throw();
-
-    /*override*/
-    void throw_self () { __TBB_THROW(*this); }
-
-    /*override*/
-    const char* __TBB_EXPORTED_METHOD name() const throw();
-
-    /*override*/
-    const char* __TBB_EXPORTED_METHOD what() const throw();
-
-    void __TBB_EXPORTED_METHOD set ( const char* name, const char* info ) throw();
-    void __TBB_EXPORTED_METHOD clear () throw();
-
-private:
-    //! Used only by method clone().
-    captured_exception() {}
-
-    //! Functionally equivalent to {captured_exception e(name,info); return e.clone();}
-    static captured_exception* allocate ( const char* name, const char* info );
-
-    bool my_dynamic;
-    const char* my_exception_name;
-    const char* my_exception_info;
-};
-
-//! Template that can be used to implement exception that transfers arbitrary ExceptionData to the root thread
-/** Code using TBB can instantiate this template with an arbitrary ExceptionData type
-    and throw this exception object. Such exceptions are intercepted by the TBB scheduler
-    and delivered to the root thread ().
-    \sa tbb::tbb_exception **/
-template<typename ExceptionData>
-class movable_exception : public tbb_exception
-{
-    typedef movable_exception<ExceptionData> self_type;
-
-public:
-    movable_exception ( const ExceptionData& data_ )
-        : my_exception_data(data_)
-        , my_dynamic(false)
-        , my_exception_name(
-#if TBB_USE_EXCEPTIONS
-        typeid(self_type).name()
-#else /* !TBB_USE_EXCEPTIONS */
-        "movable_exception"
-#endif /* !TBB_USE_EXCEPTIONS */
-        )
-    {}
-
-    movable_exception ( const movable_exception& src ) throw ()
-        : tbb_exception(src)
-        , my_exception_data(src.my_exception_data)
-        , my_dynamic(false)
-        , my_exception_name(src.my_exception_name)
-    {}
-
-    ~movable_exception () throw() {}
-
-    const movable_exception& operator= ( const movable_exception& src ) {
-        if ( this != &src ) {
-            my_exception_data = src.my_exception_data;
-            my_exception_name = src.my_exception_name;
-        }
-        return *this;
-    }
-
-    ExceptionData& data () throw() { return my_exception_data; }
-
-    const ExceptionData& data () const throw() { return my_exception_data; }
-
-    /*override*/ const char* name () const throw() { return my_exception_name; }
-
-    /*override*/ const char* what () const throw() { return "tbb::movable_exception"; }
-
-    /*override*/
-    movable_exception* move () throw() {
-        void* e = internal::allocate_via_handler_v3(sizeof(movable_exception));
-        if ( e ) {
-            ::new (e) movable_exception(*this);
-            ((movable_exception*)e)->my_dynamic = true;
-        }
-        return (movable_exception*)e;
-    }
-    /*override*/
-    void destroy () throw() {
-        __TBB_ASSERT ( my_dynamic, "Method destroy can be called only on dynamically allocated movable_exceptions" );
-        if ( my_dynamic ) {
-            this->~movable_exception();
-            internal::deallocate_via_handler_v3(this);
-        }
-    }
-    /*override*/
-    void throw_self () { __TBB_THROW( *this ); }
-
-protected:
-    //! User data
-    ExceptionData  my_exception_data;
-
-private:
-    //! Flag specifying whether this object has been dynamically allocated (by the move method)
-    bool my_dynamic;
-
-    //! RTTI name of this class
-    /** We rely on the fact that RTTI names are static string constants. **/
-    const char* my_exception_name;
-};
-
-#if !TBB_USE_CAPTURED_EXCEPTION
-namespace internal {
-
-//! Exception container that preserves the exact copy of the original exception
-/** This class can be used only when the appropriate runtime support (mandated
-    by C++0x) is present **/
-class tbb_exception_ptr {
-    std::exception_ptr  my_ptr;
-
-public:
-    static tbb_exception_ptr* allocate ();
-    static tbb_exception_ptr* allocate ( const tbb_exception& tag );
-    //! This overload uses move semantics (i.e. it empties src)
-    static tbb_exception_ptr* allocate ( captured_exception& src );
-
-    //! Destroys this objects
-    /** Note that objects of this type can be created only by the allocate() method. **/
-    void destroy () throw();
-
-    //! Throws the contained exception .
-    void throw_self () { std::rethrow_exception(my_ptr); }
-
-private:
-    tbb_exception_ptr ( const std::exception_ptr& src ) : my_ptr(src) {}
-    tbb_exception_ptr ( const captured_exception& src ) : my_ptr(std::copy_exception(src)) {}
-}; // class tbb::internal::tbb_exception_ptr
-
-} // namespace internal
-#endif /* !TBB_USE_CAPTURED_EXCEPTION */
-
-} // namespace tbb
-
-#endif /* __TBB_TASK_GROUP_CONTEXT */
-
-#endif /* __TBB_exception_H */
diff --git a/dependencies64/tbb/include/tbb/tbb_machine.h b/dependencies64/tbb/include/tbb/tbb_machine.h
deleted file mode 100644 (file)
index 50636e5..0000000
+++ /dev/null
@@ -1,824 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_machine_H
-#define __TBB_machine_H
-
-/** This header provides basic platform abstraction layer by hooking up appropriate
-    architecture/OS/compiler specific headers from the /include/tbb/machine directory.
-    If a plug-in header does not implement all the required APIs, it must specify
-    the missing ones by setting one or more of the following macros:
-
-    __TBB_USE_GENERIC_PART_WORD_CAS
-    __TBB_USE_GENERIC_PART_WORD_FETCH_ADD
-    __TBB_USE_GENERIC_PART_WORD_FETCH_STORE
-    __TBB_USE_GENERIC_FETCH_ADD
-    __TBB_USE_GENERIC_FETCH_STORE
-    __TBB_USE_GENERIC_DWORD_FETCH_ADD
-    __TBB_USE_GENERIC_DWORD_FETCH_STORE
-    __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE
-    __TBB_USE_GENERIC_FULL_FENCED_LOAD_STORE
-    __TBB_USE_GENERIC_RELAXED_LOAD_STORE
-    __TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE
-
-    In this case tbb_machine.h will add missing functionality based on a minimal set 
-    of APIs that are required to be implemented by all plug-n headers as described
-    futher.
-    Note that these generic implementations may be sub-optimal for a particular
-    architecture, and thus should be relied upon only after careful evaluation
-    or as the last resort.
-
-    Additionally __TBB_64BIT_ATOMICS can be set to 0 on a 32-bit architecture to
-    indicate that the port is not going to support double word atomics. It may also
-    be set to 1 explicitly, though normally this is not necessary as tbb_machine.h
-    will set it automatically.
-
-    Prerequisites for each architecture port
-    ----------------------------------------
-    The following functions have no generic implementation. Therefore they must be 
-    implemented in each machine architecture specific header either as a conventional
-    function or as a functional macro.
-
-    __TBB_Yield()
-        Signals OS that the current thread is willing to relinquish the remainder
-        of its time quantum.
-
-    __TBB_full_memory_fence()
-        Must prevent all memory operations from being reordered across it (both
-        by hardware and compiler). All such fences must be totally ordered (or
-        sequentially consistent).
-
-    __TBB_machine_cmpswp4( volatile void *ptr, int32_t value, int32_t comparand )
-        Must be provided if __TBB_USE_FENCED_ATOMICS is not set.
-
-    __TBB_machine_cmpswp8( volatile void *ptr, int32_t value, int64_t comparand )
-        Must be provided for 64-bit architectures if __TBB_USE_FENCED_ATOMICS is not set,
-        and for 32-bit architectures if __TBB_64BIT_ATOMICS is set
-
-    __TBB_machine_<op><S><fence>(...), where
-        <op> = {cmpswp, fetchadd, fetchstore}
-        <S> = {1, 2, 4, 8}
-        <fence> = {full_fence, acquire, release, relaxed}
-        Must be provided if __TBB_USE_FENCED_ATOMICS is set.
-
-    __TBB_control_consistency_helper()
-        Bridges the memory-semantics gap between architectures providing only
-        implicit C++0x "consume" semantics (like Power Architecture) and those
-        also implicitly obeying control dependencies (like Itanium).
-        It must be used only in conditional code where the condition is itself
-        data-dependent, and will then make subsequent code behave as if the
-        original data dependency were acquired.
-        It needs only an empty definition where implied by the architecture
-        either specifically (Itanium) or because generally stronger C++0x "acquire"
-        semantics are enforced (like x86).
-    
-    __TBB_acquire_consistency_helper(), __TBB_release_consistency_helper()
-        Must be provided if __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE is set.
-        Enforce acquire and release semantics in generic implementations of fenced
-        store and load operations. Depending on the particular architecture/compiler
-        combination they may be a hardware fence, a compiler fence, both or nothing.
- **/
-
-#include "tbb_stddef.h"
-
-namespace tbb {
-namespace internal {
-
-////////////////////////////////////////////////////////////////////////////////
-// Overridable helpers declarations
-//
-// A machine/*.h file may choose to define these templates, otherwise it must
-// request default implementation by setting appropriate __TBB_USE_GENERIC_XXX macro(s).
-//
-template <typename T, std::size_t S>
-struct machine_load_store;
-
-template <typename T, std::size_t S>
-struct machine_load_store_relaxed;
-
-template <typename T, std::size_t S>
-struct machine_load_store_seq_cst;
-//
-// End of overridable helpers declarations
-////////////////////////////////////////////////////////////////////////////////
-
-template<size_t S> struct atomic_selector;
-
-template<> struct atomic_selector<1> {
-    typedef int8_t word;
-    inline static word fetch_store ( volatile void* location, word value );
-};
-
-template<> struct atomic_selector<2> {
-    typedef int16_t word;
-    inline static word fetch_store ( volatile void* location, word value );
-};
-
-template<> struct atomic_selector<4> {
-#if _MSC_VER && !_WIN64
-    // Work-around that avoids spurious /Wp64 warnings
-    typedef intptr_t word;
-#else
-    typedef int32_t word;
-#endif
-    inline static word fetch_store ( volatile void* location, word value );
-};
-
-template<> struct atomic_selector<8> {
-    typedef int64_t word;
-    inline static word fetch_store ( volatile void* location, word value );
-};
-
-}} // namespaces internal, tbb
-
-#if _WIN32||_WIN64
-
-#ifdef _MANAGED
-#pragma managed(push, off)
-#endif
-
-    #if __MINGW64__ || __MINGW32__
-        extern "C" __declspec(dllimport) int __stdcall SwitchToThread( void );
-        #define __TBB_Yield()  SwitchToThread()
-        #if (TBB_USE_GCC_BUILTINS && __TBB_GCC_BUILTIN_ATOMICS_PRESENT)
-            #include "machine/gcc_generic.h"
-        #elif __MINGW64__
-            #include "machine/linux_intel64.h"
-        #elif __MINGW32__
-            #include "machine/linux_ia32.h"
-        #endif
-    #elif defined(_M_IX86)
-        #include "machine/windows_ia32.h"
-    #elif defined(_M_X64) 
-        #include "machine/windows_intel64.h"
-    #elif _XBOX
-        #include "machine/xbox360_ppc.h"
-    #endif
-
-#ifdef _MANAGED
-#pragma managed(pop)
-#endif
-
-#elif __linux__ || __FreeBSD__ || __NetBSD__
-
-    #if (TBB_USE_GCC_BUILTINS && __TBB_GCC_BUILTIN_ATOMICS_PRESENT)
-        #include "machine/gcc_generic.h"
-    #elif __i386__
-        #include "machine/linux_ia32.h"
-    #elif __x86_64__
-        #include "machine/linux_intel64.h"
-    #elif __ia64__
-        #include "machine/linux_ia64.h"
-    #elif __powerpc__
-        #include "machine/mac_ppc.h"
-    #elif __TBB_GCC_BUILTIN_ATOMICS_PRESENT
-        #include "machine/gcc_generic.h"
-    #endif
-    #include "machine/linux_common.h"
-
-#elif __APPLE__
-
-    #if __i386__
-        #include "machine/linux_ia32.h"
-    #elif __x86_64__
-        #include "machine/linux_intel64.h"
-    #elif __POWERPC__
-        #include "machine/mac_ppc.h"
-    #endif
-    #include "machine/macos_common.h"
-
-#elif _AIX
-
-    #include "machine/ibm_aix51.h"
-
-#elif __sun || __SUNPRO_CC
-
-    #define __asm__ asm
-    #define __volatile__ volatile
-
-    #if __i386  || __i386__
-        #include "machine/linux_ia32.h"
-    #elif __x86_64__
-        #include "machine/linux_intel64.h"
-    #elif __sparc
-        #include "machine/sunos_sparc.h"
-    #endif
-    #include <sched.h>
-
-    #define __TBB_Yield() sched_yield()
-
-#endif /* OS selection */
-
-#ifndef __TBB_64BIT_ATOMICS
-    #define __TBB_64BIT_ATOMICS 1
-#endif
-
-// Special atomic functions
-#if __TBB_USE_FENCED_ATOMICS
-    #define __TBB_machine_cmpswp1   __TBB_machine_cmpswp1full_fence
-    #define __TBB_machine_cmpswp2   __TBB_machine_cmpswp2full_fence
-    #define __TBB_machine_cmpswp4   __TBB_machine_cmpswp4full_fence
-    #define __TBB_machine_cmpswp8   __TBB_machine_cmpswp8full_fence
-
-    #if __TBB_WORDSIZE==8
-        #define __TBB_machine_fetchadd8             __TBB_machine_fetchadd8full_fence
-        #define __TBB_machine_fetchstore8           __TBB_machine_fetchstore8full_fence
-        #define __TBB_FetchAndAddWrelease(P,V)      __TBB_machine_fetchadd8release(P,V)
-        #define __TBB_FetchAndIncrementWacquire(P)  __TBB_machine_fetchadd8acquire(P,1)
-        #define __TBB_FetchAndDecrementWrelease(P)  __TBB_machine_fetchadd8release(P,(-1))
-    #else
-        #error Define macros for 4-byte word, similarly to the above __TBB_WORDSIZE==8 branch.
-    #endif /* __TBB_WORDSIZE==4 */
-#else /* !__TBB_USE_FENCED_ATOMICS */
-    #define __TBB_FetchAndAddWrelease(P,V)      __TBB_FetchAndAddW(P,V)
-    #define __TBB_FetchAndIncrementWacquire(P)  __TBB_FetchAndAddW(P,1)
-    #define __TBB_FetchAndDecrementWrelease(P)  __TBB_FetchAndAddW(P,(-1))
-#endif /* !__TBB_USE_FENCED_ATOMICS */
-
-#if __TBB_WORDSIZE==4
-    #define __TBB_CompareAndSwapW(P,V,C)    __TBB_machine_cmpswp4(P,V,C)
-    #define __TBB_FetchAndAddW(P,V)         __TBB_machine_fetchadd4(P,V)
-    #define __TBB_FetchAndStoreW(P,V)       __TBB_machine_fetchstore4(P,V)
-#elif  __TBB_WORDSIZE==8
-    #if __TBB_USE_GENERIC_DWORD_LOAD_STORE || __TBB_USE_GENERIC_DWORD_FETCH_ADD || __TBB_USE_GENERIC_DWORD_FETCH_STORE
-        #error These macros should only be used on 32-bit platforms.
-    #endif
-
-    #define __TBB_CompareAndSwapW(P,V,C)    __TBB_machine_cmpswp8(P,V,C)
-    #define __TBB_FetchAndAddW(P,V)         __TBB_machine_fetchadd8(P,V)
-    #define __TBB_FetchAndStoreW(P,V)       __TBB_machine_fetchstore8(P,V)
-#else /* __TBB_WORDSIZE != 8 */
-    #error Unsupported machine word size.
-#endif /* __TBB_WORDSIZE */
-
-#ifndef __TBB_Pause
-    inline void __TBB_Pause(int32_t) {
-        __TBB_Yield();
-    }
-#endif
-
-namespace tbb {
-
-//! Sequentially consistent full memory fence.
-inline void atomic_fence () { __TBB_full_memory_fence(); }
-
-namespace internal {
-
-//! Class that implements exponential backoff.
-/** See implementation of spin_wait_while_eq for an example. */
-class atomic_backoff : no_copy {
-    //! Time delay, in units of "pause" instructions.
-    /** Should be equal to approximately the number of "pause" instructions
-        that take the same time as an context switch. */
-    static const int32_t LOOPS_BEFORE_YIELD = 16;
-    int32_t count;
-public:
-    atomic_backoff() : count(1) {}
-
-    //! Pause for a while.
-    void pause() {
-        if( count<=LOOPS_BEFORE_YIELD ) {
-            __TBB_Pause(count);
-            // Pause twice as long the next time.
-            count*=2;
-        } else {
-            // Pause is so long that we might as well yield CPU to scheduler.
-            __TBB_Yield();
-        }
-    }
-
-    // pause for a few times and then return false immediately.
-    bool bounded_pause() {
-        if( count<=LOOPS_BEFORE_YIELD ) {
-            __TBB_Pause(count);
-            // Pause twice as long the next time.
-            count*=2;
-            return true;
-        } else {
-            return false;
-        }
-    }
-
-    void reset() {
-        count = 1;
-    }
-};
-
-//! Spin WHILE the value of the variable is equal to a given value
-/** T and U should be comparable types. */
-template<typename T, typename U>
-void spin_wait_while_eq( const volatile T& location, U value ) {
-    atomic_backoff backoff;
-    while( location==value ) backoff.pause();
-}
-
-//! Spin UNTIL the value of the variable is equal to a given value
-/** T and U should be comparable types. */
-template<typename T, typename U>
-void spin_wait_until_eq( const volatile T& location, const U value ) {
-    atomic_backoff backoff;
-    while( location!=value ) backoff.pause();
-}
-
-// T should be unsigned, otherwise sign propagation will break correctness of bit manipulations.
-// S should be either 1 or 2, for the mask calculation to work correctly.
-// Together, these rules limit applicability of Masked CAS to unsigned char and unsigned short.
-template<size_t S, typename T>
-inline T __TBB_MaskedCompareAndSwap (volatile T *ptr, T value, T comparand ) {
-    volatile uint32_t * base = (uint32_t*)( (uintptr_t)ptr & ~(uintptr_t)0x3 );
-#if __TBB_BIG_ENDIAN
-    const uint8_t bitoffset = uint8_t( 8*( 4-S - (uintptr_t(ptr) & 0x3) ) );
-#else
-    const uint8_t bitoffset = uint8_t( 8*((uintptr_t)ptr & 0x3) );
-#endif
-    const uint32_t mask = ( (1<<(S*8)) - 1 )<<bitoffset;
-    atomic_backoff b;
-    uint32_t result;
-    for(;;) {
-        result = *base; // reload the base value which might change during the pause
-        uint32_t old_value = ( result & ~mask ) | ( comparand << bitoffset );
-        uint32_t new_value = ( result & ~mask ) | ( value << bitoffset );
-        // __TBB_CompareAndSwap4 presumed to have full fence.
-        // Cast shuts up /Wp64 warning
-        result = (uint32_t)__TBB_machine_cmpswp4( base, new_value, old_value );
-        if(  result==old_value               // CAS succeeded
-          || ((result^old_value)&mask)!=0 )  // CAS failed and the bits of interest have changed
-            break;
-        else                                 // CAS failed but the bits of interest left unchanged
-            b.pause();
-    }
-    return T((result & mask) >> bitoffset);
-}
-
-template<size_t S, typename T>
-inline T __TBB_CompareAndSwapGeneric (volatile void *ptr, T value, T comparand );
-
-template<>
-inline uint8_t __TBB_CompareAndSwapGeneric <1,uint8_t> (volatile void *ptr, uint8_t value, uint8_t comparand ) {
-#if __TBB_USE_GENERIC_PART_WORD_CAS
-    return __TBB_MaskedCompareAndSwap<1,uint8_t>((volatile uint8_t *)ptr,value,comparand);
-#else
-    return __TBB_machine_cmpswp1(ptr,value,comparand);
-#endif
-}
-
-template<>
-inline uint16_t __TBB_CompareAndSwapGeneric <2,uint16_t> (volatile void *ptr, uint16_t value, uint16_t comparand ) {
-#if __TBB_USE_GENERIC_PART_WORD_CAS
-    return __TBB_MaskedCompareAndSwap<2,uint16_t>((volatile uint16_t *)ptr,value,comparand);
-#else
-    return __TBB_machine_cmpswp2(ptr,value,comparand);
-#endif
-}
-
-template<>
-inline uint32_t __TBB_CompareAndSwapGeneric <4,uint32_t> (volatile void *ptr, uint32_t value, uint32_t comparand ) {
-    // Cast shuts up /Wp64 warning
-    return (uint32_t)__TBB_machine_cmpswp4(ptr,value,comparand);
-}
-
-#if __TBB_64BIT_ATOMICS
-template<>
-inline uint64_t __TBB_CompareAndSwapGeneric <8,uint64_t> (volatile void *ptr, uint64_t value, uint64_t comparand ) {
-    return __TBB_machine_cmpswp8(ptr,value,comparand);
-}
-#endif
-
-template<size_t S, typename T>
-inline T __TBB_FetchAndAddGeneric (volatile void *ptr, T addend) {
-    atomic_backoff b;
-    T result;
-    for(;;) {
-        result = *reinterpret_cast<volatile T *>(ptr);
-        // __TBB_CompareAndSwapGeneric presumed to have full fence.
-        if( __TBB_CompareAndSwapGeneric<S,T> ( ptr, result+addend, result )==result )
-            break;
-        b.pause();
-    }
-    return result;
-}
-
-template<size_t S, typename T>
-inline T __TBB_FetchAndStoreGeneric (volatile void *ptr, T value) {
-    atomic_backoff b;
-    T result;
-    for(;;) {
-        result = *reinterpret_cast<volatile T *>(ptr);
-        // __TBB_CompareAndSwapGeneric presumed to have full fence.
-        if( __TBB_CompareAndSwapGeneric<S,T> ( ptr, value, result )==result )
-            break;
-        b.pause();
-    }
-    return result;
-}
-
-#if __TBB_USE_GENERIC_PART_WORD_CAS
-#define __TBB_machine_cmpswp1 tbb::internal::__TBB_CompareAndSwapGeneric<1,uint8_t>
-#define __TBB_machine_cmpswp2 tbb::internal::__TBB_CompareAndSwapGeneric<2,uint16_t>
-#endif
-
-#if __TBB_USE_GENERIC_FETCH_ADD || __TBB_USE_GENERIC_PART_WORD_FETCH_ADD
-#define __TBB_machine_fetchadd1 tbb::internal::__TBB_FetchAndAddGeneric<1,uint8_t>
-#define __TBB_machine_fetchadd2 tbb::internal::__TBB_FetchAndAddGeneric<2,uint16_t>
-#endif
-
-#if __TBB_USE_GENERIC_FETCH_ADD 
-#define __TBB_machine_fetchadd4 tbb::internal::__TBB_FetchAndAddGeneric<4,uint32_t>
-#endif
-
-#if __TBB_USE_GENERIC_FETCH_ADD || __TBB_USE_GENERIC_DWORD_FETCH_ADD
-#define __TBB_machine_fetchadd8 tbb::internal::__TBB_FetchAndAddGeneric<8,uint64_t>
-#endif
-
-#if __TBB_USE_GENERIC_FETCH_STORE || __TBB_USE_GENERIC_PART_WORD_FETCH_STORE
-#define __TBB_machine_fetchstore1 tbb::internal::__TBB_FetchAndStoreGeneric<1,uint8_t>
-#define __TBB_machine_fetchstore2 tbb::internal::__TBB_FetchAndStoreGeneric<2,uint16_t>
-#endif
-
-#if __TBB_USE_GENERIC_FETCH_STORE 
-#define __TBB_machine_fetchstore4 tbb::internal::__TBB_FetchAndStoreGeneric<4,uint32_t>
-#endif
-
-#if __TBB_USE_GENERIC_FETCH_STORE || __TBB_USE_GENERIC_DWORD_FETCH_STORE
-#define __TBB_machine_fetchstore8 tbb::internal::__TBB_FetchAndStoreGeneric<8,uint64_t>
-#endif
-
-#if __TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE
-#define __TBB_MACHINE_DEFINE_ATOMIC_SELECTOR_FETCH_STORE(S)                                             \
-    atomic_selector<S>::word atomic_selector<S>::fetch_store ( volatile void* location, word value ) {  \
-        return __TBB_machine_fetchstore##S( location, value );                                          \
-    }
-
-__TBB_MACHINE_DEFINE_ATOMIC_SELECTOR_FETCH_STORE(1)
-__TBB_MACHINE_DEFINE_ATOMIC_SELECTOR_FETCH_STORE(2)
-__TBB_MACHINE_DEFINE_ATOMIC_SELECTOR_FETCH_STORE(4)
-__TBB_MACHINE_DEFINE_ATOMIC_SELECTOR_FETCH_STORE(8)
-
-#undef __TBB_MACHINE_DEFINE_ATOMIC_SELECTOR_FETCH_STORE
-#endif /* __TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE */
-
-#if __TBB_USE_GENERIC_DWORD_LOAD_STORE
-inline void __TBB_machine_store8 (volatile void *ptr, int64_t value) {
-    for(;;) {
-        int64_t result = *(int64_t *)ptr;
-        if( __TBB_machine_cmpswp8(ptr,value,result)==result ) break;
-    }
-}
-
-inline int64_t __TBB_machine_load8 (const volatile void *ptr) {
-    // Comparand and new value may be anything, they only must be equal, and
-    // the value should have a low probability to be actually found in 'location'.
-    const int64_t anyvalue = 2305843009213693951;
-    return __TBB_machine_cmpswp8(const_cast<volatile void *>(ptr),anyvalue,anyvalue);
-}
-#endif /* __TBB_USE_GENERIC_DWORD_LOAD_STORE */
-
-#if __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE
-/** Fenced operations use volatile qualifier to prevent compiler from optimizing
-    them out, and on on architectures with weak memory ordering to induce compiler
-    to generate code with appropriate acquire/release semantics.
-    On architectures like IA32, Intel64 (and likely and Sparc TSO) volatile has
-    no effect on code gen, and consistency helpers serve as a compiler fence (the
-    latter being true for IA64/gcc as well to fix a bug in some gcc versions). **/
-template <typename T, size_t S>
-struct machine_load_store {
-    static T load_with_acquire ( const volatile T& location ) {
-        T to_return = location;
-        __TBB_acquire_consistency_helper();
-        return to_return;
-    }
-    static void store_with_release ( volatile T &location, T value ) {
-        __TBB_release_consistency_helper();
-        location = value;
-    }
-};
-
-#if __TBB_WORDSIZE==4 && __TBB_64BIT_ATOMICS
-template <typename T>
-struct machine_load_store<T,8> {
-    static T load_with_acquire ( const volatile T& location ) {
-        return (T)__TBB_machine_load8( (const volatile void*)&location );
-    }
-    static void store_with_release ( volatile T& location, T value ) {
-        __TBB_machine_store8( (volatile void*)&location, (int64_t)value );
-    }
-};
-#endif /* __TBB_WORDSIZE==4 && __TBB_64BIT_ATOMICS */
-#endif /* __TBB_USE_GENERIC_HALF_FENCED_LOAD_STORE */
-
-template <typename T, size_t S>
-struct machine_load_store_seq_cst {
-    static T load ( const volatile T& location ) {
-        __TBB_full_memory_fence();
-        return machine_load_store<T,S>::load_with_acquire( location );
-    }
-#if __TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE
-    static void store ( volatile T &location, T value ) {
-        atomic_selector<S>::fetch_store( (volatile void*)&location, (typename atomic_selector<S>::word)value );
-    }
-#else /* !__TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE */
-    static void store ( volatile T &location, T value ) {
-        machine_load_store<T,S>::store_with_release( location, value );
-        __TBB_full_memory_fence();
-    }
-#endif /* !__TBB_USE_FETCHSTORE_AS_FULL_FENCED_STORE */
-};
-
-#if __TBB_WORDSIZE==4 && __TBB_64BIT_ATOMICS
-/** The implementation does not use functions __TBB_machine_load8/store8 as they
-    are not required to be sequentially consistent. **/
-template <typename T>
-struct machine_load_store_seq_cst<T,8> {
-    static T load ( const volatile T& location ) {
-        // Comparand and new value may be anything, they only must be equal, and
-        // the value should have a low probability to be actually found in 'location'.
-        const int64_t anyvalue = 2305843009213693951ll;
-        return __TBB_machine_cmpswp8( (volatile void*)const_cast<volatile T*>(&location), anyvalue, anyvalue );
-    }
-    static void store ( volatile T &location, T value ) {
-        int64_t result = (volatile int64_t&)location;
-        while ( __TBB_machine_cmpswp8((volatile void*)&location, (int64_t)value, result) != result )
-            result = (volatile int64_t&)location;
-    }
-};
-#endif /* __TBB_WORDSIZE==4 && __TBB_64BIT_ATOMICS */
-
-#if __TBB_USE_GENERIC_RELAXED_LOAD_STORE
-// Relaxed operations add volatile qualifier to prevent compiler from optimizing them out.
-/** Volatile should not incur any additional cost on IA32, Intel64, and Sparc TSO
-    architectures. However on architectures with weak memory ordering compiler may 
-    generate code with acquire/release semantics for operations on volatile data. **/
-template <typename T, size_t S>
-struct machine_load_store_relaxed {
-    static inline T load ( const volatile T& location ) {
-        return location;
-    }
-    static inline void store ( volatile T& location, T value ) {
-        location = value;
-    }
-};
-
-#if __TBB_WORDSIZE==4 && __TBB_64BIT_ATOMICS
-template <typename T>
-struct machine_load_store_relaxed<T,8> {
-    static inline T load ( const volatile T& location ) {
-        return (T)__TBB_machine_load8( (const volatile void*)&location );
-    }
-    static inline void store ( volatile T& location, T value ) {
-        __TBB_machine_store8( (volatile void*)&location, (int64_t)value );
-    }
-};
-#endif /* __TBB_WORDSIZE==4 && __TBB_64BIT_ATOMICS */
-#endif /* __TBB_USE_GENERIC_RELAXED_LOAD_STORE */
-
-template<typename T>
-inline T __TBB_load_with_acquire(const volatile T &location) {
-    return machine_load_store<T,sizeof(T)>::load_with_acquire( location );
-}
-template<typename T, typename V>
-inline void __TBB_store_with_release(volatile T& location, V value) {
-    machine_load_store<T,sizeof(T)>::store_with_release( location, T(value) );
-}
-//! Overload that exists solely to avoid /Wp64 warnings.
-inline void __TBB_store_with_release(volatile size_t& location, size_t value) {
-    machine_load_store<size_t,sizeof(size_t)>::store_with_release( location, value );
-}
-
-template<typename T>
-inline T __TBB_load_full_fence(const volatile T &location) {
-    return machine_load_store_seq_cst<T,sizeof(T)>::load( location );
-}
-template<typename T, typename V>
-inline void __TBB_store_full_fence(volatile T& location, V value) {
-    machine_load_store_seq_cst<T,sizeof(T)>::store( location, T(value) );
-}
-//! Overload that exists solely to avoid /Wp64 warnings.
-inline void __TBB_store_full_fence(volatile size_t& location, size_t value) {
-    machine_load_store_seq_cst<size_t,sizeof(size_t)>::store( location, value );
-}
-
-template<typename T>
-inline T __TBB_load_relaxed (const volatile T& location) {
-    return machine_load_store_relaxed<T,sizeof(T)>::load( const_cast<T&>(location) );
-}
-template<typename T, typename V>
-inline void __TBB_store_relaxed ( volatile T& location, V value ) {
-    machine_load_store_relaxed<T,sizeof(T)>::store( const_cast<T&>(location), T(value) );
-}
-//! Overload that exists solely to avoid /Wp64 warnings.
-inline void __TBB_store_relaxed ( volatile size_t& location, size_t value ) {
-    machine_load_store_relaxed<size_t,sizeof(size_t)>::store( const_cast<size_t&>(location), value );
-}
-
-// Macro __TBB_TypeWithAlignmentAtLeastAsStrict(T) should be a type with alignment at least as 
-// strict as type T.  The type should have a trivial default constructor and destructor, so that
-// arrays of that type can be declared without initializers.
-// It is correct (but perhaps a waste of space) if __TBB_TypeWithAlignmentAtLeastAsStrict(T) expands
-// to a type bigger than T.
-// The default definition here works on machines where integers are naturally aligned and the
-// strictest alignment is 64.
-#ifndef __TBB_TypeWithAlignmentAtLeastAsStrict
-
-#if __TBB_ATTRIBUTE_ALIGNED_PRESENT
-
-#define __TBB_DefineTypeWithAlignment(PowerOf2)       \
-struct __TBB_machine_type_with_alignment_##PowerOf2 { \
-    uint32_t member[PowerOf2/sizeof(uint32_t)];       \
-} __attribute__((aligned(PowerOf2)));
-#define __TBB_alignof(T) __alignof__(T)
-
-#elif __TBB_DECLSPEC_ALIGN_PRESENT
-
-#define __TBB_DefineTypeWithAlignment(PowerOf2)       \
-__declspec(align(PowerOf2))                           \
-struct __TBB_machine_type_with_alignment_##PowerOf2 { \
-    uint32_t member[PowerOf2/sizeof(uint32_t)];       \
-};
-#define __TBB_alignof(T) __alignof(T)
-
-#else /* A compiler with unknown syntax for data alignment */
-#error Must define __TBB_TypeWithAlignmentAtLeastAsStrict(T)
-#endif
-
-/* Now declare types aligned to useful powers of two */
-// TODO: Is __TBB_DefineTypeWithAlignment(8) needed on 32 bit platforms?
-__TBB_DefineTypeWithAlignment(16)
-__TBB_DefineTypeWithAlignment(32)
-__TBB_DefineTypeWithAlignment(64)
-
-typedef __TBB_machine_type_with_alignment_64 __TBB_machine_type_with_strictest_alignment;
-
-// Primary template is a declaration of incomplete type so that it fails with unknown alignments
-template<size_t N> struct type_with_alignment;
-
-// Specializations for allowed alignments
-template<> struct type_with_alignment<1> { char member; };
-template<> struct type_with_alignment<2> { uint16_t member; };
-template<> struct type_with_alignment<4> { uint32_t member; };
-template<> struct type_with_alignment<8> { uint64_t member; };
-template<> struct type_with_alignment<16> {__TBB_machine_type_with_alignment_16 member; };
-template<> struct type_with_alignment<32> {__TBB_machine_type_with_alignment_32 member; };
-template<> struct type_with_alignment<64> {__TBB_machine_type_with_alignment_64 member; };
-
-#if __TBB_ALIGNOF_NOT_INSTANTIATED_TYPES_BROKEN  
-//! Work around for bug in GNU 3.2 and MSVC compilers.
-/** Bug is that compiler sometimes returns 0 for __alignof(T) when T has not yet been instantiated.
-    The work-around forces instantiation by forcing computation of sizeof(T) before __alignof(T). */
-template<size_t Size, typename T>
-struct work_around_alignment_bug {
-    static const size_t alignment = __TBB_alignof(T);
-};
-#define __TBB_TypeWithAlignmentAtLeastAsStrict(T) tbb::internal::type_with_alignment<tbb::internal::work_around_alignment_bug<sizeof(T),T>::alignment>
-#else
-#define __TBB_TypeWithAlignmentAtLeastAsStrict(T) tbb::internal::type_with_alignment<__TBB_alignof(T)>
-#endif  /* __TBB_ALIGNOF_NOT_INSTANTIATED_TYPES_BROKEN */
-
-#endif  /* __TBB_TypeWithAlignmentAtLeastAsStrict */
-
-// Template class here is to avoid instantiation of the static data for modules that don't use it
-template<typename T>
-struct reverse {
-    static const T byte_table[256];
-};
-// An efficient implementation of the reverse function utilizes a 2^8 lookup table holding the bit-reversed
-// values of [0..2^8 - 1]. Those values can also be computed on the fly at a slightly higher cost.
-template<typename T>
-const T reverse<T>::byte_table[256] = {
-    0x00, 0x80, 0x40, 0xC0, 0x20, 0xA0, 0x60, 0xE0, 0x10, 0x90, 0x50, 0xD0, 0x30, 0xB0, 0x70, 0xF0,
-    0x08, 0x88, 0x48, 0xC8, 0x28, 0xA8, 0x68, 0xE8, 0x18, 0x98, 0x58, 0xD8, 0x38, 0xB8, 0x78, 0xF8,
-    0x04, 0x84, 0x44, 0xC4, 0x24, 0xA4, 0x64, 0xE4, 0x14, 0x94, 0x54, 0xD4, 0x34, 0xB4, 0x74, 0xF4,
-    0x0C, 0x8C, 0x4C, 0xCC, 0x2C, 0xAC, 0x6C, 0xEC, 0x1C, 0x9C, 0x5C, 0xDC, 0x3C, 0xBC, 0x7C, 0xFC,
-    0x02, 0x82, 0x42, 0xC2, 0x22, 0xA2, 0x62, 0xE2, 0x12, 0x92, 0x52, 0xD2, 0x32, 0xB2, 0x72, 0xF2,
-    0x0A, 0x8A, 0x4A, 0xCA, 0x2A, 0xAA, 0x6A, 0xEA, 0x1A, 0x9A, 0x5A, 0xDA, 0x3A, 0xBA, 0x7A, 0xFA,
-    0x06, 0x86, 0x46, 0xC6, 0x26, 0xA6, 0x66, 0xE6, 0x16, 0x96, 0x56, 0xD6, 0x36, 0xB6, 0x76, 0xF6,
-    0x0E, 0x8E, 0x4E, 0xCE, 0x2E, 0xAE, 0x6E, 0xEE, 0x1E, 0x9E, 0x5E, 0xDE, 0x3E, 0xBE, 0x7E, 0xFE,
-    0x01, 0x81, 0x41, 0xC1, 0x21, 0xA1, 0x61, 0xE1, 0x11, 0x91, 0x51, 0xD1, 0x31, 0xB1, 0x71, 0xF1,
-    0x09, 0x89, 0x49, 0xC9, 0x29, 0xA9, 0x69, 0xE9, 0x19, 0x99, 0x59, 0xD9, 0x39, 0xB9, 0x79, 0xF9,
-    0x05, 0x85, 0x45, 0xC5, 0x25, 0xA5, 0x65, 0xE5, 0x15, 0x95, 0x55, 0xD5, 0x35, 0xB5, 0x75, 0xF5,
-    0x0D, 0x8D, 0x4D, 0xCD, 0x2D, 0xAD, 0x6D, 0xED, 0x1D, 0x9D, 0x5D, 0xDD, 0x3D, 0xBD, 0x7D, 0xFD,
-    0x03, 0x83, 0x43, 0xC3, 0x23, 0xA3, 0x63, 0xE3, 0x13, 0x93, 0x53, 0xD3, 0x33, 0xB3, 0x73, 0xF3,
-    0x0B, 0x8B, 0x4B, 0xCB, 0x2B, 0xAB, 0x6B, 0xEB, 0x1B, 0x9B, 0x5B, 0xDB, 0x3B, 0xBB, 0x7B, 0xFB,
-    0x07, 0x87, 0x47, 0xC7, 0x27, 0xA7, 0x67, 0xE7, 0x17, 0x97, 0x57, 0xD7, 0x37, 0xB7, 0x77, 0xF7,
-    0x0F, 0x8F, 0x4F, 0xCF, 0x2F, 0xAF, 0x6F, 0xEF, 0x1F, 0x9F, 0x5F, 0xDF, 0x3F, 0xBF, 0x7F, 0xFF
-};
-
-} // namespace internal
-} // namespace tbb
-
-// Preserving access to legacy APIs
-using tbb::internal::__TBB_load_with_acquire;
-using tbb::internal::__TBB_store_with_release;
-
-// Mapping historically used names to the ones expected by atomic_load_store_traits
-#define __TBB_load_acquire  __TBB_load_with_acquire
-#define __TBB_store_release __TBB_store_with_release
-
-#ifndef __TBB_Log2
-inline intptr_t __TBB_Log2( uintptr_t x ) {
-    if( x==0 ) return -1;
-    intptr_t result = 0;
-    uintptr_t tmp;
-#if __TBB_WORDSIZE>=8
-    if( (tmp = x>>32) ) { x=tmp; result += 32; }
-#endif
-    if( (tmp = x>>16) ) { x=tmp; result += 16; }
-    if( (tmp = x>>8) )  { x=tmp; result += 8; }
-    if( (tmp = x>>4) )  { x=tmp; result += 4; }
-    if( (tmp = x>>2) )  { x=tmp; result += 2; }
-    return (x&2)? result+1: result;
-}
-#endif
-
-#ifndef __TBB_AtomicOR
-inline void __TBB_AtomicOR( volatile void *operand, uintptr_t addend ) {
-    tbb::internal::atomic_backoff b;
-    for(;;) {
-        uintptr_t tmp = *(volatile uintptr_t *)operand;
-        uintptr_t result = __TBB_CompareAndSwapW(operand, tmp|addend, tmp);
-        if( result==tmp ) break;
-        b.pause();
-    }
-}
-#endif
-
-#ifndef __TBB_AtomicAND
-inline void __TBB_AtomicAND( volatile void *operand, uintptr_t addend ) {
-    tbb::internal::atomic_backoff b;
-    for(;;) {
-        uintptr_t tmp = *(volatile uintptr_t *)operand;
-        uintptr_t result = __TBB_CompareAndSwapW(operand, tmp&addend, tmp);
-        if( result==tmp ) break;
-        b.pause();
-    }
-}
-#endif
-
-#ifndef __TBB_Flag
-typedef unsigned char __TBB_Flag;
-#endif
-typedef __TBB_atomic __TBB_Flag __TBB_atomic_flag;
-
-#ifndef __TBB_TryLockByte
-inline bool __TBB_TryLockByte( __TBB_atomic_flag &flag ) {
-    return __TBB_machine_cmpswp1(&flag,1,0)==0;
-}
-#endif
-
-#ifndef __TBB_LockByte
-inline __TBB_Flag __TBB_LockByte( __TBB_atomic_flag& flag ) {
-    if ( !__TBB_TryLockByte(flag) ) {
-        tbb::internal::atomic_backoff b;
-        do {
-            b.pause();
-        } while ( !__TBB_TryLockByte(flag) );
-    }
-    return 0;
-}
-#endif
-
-#define __TBB_UnlockByte __TBB_store_with_release
-
-#ifndef __TBB_ReverseByte
-inline unsigned char __TBB_ReverseByte(unsigned char src) {
-    return tbb::internal::reverse<unsigned char>::byte_table[src];
-}
-#endif
-
-template<typename T>
-T __TBB_ReverseBits(T src) {
-    T dst;
-    unsigned char *original = (unsigned char *) &src;
-    unsigned char *reversed = (unsigned char *) &dst;
-
-    for( int i = sizeof(T)-1; i >= 0; i-- )
-        reversed[i] = __TBB_ReverseByte( original[sizeof(T)-i-1] );
-
-    return dst;
-}
-
-#endif /* __TBB_machine_H */
diff --git a/dependencies64/tbb/include/tbb/tbb_profiling.h b/dependencies64/tbb/include/tbb/tbb_profiling.h
deleted file mode 100644 (file)
index a56039f..0000000
+++ /dev/null
@@ -1,205 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_profiling_H
-#define __TBB_profiling_H
-
-// Check if the tools support is enabled
-#if (_WIN32||_WIN64||__linux__) && !__MINGW32__ && TBB_USE_THREADING_TOOLS
-
-#if _WIN32||_WIN64
-#include <stdlib.h>  /* mbstowcs_s */
-#endif
-#include "tbb_stddef.h"
-
-namespace tbb {
-    namespace internal {
-#if _WIN32||_WIN64
-        void __TBB_EXPORTED_FUNC itt_set_sync_name_v3( void *obj, const wchar_t* name ); 
-        inline size_t multibyte_to_widechar( wchar_t* wcs, const char* mbs, size_t bufsize) {
-#if _MSC_VER>=1400
-            size_t len;
-            mbstowcs_s( &len, wcs, bufsize, mbs, _TRUNCATE );
-            return len;   // mbstowcs_s counts null terminator
-#else
-            size_t len = mbstowcs( wcs, mbs, bufsize );
-            if(wcs && len!=size_t(-1) )
-                wcs[len<bufsize-1? len: bufsize-1] = wchar_t('\0');
-            return len+1; // mbstowcs does not count null terminator
-#endif
-        }
-#else
-        void __TBB_EXPORTED_FUNC itt_set_sync_name_v3( void *obj, const char* name ); 
-#endif
-    } // namespace internal
-} // namespace tbb
-
-//! Macro __TBB_DEFINE_PROFILING_SET_NAME(T) defines "set_name" methods for sync objects of type T
-/** Should be used in the "tbb" namespace only. 
-    Don't place semicolon after it to avoid compiler warnings. **/
-#if _WIN32||_WIN64
-    #define __TBB_DEFINE_PROFILING_SET_NAME(sync_object_type)    \
-        namespace profiling {                                                       \
-            inline void set_name( sync_object_type& obj, const wchar_t* name ) {    \
-                tbb::internal::itt_set_sync_name_v3( &obj, name );                  \
-            }                                                                       \
-            inline void set_name( sync_object_type& obj, const char* name ) {       \
-                size_t len = tbb::internal::multibyte_to_widechar(NULL, name, 0);   \
-                wchar_t *wname = new wchar_t[len];                                  \
-                tbb::internal::multibyte_to_widechar(wname, name, len);             \
-                set_name( obj, wname );                                             \
-                delete[] wname;                                                     \
-            }                                                                       \
-        }
-#else /* !WIN */
-    #define __TBB_DEFINE_PROFILING_SET_NAME(sync_object_type)    \
-        namespace profiling {                                                       \
-            inline void set_name( sync_object_type& obj, const char* name ) {       \
-                tbb::internal::itt_set_sync_name_v3( &obj, name );                  \
-            }                                                                       \
-        }
-#endif /* !WIN */
-
-#else /* no tools support */
-
-#if _WIN32||_WIN64
-    #define __TBB_DEFINE_PROFILING_SET_NAME(sync_object_type)    \
-        namespace profiling {                                               \
-            inline void set_name( sync_object_type&, const wchar_t* ) {}    \
-            inline void set_name( sync_object_type&, const char* ) {}       \
-        }
-#else /* !WIN */
-    #define __TBB_DEFINE_PROFILING_SET_NAME(sync_object_type)    \
-        namespace profiling {                                               \
-            inline void set_name( sync_object_type&, const char* ) {}       \
-        }
-#endif /* !WIN */
-
-#endif /* no tools support */
-
-#include "atomic.h"
-// Need these to work regardless of tools support
-namespace tbb {
-    namespace internal {
-
-        enum notify_type {prepare=0, cancel, acquired, releasing};
-        const uintptr_t NUM_NOTIFY_TYPES = 4; // set to # elements in enum above
-        
-        void __TBB_EXPORTED_FUNC call_itt_notify_v5(int t, void *ptr);
-        void __TBB_EXPORTED_FUNC itt_store_pointer_with_release_v3(void *dst, void *src);
-        void* __TBB_EXPORTED_FUNC itt_load_pointer_with_acquire_v3(const void *src);
-        void* __TBB_EXPORTED_FUNC itt_load_pointer_v3( const void* src );
-
-        // two template arguments are to workaround /Wp64 warning with tbb::atomic specialized for unsigned type
-        template <typename T, typename U>
-        inline void itt_store_word_with_release(tbb::atomic<T>& dst, U src) {
-#if TBB_USE_THREADING_TOOLS
-            // This assertion should be replaced with static_assert
-            __TBB_ASSERT(sizeof(T) == sizeof(void *), "Type must be word-sized.");
-            itt_store_pointer_with_release_v3(&dst, (void *)uintptr_t(src));
-#else
-            dst = src;
-#endif // TBB_USE_THREADING_TOOLS
-        }
-
-        template <typename T>
-        inline T itt_load_word_with_acquire(const tbb::atomic<T>& src) {
-#if TBB_USE_THREADING_TOOLS
-            // This assertion should be replaced with static_assert
-            __TBB_ASSERT(sizeof(T) == sizeof(void *), "Type must be word-sized.");
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER)
-            // Workaround for overzealous compiler warnings 
-            #pragma warning (push)
-            #pragma warning (disable: 4311)
-#endif
-            T result = (T)itt_load_pointer_with_acquire_v3(&src);
-#if defined(_MSC_VER) && !defined(__INTEL_COMPILER)
-            #pragma warning (pop)
-#endif
-            return result;
-#else
-            return src;
-#endif // TBB_USE_THREADING_TOOLS
-        }
-
-        template <typename T>
-        inline void itt_store_word_with_release(T& dst, T src) {
-#if TBB_USE_THREADING_TOOLS
-            // This assertion should be replaced with static_assert
-            __TBB_ASSERT(sizeof(T) == sizeof(void *), "Type must be word-sized.");
-            itt_store_pointer_with_release_v3(&dst, (void *)src);
-#else
-            __TBB_store_with_release(dst, src); 
-#endif // TBB_USE_THREADING_TOOLS
-        }
-
-        template <typename T>
-        inline T itt_load_word_with_acquire(const T& src) {
-#if TBB_USE_THREADING_TOOLS
-            // This assertion should be replaced with static_assert
-            __TBB_ASSERT(sizeof(T) == sizeof(void *), "Type must be word-sized");
-            return (T)itt_load_pointer_with_acquire_v3(&src);
-#else
-            return __TBB_load_with_acquire(src);
-#endif // TBB_USE_THREADING_TOOLS
-        }
-        
-        template <typename T>
-        inline void itt_hide_store_word(T& dst, T src) {
-#if TBB_USE_THREADING_TOOLS
-            // This assertion should be replaced with static_assert
-            __TBB_ASSERT(sizeof(T) == sizeof(void *), "Type must be word-sized");
-            itt_store_pointer_with_release_v3(&dst, (void *)src);
-#else
-            dst = src;
-#endif
-        }
-
-        template <typename T>
-        inline T itt_hide_load_word(const T& src) {
-#if TBB_USE_THREADING_TOOLS
-            // This assertion should be replaced with static_assert
-            __TBB_ASSERT(sizeof(T) == sizeof(void *), "Type must be word-sized.");
-            return (T)itt_load_pointer_v3(&src);
-#else
-            return src;
-#endif
-        }
-
-#if TBB_USE_THREADING_TOOLS
-        inline void call_itt_notify(notify_type t, void *ptr) {
-            call_itt_notify_v5((int)t, ptr);
-        }
-#else
-        inline void call_itt_notify(notify_type /*t*/, void * /*ptr*/) {}
-#endif // TBB_USE_THREADING_TOOLS
-
-    } // namespace internal
-} // namespace tbb
-
-#endif /* __TBB_profiling_H */
diff --git a/dependencies64/tbb/include/tbb/tbb_stddef.h b/dependencies64/tbb/include/tbb/tbb_stddef.h
deleted file mode 100644 (file)
index 7b25555..0000000
+++ /dev/null
@@ -1,365 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_tbb_stddef_H
-#define __TBB_tbb_stddef_H
-
-// Marketing-driven product version
-#define TBB_VERSION_MAJOR 4
-#define TBB_VERSION_MINOR 0
-
-// Engineering-focused interface version
-#define TBB_INTERFACE_VERSION 6000
-#define TBB_INTERFACE_VERSION_MAJOR TBB_INTERFACE_VERSION/1000
-
-// The oldest major interface version still supported
-// To be used in SONAME, manifests, etc.
-#define TBB_COMPATIBLE_INTERFACE_VERSION 2
-
-#define __TBB_STRING_AUX(x) #x
-#define __TBB_STRING(x) __TBB_STRING_AUX(x)
-
-// We do not need defines below for resource processing on windows
-#if !defined RC_INVOKED
-
-// Define groups for Doxygen documentation
-/**
- * @defgroup algorithms         Algorithms
- * @defgroup containers         Containers
- * @defgroup memory_allocation  Memory Allocation
- * @defgroup synchronization    Synchronization
- * @defgroup timing             Timing
- * @defgroup task_scheduling    Task Scheduling
- */
-
-// Simple text that is displayed on the main page of Doxygen documentation.
-/**
- * \mainpage Main Page
- *
- * Click the tabs above for information about the
- * - <a href="./modules.html">Modules</a> (groups of functionality) implemented by the library 
- * - <a href="./annotated.html">Classes</a> provided by the library
- * - <a href="./files.html">Files</a> constituting the library.
- * .
- * Please note that significant part of TBB functionality is implemented in the form of
- * template functions, descriptions of which are not accessible on the <a href="./annotated.html">Classes</a>
- * tab. Use <a href="./modules.html">Modules</a> or <a href="./namespacemembers.html">Namespace/Namespace Members</a>
- * tabs to find them.
- *
- * Additional pieces of information can be found here
- * - \subpage concepts
- * .
- */
-
-/** \page concepts TBB concepts
-    
-    A concept is a set of requirements to a type, which are necessary and sufficient
-    for the type to model a particular behavior or a set of behaviors. Some concepts 
-    are specific to a particular algorithm (e.g. algorithm body), while other ones 
-    are common to several algorithms (e.g. range concept). 
-
-    All TBB algorithms make use of different classes implementing various concepts.
-    Implementation classes are supplied by the user as type arguments of template 
-    parameters and/or as objects passed as function call arguments. The library 
-    provides predefined  implementations of some concepts (e.g. several kinds of 
-    \ref range_req "ranges"), while other ones must always be implemented by the user. 
-    
-    TBB defines a set of minimal requirements each concept must conform to. Here is 
-    the list of different concepts hyperlinked to the corresponding requirements specifications:
-    - \subpage range_req
-    - \subpage parallel_do_body_req
-    - \subpage parallel_for_body_req
-    - \subpage parallel_reduce_body_req
-    - \subpage parallel_scan_body_req
-    - \subpage parallel_sort_iter_req
-**/
-
-// Define preprocessor symbols used to determine architecture
-#if _WIN32||_WIN64
-#   if defined(_M_X64)||defined(__x86_64__)  // the latter for MinGW support
-#       define __TBB_x86_64 1
-#   elif defined(_M_IA64)
-#       define __TBB_ipf 1
-#   elif defined(_M_IX86)||defined(__i386__) // the latter for MinGW support
-#       define __TBB_x86_32 1
-#   endif
-#else /* Assume generic Unix */
-#   if !__linux__ && !__APPLE__
-#       define __TBB_generic_os 1
-#   endif
-#   if __x86_64__
-#       define __TBB_x86_64 1
-#   elif __ia64__
-#       define __TBB_ipf 1
-#   elif __i386__||__i386  // __i386 is for Sun OS
-#       define __TBB_x86_32 1
-#   else
-#       define __TBB_generic_arch 1
-#   endif
-#endif
-
-// tbb_config.h should be included the first since it contains macro definitions used in other headers
-#include "tbb_config.h"
-
-#if _MSC_VER >=1400
-    #define __TBB_EXPORTED_FUNC   __cdecl
-    #define __TBB_EXPORTED_METHOD __thiscall
-#else
-    #define __TBB_EXPORTED_FUNC
-    #define __TBB_EXPORTED_METHOD
-#endif
-
-#include <cstddef>      /* Need size_t and ptrdiff_t */
-
-#if _MSC_VER
-    #define __TBB_tbb_windef_H
-    #include "internal/_tbb_windef.h"
-    #undef __TBB_tbb_windef_H
-#else
-    #include <stdint.h>
-#endif
-
-//! The namespace tbb contains all components of the library.
-namespace tbb {
-
-#if _MSC_VER
-    namespace internal {
-        typedef __int8 int8_t;
-        typedef __int16 int16_t;
-        typedef __int32 int32_t;
-        typedef __int64 int64_t;
-        typedef unsigned __int8 uint8_t;
-        typedef unsigned __int16 uint16_t;
-        typedef unsigned __int32 uint32_t;
-        typedef unsigned __int64 uint64_t;
-    } // namespace internal
-#else /* Posix */
-    namespace internal {
-        using ::int8_t;
-        using ::int16_t;
-        using ::int32_t;
-        using ::int64_t;
-        using ::uint8_t;
-        using ::uint16_t;
-        using ::uint32_t;
-        using ::uint64_t;
-    } // namespace internal
-#endif /* Posix */
-
-    using std::size_t;
-    using std::ptrdiff_t;
-
-    //! Type for an assertion handler
-    typedef void(*assertion_handler_type)( const char* filename, int line, const char* expression, const char * comment );
-
-#if TBB_USE_ASSERT
-
-    //! Assert that x is true.
-    /** If x is false, print assertion failure message.  
-        If the comment argument is not NULL, it is printed as part of the failure message.  
-        The comment argument has no other effect. */
-    #define __TBB_ASSERT(predicate,message) ((predicate)?((void)0):tbb::assertion_failure(__FILE__,__LINE__,#predicate,message))
-    #define __TBB_ASSERT_EX __TBB_ASSERT
-
-    //! Set assertion handler and return previous value of it.
-    assertion_handler_type __TBB_EXPORTED_FUNC set_assertion_handler( assertion_handler_type new_handler );
-
-    //! Process an assertion failure.
-    /** Normally called from __TBB_ASSERT macro.
-        If assertion handler is null, print message for assertion failure and abort.
-        Otherwise call the assertion handler. */
-    void __TBB_EXPORTED_FUNC assertion_failure( const char* filename, int line, const char* expression, const char* comment );
-
-#else /* !TBB_USE_ASSERT */
-
-    //! No-op version of __TBB_ASSERT.
-    #define __TBB_ASSERT(predicate,comment) ((void)0)
-    //! "Extended" version is useful to suppress warnings if a variable is only used with an assert
-    #define __TBB_ASSERT_EX(predicate,comment) ((void)(1 && (predicate)))
-
-#endif /* !TBB_USE_ASSERT */
-
-//! The function returns the interface version of the TBB shared library being used.
-/**
- * The version it returns is determined at runtime, not at compile/link time.
- * So it can be different than the value of TBB_INTERFACE_VERSION obtained at compile time.
- */
-extern "C" int __TBB_EXPORTED_FUNC TBB_runtime_interface_version();
-
-//! Dummy type that distinguishes splitting constructor from copy constructor.
-/**
- * See description of parallel_for and parallel_reduce for example usages.
- * @ingroup algorithms
- */
-class split {
-};
-
-/**
- * @cond INTERNAL
- * @brief Identifiers declared inside namespace internal should never be used directly by client code.
- */
-namespace internal {
-
-//! Compile-time constant that is upper bound on cache line/sector size.
-/** It should be used only in situations where having a compile-time upper 
-    bound is more useful than a run-time exact answer.
-    @ingroup memory_allocation */
-const size_t NFS_MaxLineSize = 128;
-
-/** Label for data that may be accessed from different threads, and that may eventually become wrapped
-    in a formal atomic type.
-    
-    Note that no problems have yet been observed relating to the definition currently being empty,
-    even if at least "volatile" would seem to be in order to avoid data sometimes temporarily hiding
-    in a register (although "volatile" as a "poor man's atomic" lacks several other features of a proper
-    atomic, some of which are now provided instead through specialized functions).
-
-    Note that usage is intentionally compatible with a definition as qualifier "volatile",
-    both as a way to have the compiler help enforce use of the label and to quickly rule out
-    one potential issue.
-
-    Note however that, with some architecture/compiler combinations, e.g. on Itanium, "volatile" 
-    also has non-portable memory semantics that are needlessly expensive for "relaxed" operations.
-
-    Note that this must only be applied to data that will not change bit patterns when cast to/from
-    an integral type of the same length; tbb::atomic must be used instead for, e.g., floating-point types.
-
-    TODO: apply wherever relevant **/
-#define __TBB_atomic // intentionally empty, see above
-
-template<class T, int S>
-struct padded_base : T {
-    char pad[NFS_MaxLineSize - sizeof(T) % NFS_MaxLineSize];
-};
-template<class T> struct padded_base<T, 0> : T {};
-
-//! Pads type T to fill out to a multiple of cache line size.
-template<class T>
-struct padded : padded_base<T, sizeof(T)> {};
-
-//! Extended variant of the standard offsetof macro
-/** The standard offsetof macro is not sufficient for TBB as it can be used for
-    POD-types only. The constant 0x1000 (not NULL) is necessary to appease GCC. **/
-#define __TBB_offsetof(class_name, member_name) \
-    ((ptrdiff_t)&(reinterpret_cast<class_name*>(0x1000)->member_name) - 0x1000)
-
-//! Returns address of the object containing a member with the given name and address
-#define __TBB_get_object_ref(class_name, member_name, member_addr) \
-    (*reinterpret_cast<class_name*>((char*)member_addr - __TBB_offsetof(class_name, member_name)))
-
-//! Throws std::runtime_error with what() returning error_code description prefixed with aux_info
-void __TBB_EXPORTED_FUNC handle_perror( int error_code, const char* aux_info );
-
-#if TBB_USE_EXCEPTIONS
-    #define __TBB_TRY try
-    #define __TBB_CATCH(e) catch(e)
-    #define __TBB_THROW(e) throw e
-    #define __TBB_RETHROW() throw
-#else /* !TBB_USE_EXCEPTIONS */
-    inline bool __TBB_false() { return false; }
-    #define __TBB_TRY
-    #define __TBB_CATCH(e) if ( tbb::internal::__TBB_false() )
-    #define __TBB_THROW(e) ((void)0)
-    #define __TBB_RETHROW() ((void)0)
-#endif /* !TBB_USE_EXCEPTIONS */
-
-//! Report a runtime warning.
-void __TBB_EXPORTED_FUNC runtime_warning( const char* format, ... );
-
-#if TBB_USE_ASSERT
-static void* const poisoned_ptr = reinterpret_cast<void*>(-1);
-
-//! Set p to invalid pointer value.
-template<typename T>
-inline void poison_pointer( T*& p ) { p = reinterpret_cast<T*>(poisoned_ptr); }
-
-/** Expected to be used in assertions only, thus no empty form is defined. **/
-template<typename T>
-inline bool is_poisoned( T* p ) { return p == reinterpret_cast<T*>(poisoned_ptr); }
-#else
-template<typename T>
-inline void poison_pointer( T* ) {/*do nothing*/}
-#endif /* !TBB_USE_ASSERT */
-
-//! Cast pointer from U* to T.
-/** This method should be used sparingly as a last resort for dealing with 
-    situations that inherently break strict ISO C++ aliasing rules. */
-template<typename T, typename U> 
-inline T punned_cast( U* ptr ) {
-    uintptr_t x = reinterpret_cast<uintptr_t>(ptr);
-    return reinterpret_cast<T>(x);
-}
-
-//! Base class for types that should not be assigned.
-class no_assign {
-    // Deny assignment
-    void operator=( const no_assign& );
-public:
-#if __GNUC__
-    //! Explicitly define default construction, because otherwise gcc issues gratuitous warning.
-    no_assign() {}
-#endif /* __GNUC__ */
-};
-
-//! Base class for types that should not be copied or assigned.
-class no_copy: no_assign {
-    //! Deny copy construction
-    no_copy( const no_copy& );
-public:
-    //! Allow default construction
-    no_copy() {}
-};
-
-//! Class for determining type of std::allocator<T>::value_type.
-template<typename T>
-struct allocator_type {
-    typedef T value_type;
-};
-
-#if _MSC_VER
-//! Microsoft std::allocator has non-standard extension that strips const from a type. 
-template<typename T>
-struct allocator_type<const T> {
-    typedef T value_type;
-};
-#endif
-
-// Struct to be used as a version tag for inline functions.
-/** Version tag can be necessary to prevent loader on Linux from using the wrong 
-    symbol in debug builds (when inline functions are compiled as out-of-line). **/
-struct version_tag_v3 {};
-
-typedef version_tag_v3 version_tag;
-
-} // internal
-//! @endcond
-
-} // tbb
-
-#endif /* RC_INVOKED */
-#endif /* __TBB_tbb_stddef_H */
diff --git a/dependencies64/tbb/include/tbb/tbb_thread.h b/dependencies64/tbb/include/tbb/tbb_thread.h
deleted file mode 100644 (file)
index 5e71132..0000000
+++ /dev/null
@@ -1,302 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_tbb_thread_H
-#define __TBB_tbb_thread_H
-
-#if _WIN32||_WIN64
-#include "machine/windows_api.h"
-#define __TBB_NATIVE_THREAD_ROUTINE unsigned WINAPI
-#define __TBB_NATIVE_THREAD_ROUTINE_PTR(r) unsigned (WINAPI* r)( void* )
-#else
-#define __TBB_NATIVE_THREAD_ROUTINE void*
-#define __TBB_NATIVE_THREAD_ROUTINE_PTR(r) void* (*r)( void* )
-#include <pthread.h>
-#endif // _WIN32||_WIN64
-
-#include "tbb_stddef.h"
-#include "tick_count.h"
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    // Suppress "C++ exception handler used, but unwind semantics are not enabled" warning in STL headers
-    #pragma warning (push)
-    #pragma warning (disable: 4530)
-#endif
-
-#include <iosfwd>
-
-#if !TBB_USE_EXCEPTIONS && _MSC_VER
-    #pragma warning (pop)
-#endif
-
-namespace tbb {
-
-//! @cond INTERNAL
-namespace internal {
-    
-    class tbb_thread_v3;
-
-} // namespace internal
-
-inline void swap( internal::tbb_thread_v3& t1, internal::tbb_thread_v3& t2 ); 
-
-namespace internal {
-
-    //! Allocate a closure
-    void* __TBB_EXPORTED_FUNC allocate_closure_v3( size_t size );
-    //! Free a closure allocated by allocate_closure_v3
-    void __TBB_EXPORTED_FUNC free_closure_v3( void* );
-   
-    struct thread_closure_base {
-        void* operator new( size_t size ) {return allocate_closure_v3(size);}
-        void operator delete( void* ptr ) {free_closure_v3(ptr);}
-    };
-
-    template<class F> struct thread_closure_0: thread_closure_base {
-        F function;
-
-        static __TBB_NATIVE_THREAD_ROUTINE start_routine( void* c ) {
-            thread_closure_0 *self = static_cast<thread_closure_0*>(c);
-            self->function();
-            delete self;
-            return 0;
-        }
-        thread_closure_0( const F& f ) : function(f) {}
-    };
-    //! Structure used to pass user function with 1 argument to thread.  
-    template<class F, class X> struct thread_closure_1: thread_closure_base {
-        F function;
-        X arg1;
-        //! Routine passed to Windows's _beginthreadex by thread::internal_start() inside tbb.dll
-        static __TBB_NATIVE_THREAD_ROUTINE start_routine( void* c ) {
-            thread_closure_1 *self = static_cast<thread_closure_1*>(c);
-            self->function(self->arg1);
-            delete self;
-            return 0;
-        }
-        thread_closure_1( const F& f, const X& x ) : function(f), arg1(x) {}
-    };
-    template<class F, class X, class Y> struct thread_closure_2: thread_closure_base {
-        F function;
-        X arg1;
-        Y arg2;
-        //! Routine passed to Windows's _beginthreadex by thread::internal_start() inside tbb.dll
-        static __TBB_NATIVE_THREAD_ROUTINE start_routine( void* c ) {
-            thread_closure_2 *self = static_cast<thread_closure_2*>(c);
-            self->function(self->arg1, self->arg2);
-            delete self;
-            return 0;
-        }
-        thread_closure_2( const F& f, const X& x, const Y& y ) : function(f), arg1(x), arg2(y) {}
-    };
-
-    //! Versioned thread class.
-    class tbb_thread_v3 {
-        tbb_thread_v3(const tbb_thread_v3&); // = delete;   // Deny access
-    public:
-#if _WIN32||_WIN64
-        typedef HANDLE native_handle_type; 
-#else
-        typedef pthread_t native_handle_type; 
-#endif // _WIN32||_WIN64
-
-        class id;
-        //! Constructs a thread object that does not represent a thread of execution. 
-        tbb_thread_v3() : my_handle(0)
-#if _WIN32||_WIN64
-            , my_thread_id(0)
-#endif // _WIN32||_WIN64
-        {}
-        
-        //! Constructs an object and executes f() in a new thread
-        template <class F> explicit tbb_thread_v3(F f) {
-            typedef internal::thread_closure_0<F> closure_type;
-            internal_start(closure_type::start_routine, new closure_type(f));
-        }
-        //! Constructs an object and executes f(x) in a new thread
-        template <class F, class X> tbb_thread_v3(F f, X x) {
-            typedef internal::thread_closure_1<F,X> closure_type;
-            internal_start(closure_type::start_routine, new closure_type(f,x));
-        }
-        //! Constructs an object and executes f(x,y) in a new thread
-        template <class F, class X, class Y> tbb_thread_v3(F f, X x, Y y) {
-            typedef internal::thread_closure_2<F,X,Y> closure_type;
-            internal_start(closure_type::start_routine, new closure_type(f,x,y));
-        }
-
-        tbb_thread_v3& operator=(tbb_thread_v3& x) {
-            if (joinable()) detach();
-            my_handle = x.my_handle;
-            x.my_handle = 0;
-#if _WIN32||_WIN64
-            my_thread_id = x.my_thread_id;
-            x.my_thread_id = 0;
-#endif // _WIN32||_WIN64
-            return *this;
-        }
-        void swap( tbb_thread_v3& t ) {tbb::swap( *this, t );}
-        bool joinable() const {return my_handle!=0; }
-        //! The completion of the thread represented by *this happens before join() returns.
-        void __TBB_EXPORTED_METHOD join();
-        //! When detach() returns, *this no longer represents the possibly continuing thread of execution.
-        void __TBB_EXPORTED_METHOD detach();
-        ~tbb_thread_v3() {if( joinable() ) detach();}
-        inline id get_id() const;
-        native_handle_type native_handle() { return my_handle; }
-    
-        //! The number of hardware thread contexts.
-        /** Before TBB 3.0 U4 this methods returned the number of logical CPU in
-            the system. Currently on Windows, Linux and FreeBSD it returns the
-            number of logical CPUs available to the current process in accordance
-            with its affinity mask.
-            
-            NOTE: The return value of this method never changes after its first
-            invocation. This means that changes in the process affinity mask that
-            took place after this method was first invoked will not affect the
-            number of worker threads in the TBB worker threads pool. **/
-        static unsigned __TBB_EXPORTED_FUNC hardware_concurrency();
-    private:
-        native_handle_type my_handle; 
-#if _WIN32||_WIN64
-        DWORD my_thread_id;
-#endif // _WIN32||_WIN64
-
-        /** Runs start_routine(closure) on another thread and sets my_handle to the handle of the created thread. */
-        void __TBB_EXPORTED_METHOD internal_start( __TBB_NATIVE_THREAD_ROUTINE_PTR(start_routine), 
-                             void* closure );
-        friend void __TBB_EXPORTED_FUNC move_v3( tbb_thread_v3& t1, tbb_thread_v3& t2 );
-        friend void tbb::swap( tbb_thread_v3& t1, tbb_thread_v3& t2 ); 
-    };
-        
-    class tbb_thread_v3::id { 
-#if _WIN32||_WIN64
-        DWORD my_id;
-        id( DWORD id_ ) : my_id(id_) {}
-#else
-        pthread_t my_id;
-        id( pthread_t id_ ) : my_id(id_) {}
-#endif // _WIN32||_WIN64
-        friend class tbb_thread_v3;
-    public:
-        id() : my_id(0) {}
-
-        friend bool operator==( tbb_thread_v3::id x, tbb_thread_v3::id y );
-        friend bool operator!=( tbb_thread_v3::id x, tbb_thread_v3::id y );
-        friend bool operator<( tbb_thread_v3::id x, tbb_thread_v3::id y );
-        friend bool operator<=( tbb_thread_v3::id x, tbb_thread_v3::id y );
-        friend bool operator>( tbb_thread_v3::id x, tbb_thread_v3::id y );
-        friend bool operator>=( tbb_thread_v3::id x, tbb_thread_v3::id y );
-        
-        template<class charT, class traits>
-        friend std::basic_ostream<charT, traits>&
-        operator<< (std::basic_ostream<charT, traits> &out, 
-                    tbb_thread_v3::id id)
-        {
-            out << id.my_id;
-            return out;
-        }
-        friend tbb_thread_v3::id __TBB_EXPORTED_FUNC thread_get_id_v3();
-    }; // tbb_thread_v3::id
-
-    tbb_thread_v3::id tbb_thread_v3::get_id() const {
-#if _WIN32||_WIN64
-        return id(my_thread_id);
-#else
-        return id(my_handle);
-#endif // _WIN32||_WIN64
-    }
-    void __TBB_EXPORTED_FUNC move_v3( tbb_thread_v3& t1, tbb_thread_v3& t2 );
-    tbb_thread_v3::id __TBB_EXPORTED_FUNC thread_get_id_v3();
-    void __TBB_EXPORTED_FUNC thread_yield_v3();
-    void __TBB_EXPORTED_FUNC thread_sleep_v3(const tick_count::interval_t &i);
-
-    inline bool operator==(tbb_thread_v3::id x, tbb_thread_v3::id y)
-    {
-        return x.my_id == y.my_id;
-    }
-    inline bool operator!=(tbb_thread_v3::id x, tbb_thread_v3::id y)
-    {
-        return x.my_id != y.my_id;
-    }
-    inline bool operator<(tbb_thread_v3::id x, tbb_thread_v3::id y)
-    {
-        return x.my_id < y.my_id;
-    }
-    inline bool operator<=(tbb_thread_v3::id x, tbb_thread_v3::id y)
-    {
-        return x.my_id <= y.my_id;
-    }
-    inline bool operator>(tbb_thread_v3::id x, tbb_thread_v3::id y)
-    {
-        return x.my_id > y.my_id;
-    }
-    inline bool operator>=(tbb_thread_v3::id x, tbb_thread_v3::id y)
-    {
-        return x.my_id >= y.my_id;
-    }
-
-} // namespace internal;
-
-//! Users reference thread class by name tbb_thread
-typedef internal::tbb_thread_v3 tbb_thread;
-
-using internal::operator==;
-using internal::operator!=;
-using internal::operator<;
-using internal::operator>;
-using internal::operator<=;
-using internal::operator>=;
-
-inline void move( tbb_thread& t1, tbb_thread& t2 ) {
-    internal::move_v3(t1, t2);
-}
-
-inline void swap( internal::tbb_thread_v3& t1, internal::tbb_thread_v3& t2 ) {
-    tbb::tbb_thread::native_handle_type h = t1.my_handle;
-    t1.my_handle = t2.my_handle;
-    t2.my_handle = h;
-#if _WIN32||_WIN64
-    DWORD i = t1.my_thread_id;
-    t1.my_thread_id = t2.my_thread_id;
-    t2.my_thread_id = i;
-#endif /* _WIN32||_WIN64 */
-}
-
-namespace this_tbb_thread {
-    inline tbb_thread::id get_id() { return internal::thread_get_id_v3(); }
-    //! Offers the operating system the opportunity to schedule another thread.
-    inline void yield() { internal::thread_yield_v3(); }
-    //! The current thread blocks at least until the time specified.
-    inline void sleep(const tick_count::interval_t &i) { 
-        internal::thread_sleep_v3(i);  
-    }
-}  // namespace this_tbb_thread
-
-} // namespace tbb
-
-#endif /* __TBB_tbb_thread_H */
diff --git a/dependencies64/tbb/include/tbb/tbbmalloc_proxy.h b/dependencies64/tbb/include/tbb/tbbmalloc_proxy.h
deleted file mode 100644 (file)
index f0f0ed7..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-/*
-Replacing the standard memory allocation routines in Microsoft* C/C++ RTL 
-(malloc/free, global new/delete, etc.) with the TBB memory allocator. 
-
-Include the following header to a source of any binary which is loaded during 
-application startup
-
-#include "tbb/tbbmalloc_proxy.h"
-
-or add following parameters to the linker options for the binary which is 
-loaded during application startup. It can be either exe-file or dll.
-
-For win32
-tbbmalloc_proxy.lib /INCLUDE:"___TBB_malloc_proxy"
-win64
-tbbmalloc_proxy.lib /INCLUDE:"__TBB_malloc_proxy"
-*/
-
-#ifndef __TBB_tbbmalloc_proxy_H
-#define __TBB_tbbmalloc_proxy_H
-
-#if _MSC_VER
-
-#ifdef _DEBUG
-    #pragma comment(lib, "tbbmalloc_proxy_debug.lib")
-#else
-    #pragma comment(lib, "tbbmalloc_proxy.lib")
-#endif
-
-#if defined(_WIN64)
-    #pragma comment(linker, "/include:__TBB_malloc_proxy")
-#else
-    #pragma comment(linker, "/include:___TBB_malloc_proxy")
-#endif
-
-#else
-/* Primarily to support MinGW */
-
-extern "C" void __TBB_malloc_proxy();
-struct __TBB_malloc_proxy_caller {
-    __TBB_malloc_proxy_caller() { __TBB_malloc_proxy(); }
-} volatile __TBB_malloc_proxy_helper_object;
-
-#endif // _MSC_VER
-
-#endif //__TBB_tbbmalloc_proxy_H
diff --git a/dependencies64/tbb/include/tbb/tick_count.h b/dependencies64/tbb/include/tbb/tick_count.h
deleted file mode 100644 (file)
index 394afb0..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
-    Copyright 2005-2011 Intel Corporation.  All Rights Reserved.
-
-    This file is part of Threading Building Blocks.
-
-    Threading Building Blocks is free software; you can redistribute it
-    and/or modify it under the terms of the GNU General Public License
-    version 2 as published by the Free Software Foundation.
-
-    Threading Building Blocks is distributed in the hope that it will be
-    useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-    of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with Threading Building Blocks; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-    As a special exception, you may use this file as part of a free software
-    library without restriction.  Specifically, if other files instantiate
-    templates or use macros or inline functions from this file, or you compile
-    this file and link it with other files to produce an executable, this
-    file does not by itself cause the resulting executable to be covered by
-    the GNU General Public License.  This exception does not however
-    invalidate any other reasons why the executable file might be covered by
-    the GNU General Public License.
-*/
-
-#ifndef __TBB_tick_count_H
-#define __TBB_tick_count_H
-
-#include "tbb_stddef.h"
-
-#if _WIN32||_WIN64
-#include "machine/windows_api.h"
-#elif __linux__
-#include <ctime>
-#else /* generic Unix */
-#include <sys/time.h>
-#endif /* (choice of OS) */
-
-namespace tbb {
-
-//! Absolute timestamp
-/** @ingroup timing */
-class tick_count {
-public:
-    //! Relative time interval.
-    class interval_t {
-        long long value;
-        explicit interval_t( long long value_ ) : value(value_) {}
-    public:
-        //! Construct a time interval representing zero time duration
-        interval_t() : value(0) {};
-
-        //! Construct a time interval representing sec seconds time  duration
-        explicit interval_t( double sec );
-
-        //! Return the length of a time interval in seconds
-        double seconds() const;
-
-        friend class tbb::tick_count;
-
-        //! Extract the intervals from the tick_counts and subtract them.
-        friend interval_t operator-( const tick_count& t1, const tick_count& t0 );
-
-        //! Add two intervals.
-        friend interval_t operator+( const interval_t& i, const interval_t& j ) {
-            return interval_t(i.value+j.value);
-        }
-
-        //! Subtract two intervals.
-        friend interval_t operator-( const interval_t& i, const interval_t& j ) {
-            return interval_t(i.value-j.value);
-        }
-
-        //! Accumulation operator
-        interval_t& operator+=( const interval_t& i ) {value += i.value; return *this;}
-
-        //! Subtraction operator
-        interval_t& operator-=( const interval_t& i ) {value -= i.value; return *this;}
-    };
-    
-    //! Construct an absolute timestamp initialized to zero.
-    tick_count() : my_count(0) {};
-
-    //! Return current time.
-    static tick_count now();
-    
-    //! Subtract two timestamps to get the time interval between
-    friend interval_t operator-( const tick_count& t1, const tick_count& t0 );
-
-private:
-    long long my_count;
-};
-
-inline tick_count tick_count::now() {
-    tick_count result;
-#if _WIN32||_WIN64
-    LARGE_INTEGER qpcnt;
-    QueryPerformanceCounter(&qpcnt);
-    result.my_count = qpcnt.QuadPart;
-#elif __linux__
-    struct timespec ts;
-#if TBB_USE_ASSERT
-    int status = 
-#endif /* TBB_USE_ASSERT */
-        clock_gettime( CLOCK_REALTIME, &ts );
-    __TBB_ASSERT( status==0, "CLOCK_REALTIME not supported" );
-    result.my_count = static_cast<long long>(1000000000UL)*static_cast<long long>(ts.tv_sec) + static_cast<long long>(ts.tv_nsec);
-#else /* generic Unix */
-    struct timeval tv;
-#if TBB_USE_ASSERT
-    int status = 
-#endif /* TBB_USE_ASSERT */
-        gettimeofday(&tv, NULL);
-    __TBB_ASSERT( status==0, "gettimeofday failed" );
-    result.my_count = static_cast<long long>(1000000)*static_cast<long long>(tv.tv_sec) + static_cast<long long>(tv.tv_usec);
-#endif /*(choice of OS) */
-    return result;
-}
-
-inline tick_count::interval_t::interval_t( double sec )
-{
-#if _WIN32||_WIN64
-    LARGE_INTEGER qpfreq;
-    QueryPerformanceFrequency(&qpfreq);
-    value = static_cast<long long>(sec*qpfreq.QuadPart);
-#elif __linux__
-    value = static_cast<long long>(sec*1E9);
-#else /* generic Unix */
-    value = static_cast<long long>(sec*1E6);
-#endif /* (choice of OS) */
-}
-
-inline tick_count::interval_t operator-( const tick_count& t1, const tick_count& t0 ) {
-    return tick_count::interval_t( t1.my_count-t0.my_count );
-}
-
-inline double tick_count::interval_t::seconds() const {
-#if _WIN32||_WIN64
-    LARGE_INTEGER qpfreq;
-    QueryPerformanceFrequency(&qpfreq);
-    return value/(double)qpfreq.QuadPart;
-#elif __linux__
-    return value*1E-9;
-#else /* generic Unix */
-    return value*1E-6;
-#endif /* (choice of OS) */
-}
-
-} // namespace tbb
-
-#endif /* __TBB_tick_count_H */
-
diff --git a/dependencies64/tbb/lib/irml/irml.lib b/dependencies64/tbb/lib/irml/irml.lib
deleted file mode 100644 (file)
index a11de1d..0000000
Binary files a/dependencies64/tbb/lib/irml/irml.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/irml/irml_debug.lib b/dependencies64/tbb/lib/irml/irml_debug.lib
deleted file mode 100644 (file)
index b729189..0000000
Binary files a/dependencies64/tbb/lib/irml/irml_debug.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/irml_c/irml.lib b/dependencies64/tbb/lib/irml_c/irml.lib
deleted file mode 100644 (file)
index 1442f63..0000000
Binary files a/dependencies64/tbb/lib/irml_c/irml.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/irml_c/irml_debug.lib b/dependencies64/tbb/lib/irml_c/irml_debug.lib
deleted file mode 100644 (file)
index 12ddcd8..0000000
Binary files a/dependencies64/tbb/lib/irml_c/irml_debug.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbb.def b/dependencies64/tbb/lib/tbb.def
deleted file mode 100644 (file)
index 1d9eb29..0000000
+++ /dev/null
@@ -1,578 +0,0 @@
-\r
-; Copyright 2005-2011 Intel Corporation.  All Rights Reserved.\r
-;\r
-; The source code contained or described herein and all documents related\r
-; to the source code ("Material") are owned by Intel Corporation or its\r
-; suppliers or licensors.  Title to the Material remains with Intel\r
-; Corporation or its suppliers and licensors.  The Material is protected\r
-; by worldwide copyright laws and treaty provisions.  No part of the\r
-; Material may be used, copied, reproduced, modified, published, uploaded,\r
-; posted, transmitted, distributed, or disclosed in any way without\r
-; Intel's prior express written permission.\r
-;\r
-; No license under any patent, copyright, trade secret or other\r
-; intellectual property right is granted to or conferred upon you by\r
-; disclosure or delivery of the Materials, either expressly, by\r
-; implication, inducement, estoppel or otherwise.  Any license under such\r
-; intellectual property rights must be express and approved by Intel in\r
-; writing.\r
-;\r
-; This file is organized with a section for each .cpp file.\r
-; Each of these sections is in alphabetical order.\r
-\r
-EXPORTS\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-    \r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-    \r
-\r
-\r
-\r
-    \r
-    \r
-\r
-\r
-        \r
-    \r
-\r
-\r
-\r
-    \r
-        \r
-    \r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-    \r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-    \r
-\r
-\r
-\r
-    \r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-    \r
-\r
-\r
-\r
-    \r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-    \r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r
-    \r
-\r
-    \r
-\r
-\r
-\r
-\r
-\r
-\r
-__TBB_machine_cmpswp1\r
-__TBB_machine_fetchadd1\r
-__TBB_machine_fetchstore1\r
-__TBB_machine_cmpswp2\r
-__TBB_machine_fetchadd2\r
-__TBB_machine_fetchstore2\r
-__TBB_machine_pause\r
-\r
-\r
-?NFS_Allocate@internal@tbb@@YAPEAX_K0PEAX@Z\r
-?NFS_GetLineSize@internal@tbb@@YA_KXZ\r
-?NFS_Free@internal@tbb@@YAXPEAX@Z\r
-?allocate_via_handler_v3@internal@tbb@@YAPEAX_K@Z\r
-?deallocate_via_handler_v3@internal@tbb@@YAXPEAX@Z\r
-?is_malloc_used_v3@internal@tbb@@YA_NXZ\r
-\r
-\r
-\r
-?resize@affinity_partitioner_base_v3@internal@tbb@@AEAAXI@Z\r
-?allocate@allocate_additional_child_of_proxy@internal@tbb@@QEBAAEAVtask@3@_K@Z\r
-?allocate@allocate_child_proxy@internal@tbb@@QEBAAEAVtask@3@_K@Z\r
-?allocate@allocate_continuation_proxy@internal@tbb@@QEBAAEAVtask@3@_K@Z\r
-?allocate@allocate_root_proxy@internal@tbb@@SAAEAVtask@3@_K@Z\r
-?destroy@task_base@internal@interface5@tbb@@SAXAEAVtask@4@@Z\r
-?free@allocate_additional_child_of_proxy@internal@tbb@@QEBAXAEAVtask@3@@Z\r
-?free@allocate_child_proxy@internal@tbb@@QEBAXAEAVtask@3@@Z\r
-?free@allocate_continuation_proxy@internal@tbb@@QEBAXAEAVtask@3@@Z\r
-?free@allocate_root_proxy@internal@tbb@@SAXAEAVtask@3@@Z\r
-?internal_set_ref_count@task@tbb@@AEAAXH@Z\r
-?internal_decrement_ref_count@task@tbb@@AEAA_JXZ\r
-?is_owned_by_current_thread@task@tbb@@QEBA_NXZ\r
-?note_affinity@task@tbb@@UEAAXG@Z\r
-?self@task@tbb@@SAAEAV12@XZ\r
-?spawn_and_wait_for_all@task@tbb@@QEAAXAEAVtask_list@2@@Z\r
-?default_num_threads@task_scheduler_init@tbb@@SAHXZ\r
-?initialize@task_scheduler_init@tbb@@QEAAXH_K@Z\r
-?initialize@task_scheduler_init@tbb@@QEAAXH@Z\r
-?terminate@task_scheduler_init@tbb@@QEAAXXZ\r
-?observe@task_scheduler_observer_v3@internal@tbb@@QEAAX_N@Z\r
-\r
-\r
-\r
-?destroy@task@tbb@@QEAAXAEAV12@@Z\r
-\r
-\r
-\r
-\r
-?allocate@allocate_root_with_context_proxy@internal@tbb@@QEBAAEAVtask@3@_K@Z\r
-?free@allocate_root_with_context_proxy@internal@tbb@@QEBAXAEAVtask@3@@Z\r
-?change_group@task@tbb@@QEAAXAEAVtask_group_context@2@@Z\r
-?is_group_execution_cancelled@task_group_context@tbb@@QEBA_NXZ\r
-?cancel_group_execution@task_group_context@tbb@@QEAA_NXZ\r
-?reset@task_group_context@tbb@@QEAAXXZ\r
-?init@task_group_context@tbb@@IEAAXXZ\r
-?register_pending_exception@task_group_context@tbb@@QEAAXXZ\r
-??1task_group_context@tbb@@QEAA@XZ\r
-\r
-?set_priority@task_group_context@tbb@@QEAAXW4priority_t@2@@Z\r
-?priority@task_group_context@tbb@@QEBA?AW4priority_t@2@XZ\r
-\r
-?name@captured_exception@tbb@@UEBAPEBDXZ\r
-?what@captured_exception@tbb@@UEBAPEBDXZ\r
-??1captured_exception@tbb@@UEAA@XZ\r
-?move@captured_exception@tbb@@UEAAPEAV12@XZ\r
-?destroy@captured_exception@tbb@@UEAAXXZ\r
-?set@captured_exception@tbb@@QEAAXPEBD0@Z\r
-?clear@captured_exception@tbb@@QEAAXXZ\r
-\r
-\r
-\r
-?throw_bad_last_alloc_exception_v4@internal@tbb@@YAXXZ\r
-?throw_exception_v4@internal@tbb@@YAXW4exception_id@12@@Z\r
-?what@bad_last_alloc@tbb@@UEBAPEBDXZ\r
-?what@missing_wait@tbb@@UEBAPEBDXZ\r
-?what@invalid_multiple_scheduling@tbb@@UEBAPEBDXZ\r
-?what@improper_lock@tbb@@UEBAPEBDXZ\r
-\r
-\r
-?assertion_failure@tbb@@YAXPEBDH00@Z\r
-?get_initial_auto_partitioner_divisor@internal@tbb@@YA_KXZ\r
-?handle_perror@internal@tbb@@YAXHPEBD@Z\r
-?set_assertion_handler@tbb@@YAP6AXPEBDH00@ZP6AX0H00@Z@Z\r
-?runtime_warning@internal@tbb@@YAXPEBDZZ\r
-TBB_runtime_interface_version\r
-\r
-\r
-?itt_load_pointer_with_acquire_v3@internal@tbb@@YAPEAXPEBX@Z\r
-?itt_store_pointer_with_release_v3@internal@tbb@@YAXPEAX0@Z\r
-?call_itt_notify_v5@internal@tbb@@YAXHPEAX@Z\r
-?itt_load_pointer_v3@internal@tbb@@YAPEAXPEBX@Z\r
-?itt_set_sync_name_v3@internal@tbb@@YAXPEAXPEB_W@Z\r
-\r
-\r
-??_7pipeline@tbb@@6B@\r
-??0pipeline@tbb@@QEAA@XZ\r
-??1filter@tbb@@UEAA@XZ\r
-??1pipeline@tbb@@UEAA@XZ\r
-?add_filter@pipeline@tbb@@QEAAXAEAVfilter@2@@Z\r
-?clear@pipeline@tbb@@QEAAXXZ\r
-?inject_token@pipeline@tbb@@AEAAXAEAVtask@2@@Z\r
-?run@pipeline@tbb@@QEAAX_K@Z\r
-\r
-?run@pipeline@tbb@@QEAAX_KAEAVtask_group_context@2@@Z\r
-\r
-?process_item@thread_bound_filter@tbb@@QEAA?AW4result_type@12@XZ\r
-?try_process_item@thread_bound_filter@tbb@@QEAA?AW4result_type@12@XZ\r
-?set_end_of_input@filter@tbb@@IEAAXXZ\r
-\r
-\r
-?internal_construct@queuing_rw_mutex@tbb@@QEAAXXZ\r
-?acquire@scoped_lock@queuing_rw_mutex@tbb@@QEAAXAEAV23@_N@Z\r
-?downgrade_to_reader@scoped_lock@queuing_rw_mutex@tbb@@QEAA_NXZ\r
-?release@scoped_lock@queuing_rw_mutex@tbb@@QEAAXXZ\r
-?upgrade_to_writer@scoped_lock@queuing_rw_mutex@tbb@@QEAA_NXZ\r
-?try_acquire@scoped_lock@queuing_rw_mutex@tbb@@QEAA_NAEAV23@_N@Z\r
-\r
-\r
-?try_lock_read@reader_writer_lock@interface5@tbb@@QEAA_NXZ\r
-?try_lock@reader_writer_lock@interface5@tbb@@QEAA_NXZ\r
-?unlock@reader_writer_lock@interface5@tbb@@QEAAXXZ\r
-?lock_read@reader_writer_lock@interface5@tbb@@QEAAXXZ\r
-?lock@reader_writer_lock@interface5@tbb@@QEAAXXZ\r
-?internal_construct@reader_writer_lock@interface5@tbb@@AEAAXXZ\r
-?internal_destroy@reader_writer_lock@interface5@tbb@@AEAAXXZ\r
-?internal_construct@scoped_lock@reader_writer_lock@interface5@tbb@@AEAAXAEAV234@@Z\r
-?internal_destroy@scoped_lock@reader_writer_lock@interface5@tbb@@AEAAXXZ\r
-?internal_construct@scoped_lock_read@reader_writer_lock@interface5@tbb@@AEAAXAEAV234@@Z\r
-?internal_destroy@scoped_lock_read@reader_writer_lock@interface5@tbb@@AEAAXXZ\r
-\r
-\r
-\r
-?internal_itt_releasing@spin_rw_mutex@tbb@@CAXPEAV12@@Z\r
-?internal_acquire_writer@spin_rw_mutex@tbb@@CA_NPEAV12@@Z\r
-?internal_acquire_reader@spin_rw_mutex@tbb@@CAXPEAV12@@Z\r
-?internal_downgrade@spin_rw_mutex@tbb@@CAXPEAV12@@Z\r
-?internal_upgrade@spin_rw_mutex@tbb@@CA_NPEAV12@@Z\r
-?internal_release_reader@spin_rw_mutex@tbb@@CAXPEAV12@@Z\r
-?internal_release_writer@spin_rw_mutex@tbb@@CAXPEAV12@@Z\r
-?internal_try_acquire_writer@spin_rw_mutex@tbb@@CA_NPEAV12@@Z\r
-?internal_try_acquire_reader@spin_rw_mutex@tbb@@CA_NPEAV12@@Z\r
-\r
-\r
-\r
-?internal_construct@spin_rw_mutex_v3@tbb@@AEAAXXZ\r
-?internal_upgrade@spin_rw_mutex_v3@tbb@@AEAA_NXZ\r
-?internal_downgrade@spin_rw_mutex_v3@tbb@@AEAAXXZ\r
-?internal_acquire_reader@spin_rw_mutex_v3@tbb@@AEAAXXZ\r
-?internal_acquire_writer@spin_rw_mutex_v3@tbb@@AEAA_NXZ\r
-?internal_release_reader@spin_rw_mutex_v3@tbb@@AEAAXXZ\r
-?internal_release_writer@spin_rw_mutex_v3@tbb@@AEAAXXZ\r
-?internal_try_acquire_reader@spin_rw_mutex_v3@tbb@@AEAA_NXZ\r
-?internal_try_acquire_writer@spin_rw_mutex_v3@tbb@@AEAA_NXZ\r
-\r
-\r
-?internal_construct@spin_mutex@tbb@@QEAAXXZ\r
-?internal_acquire@scoped_lock@spin_mutex@tbb@@AEAAXAEAV23@@Z\r
-?internal_release@scoped_lock@spin_mutex@tbb@@AEAAXXZ\r
-?internal_try_acquire@scoped_lock@spin_mutex@tbb@@AEAA_NAEAV23@@Z\r
-\r
-\r
-?internal_acquire@scoped_lock@mutex@tbb@@AEAAXAEAV23@@Z\r
-?internal_release@scoped_lock@mutex@tbb@@AEAAXXZ\r
-?internal_try_acquire@scoped_lock@mutex@tbb@@AEAA_NAEAV23@@Z\r
-?internal_construct@mutex@tbb@@AEAAXXZ\r
-?internal_destroy@mutex@tbb@@AEAAXXZ\r
-\r
-\r
-?internal_construct@recursive_mutex@tbb@@AEAAXXZ\r
-?internal_destroy@recursive_mutex@tbb@@AEAAXXZ\r
-?internal_acquire@scoped_lock@recursive_mutex@tbb@@AEAAXAEAV23@@Z\r
-?internal_try_acquire@scoped_lock@recursive_mutex@tbb@@AEAA_NAEAV23@@Z\r
-?internal_release@scoped_lock@recursive_mutex@tbb@@AEAAXXZ\r
-\r
-\r
-?internal_construct@queuing_mutex@tbb@@QEAAXXZ\r
-?acquire@scoped_lock@queuing_mutex@tbb@@QEAAXAEAV23@@Z\r
-?release@scoped_lock@queuing_mutex@tbb@@QEAAXXZ\r
-?try_acquire@scoped_lock@queuing_mutex@tbb@@QEAA_NAEAV23@@Z\r
-\r
-\r
-?internal_construct@critical_section_v4@internal@tbb@@QEAAXXZ\r
-\r
-\r
-\r
-?internal_grow_predicate@hash_map_segment_base@internal@tbb@@QEBA_NXZ\r
-\r
-\r
-??0concurrent_queue_base@internal@tbb@@IEAA@_K@Z\r
-??0concurrent_queue_iterator_base@internal@tbb@@IEAA@AEBVconcurrent_queue_base@12@@Z\r
-??1concurrent_queue_base@internal@tbb@@MEAA@XZ\r
-??1concurrent_queue_iterator_base@internal@tbb@@IEAA@XZ\r
-?advance@concurrent_queue_iterator_base@internal@tbb@@IEAAXXZ\r
-?assign@concurrent_queue_iterator_base@internal@tbb@@IEAAXAEBV123@@Z\r
-?internal_pop@concurrent_queue_base@internal@tbb@@IEAAXPEAX@Z\r
-?internal_pop_if_present@concurrent_queue_base@internal@tbb@@IEAA_NPEAX@Z\r
-?internal_push@concurrent_queue_base@internal@tbb@@IEAAXPEBX@Z\r
-?internal_push_if_not_full@concurrent_queue_base@internal@tbb@@IEAA_NPEBX@Z\r
-?internal_set_capacity@concurrent_queue_base@internal@tbb@@IEAAX_J_K@Z\r
-?internal_size@concurrent_queue_base@internal@tbb@@IEBA_JXZ\r
-\r
-\r
-\r
-??0concurrent_queue_iterator_base_v3@internal@tbb@@IEAA@AEBVconcurrent_queue_base_v3@12@@Z\r
-??0concurrent_queue_iterator_base_v3@internal@tbb@@IEAA@AEBVconcurrent_queue_base_v3@12@_K@Z\r
-??1concurrent_queue_iterator_base_v3@internal@tbb@@IEAA@XZ\r
-?assign@concurrent_queue_iterator_base_v3@internal@tbb@@IEAAXAEBV123@@Z\r
-?advance@concurrent_queue_iterator_base_v3@internal@tbb@@IEAAXXZ\r
-??0concurrent_queue_base_v3@internal@tbb@@IEAA@_K@Z\r
-??1concurrent_queue_base_v3@internal@tbb@@MEAA@XZ\r
-?internal_push@concurrent_queue_base_v3@internal@tbb@@IEAAXPEBX@Z\r
-?internal_push_if_not_full@concurrent_queue_base_v3@internal@tbb@@IEAA_NPEBX@Z\r
-?internal_pop@concurrent_queue_base_v3@internal@tbb@@IEAAXPEAX@Z\r
-?internal_pop_if_present@concurrent_queue_base_v3@internal@tbb@@IEAA_NPEAX@Z\r
-?internal_size@concurrent_queue_base_v3@internal@tbb@@IEBA_JXZ\r
-?internal_empty@concurrent_queue_base_v3@internal@tbb@@IEBA_NXZ\r
-?internal_finish_clear@concurrent_queue_base_v3@internal@tbb@@IEAAXXZ\r
-?internal_set_capacity@concurrent_queue_base_v3@internal@tbb@@IEAAX_J_K@Z\r
-?internal_throw_exception@concurrent_queue_base_v3@internal@tbb@@IEBAXXZ\r
-?assign@concurrent_queue_base_v3@internal@tbb@@IEAAXAEBV123@@Z\r
-\r
-\r
-\r
-?internal_assign@concurrent_vector_base@internal@tbb@@IEAAXAEBV123@_KP6AXPEAX1@ZP6AX2PEBX1@Z5@Z\r
-?internal_capacity@concurrent_vector_base@internal@tbb@@IEBA_KXZ\r
-?internal_clear@concurrent_vector_base@internal@tbb@@IEAAXP6AXPEAX_K@Z_N@Z\r
-?internal_copy@concurrent_vector_base@internal@tbb@@IEAAXAEBV123@_KP6AXPEAXPEBX1@Z@Z\r
-?internal_grow_by@concurrent_vector_base@internal@tbb@@IEAA_K_K0P6AXPEAX0@Z@Z\r
-?internal_grow_to_at_least@concurrent_vector_base@internal@tbb@@IEAAX_K0P6AXPEAX0@Z@Z\r
-?internal_push_back@concurrent_vector_base@internal@tbb@@IEAAPEAX_KAEA_K@Z\r
-?internal_reserve@concurrent_vector_base@internal@tbb@@IEAAX_K00@Z\r
-\r
-\r
-\r
-??1concurrent_vector_base_v3@internal@tbb@@IEAA@XZ\r
-?internal_assign@concurrent_vector_base_v3@internal@tbb@@IEAAXAEBV123@_KP6AXPEAX1@ZP6AX2PEBX1@Z5@Z\r
-?internal_capacity@concurrent_vector_base_v3@internal@tbb@@IEBA_KXZ\r
-?internal_clear@concurrent_vector_base_v3@internal@tbb@@IEAA_KP6AXPEAX_K@Z@Z\r
-?internal_copy@concurrent_vector_base_v3@internal@tbb@@IEAAXAEBV123@_KP6AXPEAXPEBX1@Z@Z\r
-?internal_grow_by@concurrent_vector_base_v3@internal@tbb@@IEAA_K_K0P6AXPEAXPEBX0@Z2@Z\r
-?internal_grow_to_at_least@concurrent_vector_base_v3@internal@tbb@@IEAAX_K0P6AXPEAXPEBX0@Z2@Z\r
-?internal_push_back@concurrent_vector_base_v3@internal@tbb@@IEAAPEAX_KAEA_K@Z\r
-?internal_reserve@concurrent_vector_base_v3@internal@tbb@@IEAAX_K00@Z\r
-?internal_compact@concurrent_vector_base_v3@internal@tbb@@IEAAPEAX_KPEAXP6AX10@ZP6AX1PEBX0@Z@Z\r
-?internal_swap@concurrent_vector_base_v3@internal@tbb@@IEAAXAEAV123@@Z\r
-?internal_throw_exception@concurrent_vector_base_v3@internal@tbb@@IEBAX_K@Z\r
-?internal_resize@concurrent_vector_base_v3@internal@tbb@@IEAAX_K00PEBXP6AXPEAX0@ZP6AX210@Z@Z\r
-?internal_grow_to_at_least_with_result@concurrent_vector_base_v3@internal@tbb@@IEAA_K_K0P6AXPEAXPEBX0@Z2@Z\r
-\r
-\r
-?allocate_closure_v3@internal@tbb@@YAPEAX_K@Z\r
-?detach@tbb_thread_v3@internal@tbb@@QEAAXXZ\r
-?free_closure_v3@internal@tbb@@YAXPEAX@Z\r
-?hardware_concurrency@tbb_thread_v3@internal@tbb@@SAIXZ\r
-?internal_start@tbb_thread_v3@internal@tbb@@AEAAXP6AIPEAX@Z0@Z\r
-?join@tbb_thread_v3@internal@tbb@@QEAAXXZ\r
-?move_v3@internal@tbb@@YAXAEAVtbb_thread_v3@12@0@Z\r
-?thread_get_id_v3@internal@tbb@@YA?AVid@tbb_thread_v3@12@XZ\r
-?thread_sleep_v3@internal@tbb@@YAXAEBVinterval_t@tick_count@2@@Z\r
-?thread_yield_v3@internal@tbb@@YAXXZ\r
-\r
-\r
-?internal_initialize_condition_variable@internal@interface5@tbb@@YAXAEATcondvar_impl_t@123@@Z\r
-?internal_condition_variable_wait@internal@interface5@tbb@@YA_NAEATcondvar_impl_t@123@PEAVmutex@3@PEBVinterval_t@tick_count@3@@Z\r
-?internal_condition_variable_notify_one@internal@interface5@tbb@@YAXAEATcondvar_impl_t@123@@Z\r
-?internal_condition_variable_notify_all@internal@interface5@tbb@@YAXAEATcondvar_impl_t@123@@Z\r
-?internal_destroy_condition_variable@internal@interface5@tbb@@YAXAEATcondvar_impl_t@123@@Z\r
-\r
-\r
-\r
-\r
diff --git a/dependencies64/tbb/lib/tbb.lib b/dependencies64/tbb/lib/tbb.lib
deleted file mode 100644 (file)
index 4e4333b..0000000
Binary files a/dependencies64/tbb/lib/tbb.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbb_debug.lib b/dependencies64/tbb/lib/tbb_debug.lib
deleted file mode 100644 (file)
index 0ab621b..0000000
Binary files a/dependencies64/tbb/lib/tbb_debug.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbb_preview.lib b/dependencies64/tbb/lib/tbb_preview.lib
deleted file mode 100644 (file)
index 515f064..0000000
Binary files a/dependencies64/tbb/lib/tbb_preview.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbb_preview_debug.lib b/dependencies64/tbb/lib/tbb_preview_debug.lib
deleted file mode 100644 (file)
index 69d0663..0000000
Binary files a/dependencies64/tbb/lib/tbb_preview_debug.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbbmalloc.def b/dependencies64/tbb/lib/tbbmalloc.def
deleted file mode 100644 (file)
index 6697e88..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-\r
-; Copyright 2005-2011 Intel Corporation.  All Rights Reserved.\r
-;\r
-; The source code contained or described herein and all documents related\r
-; to the source code ("Material") are owned by Intel Corporation or its\r
-; suppliers or licensors.  Title to the Material remains with Intel\r
-; Corporation or its suppliers and licensors.  The Material is protected\r
-; by worldwide copyright laws and treaty provisions.  No part of the\r
-; Material may be used, copied, reproduced, modified, published, uploaded,\r
-; posted, transmitted, distributed, or disclosed in any way without\r
-; Intel's prior express written permission.\r
-;\r
-; No license under any patent, copyright, trade secret or other\r
-; intellectual property right is granted to or conferred upon you by\r
-; disclosure or delivery of the Materials, either expressly, by\r
-; implication, inducement, estoppel or otherwise.  Any license under such\r
-; intellectual property rights must be express and approved by Intel in\r
-; writing.\r
-\r
-EXPORTS\r
-\r
-; frontend.cpp\r
-scalable_calloc\r
-scalable_free\r
-scalable_malloc\r
-scalable_realloc\r
-scalable_posix_memalign\r
-scalable_aligned_malloc\r
-scalable_aligned_realloc\r
-scalable_aligned_free\r
-safer_scalable_free\r
-safer_scalable_realloc\r
-scalable_msize\r
-safer_scalable_msize\r
-safer_scalable_aligned_realloc\r
-; memory pool stuff\r
-?pool_create@rml@@YAPEAVMemoryPool@1@_JPEBUMemPoolPolicy@1@@Z\r
-?pool_destroy@rml@@YA_NPEAVMemoryPool@1@@Z\r
-?pool_malloc@rml@@YAPEAXPEAVMemoryPool@1@_K@Z\r
-?pool_free@rml@@YA_NPEAVMemoryPool@1@PEAX@Z\r
-?pool_reset@rml@@YA_NPEAVMemoryPool@1@@Z\r
-?pool_realloc@rml@@YAPEAXPEAVMemoryPool@1@PEAX_K@Z\r
diff --git a/dependencies64/tbb/lib/tbbmalloc.lib b/dependencies64/tbb/lib/tbbmalloc.lib
deleted file mode 100644 (file)
index 3f39af1..0000000
Binary files a/dependencies64/tbb/lib/tbbmalloc.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbbmalloc_debug.lib b/dependencies64/tbb/lib/tbbmalloc_debug.lib
deleted file mode 100644 (file)
index 97243d0..0000000
Binary files a/dependencies64/tbb/lib/tbbmalloc_debug.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbbmalloc_proxy.lib b/dependencies64/tbb/lib/tbbmalloc_proxy.lib
deleted file mode 100644 (file)
index d84b99f..0000000
Binary files a/dependencies64/tbb/lib/tbbmalloc_proxy.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbbmalloc_proxy_debug.lib b/dependencies64/tbb/lib/tbbmalloc_proxy_debug.lib
deleted file mode 100644 (file)
index 1de9d26..0000000
Binary files a/dependencies64/tbb/lib/tbbmalloc_proxy_debug.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbbproxy.lib b/dependencies64/tbb/lib/tbbproxy.lib
deleted file mode 100644 (file)
index e860750..0000000
Binary files a/dependencies64/tbb/lib/tbbproxy.lib and /dev/null differ
diff --git a/dependencies64/tbb/lib/tbbproxy_debug.lib b/dependencies64/tbb/lib/tbbproxy_debug.lib
deleted file mode 100644 (file)
index d222941..0000000
Binary files a/dependencies64/tbb/lib/tbbproxy_debug.lib and /dev/null differ
diff --git a/dlls/FreeImage.dll b/dlls/FreeImage.dll
deleted file mode 100644 (file)
index d6fbf5d..0000000
Binary files a/dlls/FreeImage.dll and /dev/null differ
diff --git a/dlls/libsndfile-1.dll b/dlls/libsndfile-1.dll
deleted file mode 100644 (file)
index f112de2..0000000
Binary files a/dlls/libsndfile-1.dll and /dev/null differ
diff --git a/dlls/openal32.dll b/dlls/openal32.dll
deleted file mode 100644 (file)
index 28eb8e5..0000000
Binary files a/dlls/openal32.dll and /dev/null differ
diff --git a/dlls/sfml-audio-d.dll b/dlls/sfml-audio-d.dll
deleted file mode 100644 (file)
index 3d6b4f7..0000000
Binary files a/dlls/sfml-audio-d.dll and /dev/null differ
diff --git a/dlls/sfml-audio.dll b/dlls/sfml-audio.dll
deleted file mode 100644 (file)
index f4ab81b..0000000
Binary files a/dlls/sfml-audio.dll and /dev/null differ
diff --git a/dlls/sfml-graphics-d.dll b/dlls/sfml-graphics-d.dll
deleted file mode 100644 (file)
index 1f93bc6..0000000
Binary files a/dlls/sfml-graphics-d.dll and /dev/null differ
diff --git a/dlls/sfml-graphics.dll b/dlls/sfml-graphics.dll
deleted file mode 100644 (file)
index c73dba6..0000000
Binary files a/dlls/sfml-graphics.dll and /dev/null differ
diff --git a/dlls/sfml-system-d.dll b/dlls/sfml-system-d.dll
deleted file mode 100644 (file)
index b3f4d8e..0000000
Binary files a/dlls/sfml-system-d.dll and /dev/null differ
diff --git a/dlls/sfml-system.dll b/dlls/sfml-system.dll
deleted file mode 100644 (file)
index 56fbf8e..0000000
Binary files a/dlls/sfml-system.dll and /dev/null differ
diff --git a/dlls/sfml-window-d.dll b/dlls/sfml-window-d.dll
deleted file mode 100644 (file)
index b6def82..0000000
Binary files a/dlls/sfml-window-d.dll and /dev/null differ
diff --git a/dlls/sfml-window.dll b/dlls/sfml-window.dll
deleted file mode 100644 (file)
index 28ea7cf..0000000
Binary files a/dlls/sfml-window.dll and /dev/null differ
index d77addc50ea82a750adddae1d0dca05d84f2e75b..1dbf148cb64be5cf5c643aba3f059e2b1a1361fa 100644 (file)
@@ -4,7 +4,7 @@
 \r
 \r
  /* File created by MIDL compiler version 7.00.0555 */\r
-/* at Fri Dec 09 17:56:45 2011\r
+/* at Sat Dec 10 02:04:37 2011\r
  */\r
 /* Compiler settings for interop\DeckLinkAPI.idl:\r
     Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555 \r
index 495b15e6ca9cdad4e02d1d4997dfacfc90f7a78d..428f9a7f83f6aaf37a94d7fa0f17afcc71186022 100644 (file)
@@ -6,7 +6,7 @@
 \r
 \r
  /* File created by MIDL compiler version 7.00.0555 */\r
-/* at Fri Dec 09 17:56:45 2011\r
+/* at Sat Dec 10 02:04:37 2011\r
  */\r
 /* Compiler settings for interop\DeckLinkAPI.idl:\r
     Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555 \r
index dbc64c70b1aae917e4110bbd1cc9e4fe0fe7a1b7..5239119706a3d39915863912b10aa6fed87c5daf 100644 (file)
@@ -36,11 +36,21 @@ namespace caspar { namespace image {
 \r
 void init()\r
 {\r
+       FreeImage_Initialise();\r
        core::register_producer_factory(create_scroll_producer);\r
        core::register_producer_factory(create_producer);\r
        core::register_consumer_factory([](const std::vector<std::wstring>& params){return create_consumer(params);});\r
 }\r
 \r
+void uninit()\r
+{\r
+       FreeImage_DeInitialise();\r
+       core::register_producer_factory(create_scroll_producer);\r
+       core::register_producer_factory(create_producer);\r
+       core::register_consumer_factory([](const std::vector<std::wstring>& params){return create_consumer(params);});\r
+}\r
+\r
+\r
 std::wstring get_version()\r
 {\r
        return u16(FreeImage_GetVersion());\r
index 512afff49717284c8132bcd066f6a2b426836d42..4cd24d15b40da2cc12e5c78db30a39b6ff6b4a9c 100644 (file)
@@ -26,6 +26,7 @@
 namespace caspar { namespace image {\r
 \r
 void init();\r
+void uninit();\r
 \r
 std::wstring get_version();\r
 \r
index 2f1562732c3a3b1556ac951a87f8182bf68601f3..9d924c499e1d7b40ac71a394e85ee08989cc3a15 100644 (file)
       <BrowseInformation>true</BrowseInformation>\r
       <WarningLevel>Level4</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <PreprocessorDefinitions>TBB_USE_DEBUG;_SCL_SECURE_NO_WARNINGS;TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <PreprocessorDefinitions>TBB_USE_DEBUG;_SCL_SECURE_NO_WARNINGS;TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;_DEBUG;FREEIMAGE_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <TreatWarningAsError>true</TreatWarningAsError>\r
       <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
       <FloatingPointModel>Fast</FloatingPointModel>\r
index a21ec916696a23439c05177554d7d769857f4795..c5ef9539cd0a2937baa1abf800149e0b79cf2e3d 100644 (file)
@@ -94,18 +94,18 @@ struct image_producer : public core::frame_producer
 \r
 safe_ptr<core::frame_producer> create_producer(const safe_ptr<core::frame_factory>& frame_factory, const std::vector<std::wstring>& params)\r
 {\r
-       static const std::vector<std::wstring> extensions = list_of(L"png")(L"tga")(L"bmp")(L"jpg")(L"jpeg")(L"gif")(L"tiff")(L"tif")(L"jp2")(L"jpx")(L"j2k")(L"j2c");\r
+       static const std::vector<std::wstring> extensions = list_of(L".png")(L".tga")(L".bmp")(L".jpg")(L".jpeg")(L".gif")(L".tiff")(L".tif")(L".jp2")(L".jpx")(L".j2k")(L".j2c");\r
        std::wstring filename = env::media_folder() + L"\\" + params[0];\r
        \r
        auto ext = std::find_if(extensions.begin(), extensions.end(), [&](const std::wstring& ex) -> bool\r
-               {                                       \r
-                       return boost::filesystem::is_regular_file(boost::filesystem::wpath(filename).replace_extension(ex));\r
+               {                       \r
+                       return boost::filesystem::is_regular_file(boost::filesystem::path(filename).replace_extension(ex));\r
                });\r
 \r
        if(ext == extensions.end())\r
                return core::frame_producer::empty();\r
 \r
-       return make_safe<image_producer>(frame_factory, filename + L"." + *ext);\r
+       return make_safe<image_producer>(frame_factory, filename + *ext);\r
 }\r
 \r
 \r
index 82408cdb3be590a7d8511882c1de19ce035bfbac..61fb8843d5675199eec61153da8433330043506e 100644 (file)
 \r
 namespace caspar { namespace image {\r
 \r
-std::shared_ptr<FIBITMAP> load_image(const std::string& filename)\r
+std::shared_ptr<FIBITMAP> load_image(const std::wstring& filename)\r
 {\r
        if(!boost::filesystem::exists(filename))\r
-               BOOST_THROW_EXCEPTION(file_not_found() << boost::errinfo_file_name(filename));\r
+               BOOST_THROW_EXCEPTION(file_not_found() << boost::errinfo_file_name(u8(filename)));\r
 \r
-       FREE_IMAGE_FORMAT fif = FIF_UNKNOWN;\r
-       fif = FreeImage_GetFileType(filename.c_str(), 0);\r
-       if(fif == FIF_UNKNOWN) \r
-               fif = FreeImage_GetFIFFromFilename(filename.c_str());\r
-               \r
+       FREE_IMAGE_FORMAT fif = FreeImage_GetFileTypeU(filename.c_str(), 0);            \r
        if(fif == FIF_UNKNOWN || !FreeImage_FIFSupportsReading(fif)) \r
                BOOST_THROW_EXCEPTION(invalid_argument() << msg_info("Unsupported image format."));\r
                \r
-       auto bitmap = std::shared_ptr<FIBITMAP>(FreeImage_Load(fif, filename.c_str(), 0), FreeImage_Unload);\r
+       auto bitmap = std::shared_ptr<FIBITMAP>(FreeImage_LoadU(fif, filename.c_str(), 0), FreeImage_Unload);\r
                  \r
        if(FreeImage_GetBPP(bitmap.get()) != 32)\r
        {\r
@@ -57,10 +53,4 @@ std::shared_ptr<FIBITMAP> load_image(const std::string& filename)
        \r
        return bitmap;\r
 }\r
-\r
-std::shared_ptr<FIBITMAP> load_image(const std::wstring& filename)\r
-{\r
-       return load_image(u8(filename));\r
-}\r
-\r
 }}
\ No newline at end of file
index face6479cb8435ed1998aaa21d2f04a399979455..5922058bc1bb4367983c803f1fa235478427d396 100644 (file)
@@ -28,7 +28,6 @@
 \r
 namespace caspar { namespace image {\r
 \r
-std::shared_ptr<FIBITMAP> load_image(const std::string& filename);\r
 std::shared_ptr<FIBITMAP> load_image(const std::wstring& filename);\r
 \r
 }}\r
index dbb22e31481226bd3ade2f48b5bf93e904587bc5..f158b9aca4ae241e9e03323232ffc8957080af30 100644 (file)
@@ -33,7 +33,7 @@
 \r
 #include <core/mixer/read_frame.h>\r
 \r
-#include <SFML/Audio.hpp>\r
+#include <SFML/Audio/SoundStream.hpp>\r
 \r
 #include <boost/circular_buffer.hpp>\r
 #include <boost/property_tree/ptree.hpp>\r
index 2c0f05866bbb0a8ac5772e343e2afd7f266a10d7..c1676f525f361f17c23f6ff1f3ee5420d3a51054 100644 (file)
       <ExceptionHandling>Async</ExceptionHandling>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
       <SmallerTypeCheck>false</SmallerTypeCheck>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>\r
       <RuntimeTypeInfo>true</RuntimeTypeInfo>\r
       <PrecompiledHeader>Use</PrecompiledHeader>\r
index 8e0e64cad163025dcf08a9ff1f498f7b3f409f4a..92123b19c9eb06e1547bfc60b0856fb60586ea16 100644 (file)
@@ -81,7 +81,7 @@ enum stretch
 struct configuration\r
 {\r
        std::wstring    name;\r
-       size_t                  screen_index;\r
+       int                     screen_index;\r
        stretch                 stretch;\r
        bool                    windowed;\r
        bool                    auto_deinterlace;\r
@@ -113,8 +113,8 @@ struct ogl_consumer : boost::noncopyable
        unsigned int                    screen_y_;\r
        unsigned int                    screen_width_;\r
        unsigned int                    screen_height_;\r
-       size_t                                  square_width_;\r
-       size_t                                  square_height_;                         \r
+       int                                     square_width_;\r
+       int                                     square_height_;                         \r
        \r
        sf::Window                              window_;\r
        \r
@@ -188,6 +188,10 @@ public:
                window_.SetPosition(screen_x_, screen_y_);\r
                window_.SetSize(screen_width_, screen_height_);\r
                window_.SetActive();\r
+\r
+               auto error = GetLastError();\r
+               error;\r
+\r
                GL(glEnable(GL_TEXTURE_2D));\r
                GL(glDisable(GL_DEPTH_TEST));           \r
                GL(glClearColor(0.0, 0.0, 0.0, 0.0));\r
@@ -238,7 +242,6 @@ public:
                        {                       \r
                                try\r
                                {\r
-\r
                                        sf::Event e;            \r
                                        while(window_.GetEvent(e))\r
                                        {\r
@@ -292,7 +295,7 @@ public:
 \r
        void render(const safe_ptr<core::read_frame>& frame)\r
        {                       \r
-               if(static_cast<size_t>(frame->image_data().size()) != format_desc_.size)\r
+               if(static_cast<int>(frame->image_data().size()) != format_desc_.size)\r
                        return;\r
                                        \r
                auto av_frame = get_av_frame();\r
@@ -481,7 +484,7 @@ public:
                return false;\r
        }\r
        \r
-       virtual size_t buffer_depth() const override\r
+       virtual int buffer_depth() const override\r
        {\r
                return 1;\r
        }\r
index b9e33c624a4614e36a8bd06a5682b934e80ef769..47fcb770b15871aedd3234bf9f3a911686d268d4 100644 (file)
@@ -1,6 +1,14 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
 <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
+    <ProjectConfiguration Include="Debug|x64">\r
+      <Configuration>Debug</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+    <ProjectConfiguration Include="Develop|x64">\r
+      <Configuration>Develop</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Profile|Win32">\r
       <Configuration>Profile</Configuration>\r
       <Platform>Win32</Platform>\r
       <Configuration>Develop</Configuration>\r
       <Platform>Win32</Platform>\r
     </ProjectConfiguration>\r
+    <ProjectConfiguration Include="Profile|x64">\r
+      <Configuration>Profile</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Release|Win32">\r
       <Configuration>Release</Configuration>\r
       <Platform>Win32</Platform>\r
     </ProjectConfiguration>\r
+    <ProjectConfiguration Include="Release|x64">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
   </ItemGroup>\r
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{88F974F0-D09F-4788-8CF8-F563209E60C1}</ProjectGuid>\r
     <CharacterSet>Unicode</CharacterSet>\r
     <WholeProgramOptimization>false</WholeProgramOptimization>\r
   </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <WholeProgramOptimization>false</WholeProgramOptimization>\r
+  </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
     <WholeProgramOptimization>false</WholeProgramOptimization>\r
   </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Profile|x64'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <WholeProgramOptimization>false</WholeProgramOptimization>\r
+  </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
     <WholeProgramOptimization>false</WholeProgramOptimization>\r
   </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Develop|x64'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <WholeProgramOptimization>false</WholeProgramOptimization>\r
+  </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
     <UseIntelTBB>true</UseIntelTBB>\r
     <InstrumentIntelTBB>false</InstrumentIntelTBB>\r
   </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <UseIntelTBB>true</UseIntelTBB>\r
+    <InstrumentIntelTBB>false</InstrumentIntelTBB>\r
+  </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
   </ImportGroup>\r
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
     <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />\r
   </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />\r
+  </ImportGroup>\r
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'" Label="PropertySheets">\r
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
     <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />\r
   </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Profile|x64'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />\r
+  </ImportGroup>\r
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'" Label="PropertySheets">\r
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
     <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />\r
   </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Develop|x64'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />\r
+  </ImportGroup>\r
   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
     <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />\r
   </ImportGroup>\r
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC71.props" />\r
+  </ImportGroup>\r
   <PropertyGroup Label="UserMacros" />\r
   <PropertyGroup>\r
     <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)tmp\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)tmp\$(Configuration)\</IntDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)tmp\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)tmp\$(Configuration)\</IntDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'">$(ProjectDir)tmp\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">$(ProjectDir)tmp\$(Configuration)\</IntDir>\r
     <IntDir Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'">$(ProjectDir)tmp\$(Configuration)\</IntDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Develop|x64'">$(ProjectDir)tmp\$(Configuration)\</IntDir>\r
     <IncludePath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\;..\..\dependencies\boost\;..\..\dependencies\glew-1.6.0\include;..\..\dependencies\tbb\include\;..\..\dependencies\SFML-1.6\include;..\..\dependencies\ffmpeg 0.8\include;$(IncludePath)</IncludePath>\r
+    <IncludePath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\;..\..\dependencies64\boost\;..\..\dependencies64\glew\include;..\..\dependencies64\tbb\include\;..\..\dependencies64\sfml\include;..\..\dependencies64\ffmpeg\include;$(IncludePath)</IncludePath>\r
     <IncludePath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\;..\..\dependencies\boost\;..\..\dependencies\glew-1.6.0\include;..\..\dependencies\tbb\include\;..\..\dependencies\SFML-1.6\include;..\..\dependencies\ffmpeg 0.8\include;$(IncludePath)</IncludePath>\r
+    <IncludePath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\;..\..\dependencies\boost\;..\..\dependencies\glew-1.6.0\include;..\..\dependencies\tbb\include\;..\..\dependencies\SFML-1.6\include;..\..\dependencies\ffmpeg 0.8\include;$(IncludePath)</IncludePath>\r
     <IncludePath Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'">..\..\;..\..\dependencies\boost\;..\..\dependencies\glew-1.6.0\include;..\..\dependencies\tbb\include\;..\..\dependencies\SFML-1.6\include;..\..\dependencies\ffmpeg 0.8\include;$(IncludePath)</IncludePath>\r
+    <IncludePath Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">..\..\;..\..\dependencies\boost\;..\..\dependencies\glew-1.6.0\include;..\..\dependencies\tbb\include\;..\..\dependencies\SFML-1.6\include;..\..\dependencies\ffmpeg 0.8\include;$(IncludePath)</IncludePath>\r
     <IncludePath Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'">..\..\;..\..\dependencies\boost\;..\..\dependencies\glew-1.6.0\include;..\..\dependencies\tbb\include\;..\..\dependencies\SFML-1.6\include;..\..\dependencies\ffmpeg 0.8\include;$(IncludePath)</IncludePath>\r
+    <IncludePath Condition="'$(Configuration)|$(Platform)'=='Develop|x64'">..\..\;..\..\dependencies\boost\;..\..\dependencies\glew-1.6.0\include;..\..\dependencies\tbb\include\;..\..\dependencies\SFML-1.6\include;..\..\dependencies\ffmpeg 0.8\include;$(IncludePath)</IncludePath>\r
     <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\dependencies\boost\stage\lib\;..\..\dependencies\ffmpeg 0.8\lib\;..\..\dependencies\tbb\lib\ia32\vc10\;$(LibraryPath)</LibraryPath>\r
+    <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\dependencies\boost\stage\lib\;..\..\dependencies\ffmpeg 0.8\lib\;..\..\dependencies\tbb\lib\ia32\vc10\;$(LibraryPath)</LibraryPath>\r
     <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\dependencies\boost\stage\lib\;..\..\dependencies\ffmpeg 0.8\lib\;..\..\dependencies\tbb\lib\ia32\vc10\;$(LibraryPath)</LibraryPath>\r
+    <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\dependencies\boost\stage\lib\;..\..\dependencies\ffmpeg 0.8\lib\;..\..\dependencies\tbb\lib\ia32\vc10\;$(LibraryPath)</LibraryPath>\r
     <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'">..\..\dependencies\boost\stage\lib\;..\..\dependencies\ffmpeg 0.8\lib\;..\..\dependencies\tbb\lib\ia32\vc10\;$(LibraryPath)</LibraryPath>\r
+    <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">..\..\dependencies\boost\stage\lib\;..\..\dependencies\ffmpeg 0.8\lib\;..\..\dependencies\tbb\lib\ia32\vc10\;$(LibraryPath)</LibraryPath>\r
     <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'">..\..\dependencies\boost\stage\lib\;..\..\dependencies\ffmpeg 0.8\lib\;..\..\dependencies\tbb\lib\ia32\vc10\;$(LibraryPath)</LibraryPath>\r
+    <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Develop|x64'">..\..\dependencies\boost\stage\lib\;..\..\dependencies\ffmpeg 0.8\lib\;..\..\dependencies\tbb\lib\ia32\vc10\;$(LibraryPath)</LibraryPath>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)bin\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)bin\$(Configuration)\</OutDir>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)bin\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)bin\$(Configuration)\</OutDir>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'">$(ProjectDir)bin\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">$(ProjectDir)bin\$(Configuration)\</OutDir>\r
     <OutDir Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'">$(ProjectDir)bin\$(Configuration)\</OutDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Develop|x64'">$(ProjectDir)bin\$(Configuration)\</OutDir>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectName)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectName)</TargetName>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectName)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectName)</TargetName>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'">$(ProjectName)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">$(ProjectName)</TargetName>\r
     <TargetName Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'">$(ProjectName)</TargetName>\r
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Develop|x64'">$(ProjectName)</TargetName>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <PreBuildEvent>\r
     </PostBuildEvent>\r
     <Lib />\r
   </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <Optimization>Disabled</Optimization>\r
+      <AdditionalIncludeDirectories>../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <MinimalRebuild>false</MinimalRebuild>\r
+      <ExceptionHandling>Async</ExceptionHandling>\r
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
+      <SmallerTypeCheck>false</SmallerTypeCheck>\r
+      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
+      <EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>\r
+      <RuntimeTypeInfo>true</RuntimeTypeInfo>\r
+      <PrecompiledHeader>Use</PrecompiledHeader>\r
+      <BrowseInformation>true</BrowseInformation>\r
+      <WarningLevel>Level4</WarningLevel>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <PreprocessorDefinitions>TBB_USE_DEBUG;_SCL_SECURE_NO_WARNINGS;TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <TreatWarningAsError>true</TreatWarningAsError>\r
+      <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
+      <FloatingPointModel>Fast</FloatingPointModel>\r
+      <ForcedIncludeFiles>common/compiler/vs/disable_silly_warnings.h</ForcedIncludeFiles>\r
+    </ClCompile>\r
+    <PostBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PostBuildEvent>\r
+    <Lib />\r
+  </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <PreBuildEvent>\r
       <Command>\r
       <LinkTimeCodeGeneration>true</LinkTimeCodeGeneration>\r
     </Lib>\r
   </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>\r
+      <AdditionalIncludeDirectories>../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <ExceptionHandling>Async</ExceptionHandling>\r
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>\r
+      <RuntimeTypeInfo>true</RuntimeTypeInfo>\r
+      <PrecompiledHeader>Use</PrecompiledHeader>\r
+      <WarningLevel>Level4</WarningLevel>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
+      <PreprocessorDefinitions>_SCL_SECURE_NO_WARNINGS;TBB_USE_CAPTURED_EXCEPTION=0;NDEBUG;_VC80_UPGRADE=0x0710;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <WholeProgramOptimization>true</WholeProgramOptimization>\r
+      <TreatWarningAsError>true</TreatWarningAsError>\r
+      <OmitFramePointers>true</OmitFramePointers>\r
+      <FloatingPointModel>Fast</FloatingPointModel>\r
+      <ForcedIncludeFiles>common/compiler/vs/disable_silly_warnings.h</ForcedIncludeFiles>\r
+    </ClCompile>\r
+    <PreLinkEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreLinkEvent>\r
+    <Link>\r
+      <AdditionalDependencies>sfml-window.lib;sfml-graphics.lib;OpenGL32.lib;tbb.lib;Glee.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <Version>\r
+      </Version>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <IgnoreSpecificDefaultLibraries>LIBC.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>\r
+      <GenerateDebugInformation>true</GenerateDebugInformation>\r
+      <GenerateMapFile>true</GenerateMapFile>\r
+      <MapExports>true</MapExports>\r
+      <SubSystem>Console</SubSystem>\r
+      <OptimizeReferences>\r
+      </OptimizeReferences>\r
+      <EnableCOMDATFolding>\r
+      </EnableCOMDATFolding>\r
+      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
+      <FixedBaseAddress>false</FixedBaseAddress>\r
+      <DataExecutionPrevention>\r
+      </DataExecutionPrevention>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PostBuildEvent>\r
+    <Lib>\r
+      <LinkTimeCodeGeneration>true</LinkTimeCodeGeneration>\r
+    </Lib>\r
+  </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'">\r
     <PreBuildEvent>\r
       <Command>\r
     </PostBuildEvent>\r
     <Lib />\r
   </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>\r
+      <AdditionalIncludeDirectories>../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <ExceptionHandling>Async</ExceptionHandling>\r
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>\r
+      <RuntimeTypeInfo>true</RuntimeTypeInfo>\r
+      <PrecompiledHeader>Use</PrecompiledHeader>\r
+      <WarningLevel>Level4</WarningLevel>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
+      <PreprocessorDefinitions>_SCL_SECURE_NO_WARNINGS;TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_THREADING_TOOLS=1;NDEBUG;_VC80_UPGRADE=0x0710;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <WholeProgramOptimization>false</WholeProgramOptimization>\r
+      <TreatWarningAsError>true</TreatWarningAsError>\r
+      <OmitFramePointers>true</OmitFramePointers>\r
+      <FloatingPointModel>Fast</FloatingPointModel>\r
+      <ForcedIncludeFiles>common/compiler/vs/disable_silly_warnings.h</ForcedIncludeFiles>\r
+    </ClCompile>\r
+    <PostBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PostBuildEvent>\r
+    <Lib />\r
+  </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'">\r
     <PreBuildEvent>\r
       <Command>\r
     </PostBuildEvent>\r
     <Lib />\r
   </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Develop|x64'">\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+    <ClCompile>\r
+      <Optimization>Disabled</Optimization>\r
+      <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>\r
+      <AdditionalIncludeDirectories>../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <ExceptionHandling>Async</ExceptionHandling>\r
+      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>\r
+      <RuntimeTypeInfo>true</RuntimeTypeInfo>\r
+      <PrecompiledHeader>Use</PrecompiledHeader>\r
+      <WarningLevel>Level4</WarningLevel>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
+      <MultiProcessorCompilation>true</MultiProcessorCompilation>\r
+      <PreprocessorDefinitions>_SCL_SECURE_NO_WARNINGS;TBB_USE_CAPTURED_EXCEPTION=0;TBB_USE_ASSERT=1;TBB_USE_PERFORMANCE_WARNINGS=1;_VC80_UPGRADE=0x0710;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <WholeProgramOptimization>false</WholeProgramOptimization>\r
+      <TreatWarningAsError>true</TreatWarningAsError>\r
+      <OmitFramePointers>true</OmitFramePointers>\r
+      <FloatingPointModel>Fast</FloatingPointModel>\r
+      <ForcedIncludeFiles>common/compiler/vs/disable_silly_warnings.h</ForcedIncludeFiles>\r
+    </ClCompile>\r
+    <PostBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PostBuildEvent>\r
+    <Lib />\r
+  </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="..\..\common\common.vcxproj">\r
       <Project>{02308602-7fe0-4253-b96e-22134919f56a}</Project>\r
   <ItemGroup>\r
     <ClCompile Include="consumer\ogl_consumer.cpp">\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'">NotUsing</PrecompiledHeader>\r
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">NotUsing</PrecompiledHeader>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">NotUsing</PrecompiledHeader>\r
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">NotUsing</PrecompiledHeader>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'">NotUsing</PrecompiledHeader>\r
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Develop|x64'">NotUsing</PrecompiledHeader>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">NotUsing</PrecompiledHeader>\r
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">NotUsing</PrecompiledHeader>\r
     </ClCompile>\r
     <ClCompile Include="ogl.cpp">\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'">NotUsing</PrecompiledHeader>\r
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">NotUsing</PrecompiledHeader>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">NotUsing</PrecompiledHeader>\r
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">NotUsing</PrecompiledHeader>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'">NotUsing</PrecompiledHeader>\r
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Develop|x64'">NotUsing</PrecompiledHeader>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">NotUsing</PrecompiledHeader>\r
+      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">NotUsing</PrecompiledHeader>\r
     </ClCompile>\r
   </ItemGroup>\r
   <ItemGroup>\r
index e2ffb23eb95c84bad2dab6500589a60d8828f329..add48c49f2ecadc8d0e50ffecf860f3d8ce5cc36 100644 (file)
 #include <modules/decklink/decklink.h>\r
 #include <modules/ffmpeg/ffmpeg.h>\r
 #include <modules/flash/flash.h>\r
-//#include <modules/oal/oal.h>\r
-//#include <modules/ogl/ogl.h>\r
-//#include <modules/image/image.h>\r
-//\r
-//#include <modules/oal/consumer/oal_consumer.h>\r
+#include <modules/oal/oal.h>\r
+#include <modules/ogl/ogl.h>\r
+#include <modules/image/image.h>\r
+\r
+#include <modules/oal/consumer/oal_consumer.h>\r
 #include <modules/bluefish/consumer/bluefish_consumer.h>\r
 #include <modules/decklink/consumer/decklink_consumer.h>\r
-//#include <modules/ogl/consumer/ogl_consumer.h>\r
+#include <modules/ogl/consumer/ogl_consumer.h>\r
 #include <modules/ffmpeg/consumer/ffmpeg_consumer.h>\r
 \r
 #include <protocol/amcp/AMCPProtocolStrategy.h>\r
@@ -80,14 +80,14 @@ struct server::implementation : boost::noncopyable
                decklink::init();         \r
                CASPAR_LOG(info) << L"Initialized decklink module.";\r
                                                                                                                  \r
-               //oal::init();            \r
-               //CASPAR_LOG(info) << L"Initialized oal module.";\r
-               //                                        \r
-               //ogl::init();            \r
-               //CASPAR_LOG(info) << L"Initialized ogl module.";\r
+               oal::init();              \r
+               CASPAR_LOG(info) << L"Initialized oal module.";\r
+                                                         \r
+               ogl::init();              \r
+               CASPAR_LOG(info) << L"Initialized ogl module.";\r
 \r
-               //image::init();                  \r
-               //CASPAR_LOG(info) << L"Initialized image module.";\r
+               image::init();            \r
+               CASPAR_LOG(info) << L"Initialized image module.";\r
 \r
                flash::init();            \r
                CASPAR_LOG(info) << L"Initialized flash module.";\r
@@ -101,6 +101,7 @@ struct server::implementation : boost::noncopyable
 \r
        ~implementation()\r
        {               \r
+               image::uninit();\r
                ffmpeg::uninit();\r
 \r
                async_servers_.clear();\r
@@ -123,16 +124,16 @@ struct server::implementation : boost::noncopyable
                                try\r
                                {\r
                                        auto name = xml_consumer.first;\r
-                       //              if(name == L"screen")\r
-                       //                      channels_.back()->output()->add(ogl::create_consumer(xml_consumer.second));                                     \r
+                                       if(name == L"screen")\r
+                                               channels_.back()->output()->add(ogl::create_consumer(xml_consumer.second));                                     \r
                                        if(name == L"bluefish")                                 \r
                                                channels_.back()->output()->add(bluefish::create_consumer(xml_consumer.second));                                        \r
                                        else if(name == L"decklink")                                    \r
                                                channels_.back()->output()->add(decklink::create_consumer(xml_consumer.second));                                \r
                                        else if(name == L"file")                                        \r
                                                channels_.back()->output()->add(ffmpeg::create_consumer(xml_consumer.second));                                          \r
-                       //              else if(name == L"system-audio")\r
-                       //                      channels_.back()->output()->add(oal::create_consumer());                \r
+                                       else if(name == L"system-audio")\r
+                                               channels_.back()->output()->add(oal::create_consumer());                \r
                                        else if(name != L"<xmlcomment>")\r
                                                CASPAR_LOG(warning) << "Invalid consumer: " << name;    \r
                                }\r
index 27e8f4a62d139cfe2a5b83ec2e869455dc225aa9..f71766346b4e0d5a449b4c3ca1162a06b81a06b2 100644 (file)
     <ProjectReference Include="..\modules\image\image.vcxproj">\r
       <Project>{3e11ff65-a9da-4f80-87f2-a7c6379ed5e2}</Project>\r
     </ProjectReference>\r
+    <ProjectReference Include="..\modules\oal\oal.vcxproj">\r
+      <Project>{82ed7ed6-8a15-40ec-a8af-f5e712e0da68}</Project>\r
+    </ProjectReference>\r
+    <ProjectReference Include="..\modules\ogl\ogl.vcxproj">\r
+      <Project>{88f974f0-d09f-4788-8cf8-f563209e60c1}</Project>\r
+    </ProjectReference>\r
     <ProjectReference Include="..\protocol\protocol.vcxproj">\r
       <Project>{2040b361-1fb6-488e-84a5-38a580da90de}</Project>\r
     </ProjectReference>\r
     <IncludePath Condition="'$(Configuration)|$(Platform)'=='Develop|Win32'">..\dependencies\BluefishSDK_V5_10_0_42\Inc\;..\dependencies\boost\;..\dependencies\ffmpeg 0.8\include\;..\dependencies\FreeImage\Dist\;..\dependencies\glew-1.6.0\include;..\dependencies\SFML-1.6\include\;..\dependencies\tbb\include\;$(IncludePath)</IncludePath>\r
     <IncludePath Condition="'$(Configuration)|$(Platform)'=='Develop|x64'">..\dependencies\BluefishSDK_V5_10_0_42\Inc\;..\dependencies\boost\;..\dependencies\ffmpeg 0.8\include\;..\dependencies\FreeImage\Dist\;..\dependencies\glew-1.6.0\include;..\dependencies\SFML-1.6\include\;..\dependencies\tbb\include\;$(IncludePath)</IncludePath>\r
     <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\dependencies64\boost\lib\;..\dependencies64\ffmpeg\lib\;..\dependencies64\glew\lib;..\dependencies64\sfml\lib\;..\dependencies64\tbb\lib\;$(LibraryPath)</LibraryPath>\r
-    <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\dependencies64\boost\stage\lib;..\dependencies64\ffmpeg\lib\;..\dependencies64\glew\lib;..\dependencies64\sfml\lib\;..\dependencies64\tbb\lib\;..\dependencies64\freeimage\lib\;$(LibraryPath)</LibraryPath>\r
+    <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\dependencies64\boost\stage\lib;..\dependencies64\ffmpeg\lib\;..\dependencies64\glew\lib;..\dependencies64\sfml\lib\;..\dependencies64\tbb\lib\;..\dependencies64\freeimage\lib\;..\dependencies64\sfml\extlibs\lib\;$(LibraryPath)</LibraryPath>\r
     <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">C:\Program\Microsoft DirectX SDK (June 2010)\Lib\x86;..\dependencies\BluefishSDK_V5_10_0_42\Lib\;..\dependencies\boost\stage\lib\;..\dependencies\ffmpeg 0.8\lib\;..\dependencies\FreeImage\Dist\;..\dependencies\glew-1.6.0\lib;..\dependencies\SFML-1.6\lib\;..\dependencies\tbb\lib\ia32\vc10\;..\dependencies\zlib\lib;$(LibraryPath)</LibraryPath>\r
     <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">C:\Program\Microsoft DirectX SDK (June 2010)\Lib\x86;..\dependencies\BluefishSDK_V5_10_0_42\Lib\;..\dependencies\boost\stage\lib\;..\dependencies\ffmpeg 0.8\lib\;..\dependencies\FreeImage\Dist\;..\dependencies\glew-1.6.0\lib;..\dependencies\SFML-1.6\lib\;..\dependencies\tbb\lib\ia32\vc10\;..\dependencies\zlib\lib;$(LibraryPath)</LibraryPath>\r
     <LibraryPath Condition="'$(Configuration)|$(Platform)'=='Profile|Win32'">C:\Program\Microsoft DirectX SDK (June 2010)\Lib\x86;..\dependencies\BluefishSDK_V5_10_0_42\Lib\;..\dependencies\boost\stage\lib\;..\dependencies\ffmpeg 0.8\lib\;..\dependencies\FreeImage\Dist\;..\dependencies\glew-1.6.0\lib;..\dependencies\SFML-1.6\lib\;..\dependencies\tbb\lib\ia32\vc10\;..\dependencies\zlib\lib;$(LibraryPath)</LibraryPath>\r
@@ -310,7 +316,7 @@ copy "$(ProjectDir)casparcg.config" "$(OutDir)"</Command>
       <ForcedIncludeFiles>common/compiler/vs/disable_silly_warnings.h</ForcedIncludeFiles>\r
     </ClCompile>\r
     <Link>\r
-      <AdditionalDependencies>sfml-system-d.lib;sfml-window-d.lib;Winmm.lib;Ws2_32.lib;avformat.lib;avcodec.lib;avutil.lib;avfilter.lib;swscale.lib;tbb.lib;glew32.lib;OpenGL32.lib;FreeImaged.lib</AdditionalDependencies>\r
+      <AdditionalDependencies>sfml-system-d.lib;sfml-window-d.lib;sfml-graphics-d.lib;sfml-audio-d.lib;Winmm.lib;Ws2_32.lib;avformat.lib;avcodec.lib;avutil.lib;avfilter.lib;swscale.lib;tbb.lib;OpenGL32.lib;FreeImaged.lib;glew32.lib;freetype248_D.lib;openal32.lib;FreeImageD.lib</AdditionalDependencies>\r
       <Version>\r
       </Version>\r
       <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r