//
//  CollisionBody.h
//  PixelKit
//
//  Copyright (c) 2014 César Parent. All rights reserved.
//
#ifndef _COLOR_H
#define _COLOR_H

namespace PixelKit
{
	/*!
	 * @class PixelKit::Color
	 * @brief Color represents a 32bit RGBA colour.
	 */
	class Color
	{
	public:
		/*!
		 * @brief the red component of the color.
		 */
		Uint8 red;
		
		/*!
		 * @brief the green component of the color.
		 */
		Uint8 green;
		
		/*!
		 * @brief the blue component of the color.
		 */
		Uint8 blue;
		
		/*!
		 * @brief the alpha component of the color.
		 */
		Uint8 alpha;
		
		/*!
		 * @brief Color constructor. Creates a white, full-opaque color by
		 * default.
		 * 
		 * @param r new Color's red component
		 * @param g new Color's green component
		 * @param b new Color's blue component
		 * @param a new Color's alpha component
		 */
		Color(Uint8 r = 0xff, Uint8 g = 0xff, Uint8 b = 0xff, Uint8 a = 0xff)
		{
			this->red = r;
			this->green = g;
			this->blue = b;
			this->alpha = a;
		};
	};
}

#endif