Sha256: 8257b6b50406b0b6789748242e7fc5678f0ee2bb4795e1d68a55c7eb9f96480f

Contents?: true

Size: 1 KB

Versions: 6

Compression:

Stored size: 1 KB

Contents

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


#include <xot/pimpl.h>
#include <rays/color_space.h>
#include <rays/painter.h>


namespace Rays
{


	class Bitmap;

	class Texture;


	class Image
	{

		typedef Image This;

		public:

			Image ();

			Image (
				int width, int height, const ColorSpace& cs = RGBA,
				bool alpha_only = false);

			Image (const Bitmap& bitmap, bool alpha_only = false);

			~Image ();

			Image copy () const;

			Painter painter ();

			int width () const;

			int height () const;

			const ColorSpace& color_space () const;

			bool alpha_only () const;

			      Bitmap& bitmap ();

			const Bitmap& bitmap () const;

			      Texture& texture ();

			const Texture& texture () const;

			operator bool () const;

			bool operator ! () const;

			struct Data;

			Xot::PImpl<Data, true> self;

	};// Image


	Image load_image (const char* path, bool alphatexture = false);

	void save_image (const Image& image, const char* path);


}// Rays


#endif//EOH

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rays-0.1.12 include/rays/image.h
rays-0.1.11 include/rays/image.h
rays-0.1.10 include/rays/image.h
rays-0.1.9 include/rays/image.h
rays-0.1.8 include/rays/image.h
rays-0.1.7 include/rays/image.h