# Gin
A few useful extra classes for [JUCE](https://juce.com/) that I've come up with over the years.

Documentation:

[DOxygen Documentation](https://figbug.github.io/Gin/annotated.html)

Automated Builds:

![Build Windows](https://github.com/FigBug/Gin/workflows/Build%20Windows/badge.svg "Build Windows")
![Build macOS](https://github.com/FigBug/Gin/workflows/Build%20macOS/badge.svg "Build macOS")
![Build Linux](https://github.com/FigBug/Gin/workflows/Build%20Linux/badge.svg "Build Linux")

What's included:

* BMPImageFormat - Load and Save Windows Bitmaps
* ColourPropertyComponent - Colour picker for PropertyComponent
* DownloadManager - Async downloads with 0 delay on main thread
* Ellipse - Determine if point is on ellipse. Find point at angle on ellipse.
* FilePropertyComponent - File chooser for PropertyComponent
* FileSystemWatcher - Get notified when files in directory change
* ImageEffects - Sepia, Vignette, Soften, Sharpen, Invert, Contrast, Hue, Saturation, Stack Blur etc
* ImageMetadata - Load metadata from jpeg & png
* Integrator - Calculate integrals
* LeastSquaresRegression - Fits a curve to data points
* LinearRegression - Fits a line to data points
* MapViewer - Displays a map
* OpenStreetMaps - Fetch tiles from various OSM servers
* SecureStreamingSocket - Streaming socket the supports SSL
* SharedMemory - Share a memory block between processes
* Spline - A smooth curve from a set of discrete points
* PerlinNoise - Natural looking noise
* Websocket - Websocket client

Credits:

Stack Blur:  Mario Klingemann
http://incubator.quasimondo.com/processing/fast_blur_deluxe.php

Least Squares Regression
https://www.codeproject.com/Articles/63170/Least-Squares-Regression-for-Quadratic-Curve-Fitti

muParser: Ingo Berg
http://beltoforion.de/article.php?a=muparser

Spline: Devin Lane
https://shiftedbits.org/2011/01/30/cubic-spline-interpolation/

JUCE: Roli
www.juce.com

AVIR: Aleksey Vaneev
https://github.com/avaneev/avir

easywsclient
https://github.com/dhbaird/easywsclient

mbed TLS
https://tls.mbed.org/

liboauthcpp
https://github.com/sirikata/liboauthcpp

Special Thanks to:
reFX Audio Software Inc.
