Sha256: b6660449bb4651d32ca6baed8b663eca9d019b3b0e882ab4b159f0a50d87a102

Contents?: true

Size: 910 Bytes

Versions: 24

Compression:

Stored size: 910 Bytes

Contents

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


#include <xot/pimpl.h>
#include <rays/defs.h>
#include "opengl.h"


namespace Rays
{


	class Texture;


	class FrameBuffer
	{

		public:

			FrameBuffer ();

			FrameBuffer (const Texture& texture);

			~FrameBuffer ();

			void attach (const Texture& texture);

			GLuint id () const;

			int width () const;

			int height () const;

			      Texture& texture ();

			const Texture& texture () const;

			operator bool () const;

			bool operator ! () const;

			struct Data;

			Xot::PSharedImpl<Data> self;

	};// FrameBuffer


	class FrameBufferBinder
	{

		public:

			FrameBufferBinder (GLuint id);

			~FrameBufferBinder ();

			GLuint current () const;

		private:

			GLuint id;

	};// FrameBufferBinder


	void FrameBuffer_bind (GLuint id);

	void FrameBuffer_unbind ();


}// Rays


#endif//EOH

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
rays-0.1.36 src/frame_buffer.h
rays-0.1.35 src/frame_buffer.h
rays-0.1.34 src/frame_buffer.h
rays-0.1.33 src/frame_buffer.h
rays-0.1.32 src/frame_buffer.h
rays-0.1.31 src/frame_buffer.h
rays-0.1.30 src/frame_buffer.h
rays-0.1.29 src/frame_buffer.h
rays-0.1.28 src/frame_buffer.h
rays-0.1.27 src/frame_buffer.h
rays-0.1.26 src/frame_buffer.h
rays-0.1.25 src/frame_buffer.h
rays-0.1.24 src/frame_buffer.h
rays-0.1.23 src/frame_buffer.h
rays-0.1.22 src/frame_buffer.h
rays-0.1.21 src/frame_buffer.h
rays-0.1.20 src/frame_buffer.h
rays-0.1.19 src/frame_buffer.h
rays-0.1.18 src/frame_buffer.h
rays-0.1.17 src/frame_buffer.h