Sha256: df8564831b22e440ac2391ba7af450cadcfe532fbe6d1e1aced84fc814a03caa

Contents?: true

Size: 1.4 KB

Versions: 3

Compression:

Stored size: 1.4 KB

Contents

// -*- c++ -*-
#pragma once
#ifndef __RAYS_COLORSPACE_H__
#define __RAYS_COLORSPACE_H__


#include <rays/defs.h>


namespace Rays
{


	enum ColorSpaceType
	{

		COLORSPACE_UNKNOWN = Xot::UNKNOWN,

		GRAY_8, GRAY_16, GRAY_24, GRAY_32, GRAY_float,

		RGB_888, RGBA_8888, RGBX_8888, ARGB_8888, XRGB_8888,

		BGR_888, BGRA_8888, BGRX_8888, ABGR_8888, XBGR_8888,

		RGB_float, RGBA_float, ARGB_float,

		BGR_float, BGRA_float, ABGR_float,

		COLORSPACE_LAST,

		GRAY = GRAY_8,

		RGB  = RGB_888,   BGR  = BGR_888,

		RGBA = RGBA_8888, RGBX = RGBX_8888, ARGB = ARGB_8888, XRGB = XRGB_8888,

		BGRA = BGRA_8888, BGRX = BGRX_8888, ABGR = ABGR_8888, XBGR = XBGR_8888,

	};// ColorSpaceType


	class ColorSpace
	{

		public:

			ColorSpace ();

			ColorSpace (ColorSpaceType type, bool premultiplied = false);

			ColorSpaceType type () const;

			int bpc () const;

			int Bpc () const;

			int bpp () const;

			int Bpp () const;

			int alpha_pos () const;

			bool is_gray () const;

			bool is_rgb () const;

			bool is_bgr () const;

			bool is_float () const;

			bool has_alpha () const;

			bool has_skip () const;

			bool is_alpha_first () const;

			bool is_alpha_last () const;

			bool is_skip_first () const;

			bool is_skip_last () const;

			bool is_premult () const;

			operator bool () const;

			bool operator ! () const;

		private:

			ColorSpaceType type_;

			bool premult;

	};// ColorSpace


}// Rays


#endif//EOH

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rays-0.1.6 include/rays/colorspace.h
rays-0.1.5 include/rays/colorspace.h
rays-0.1.4 include/rays/colorspace.h