Sha256: 107b474a140e93eaa2c1d50bc38fd658a5c82e044f80e30d4134eb206b39a87c

Contents?: true

Size: 995 Bytes

Versions: 35

Compression:

Stored size: 995 Bytes

Contents

// -*- mode: c++ -*-
#pragma once
#ifndef __RAYS_CAMERA_H__
#define __RAYS_CAMERA_H__


#include <vector>
#include <xot/pimpl.h>
#include <rays/defs.h>
#include <rays/image.h>


namespace Rays
{


	class Camera
	{

		typedef Camera This;

		public:

			Camera (
				const char* device_name = NULL,
				int min_width  = -1,
				int min_height = -1,
				bool resize    = true,
				bool crop      = true);

			~Camera ();

			bool start ();

			void stop ();

			bool is_active () const;

			void set_min_width (int width);

			int      min_width () const;

			void set_min_height (int height);

			int      min_height () const;

			void set_resize (bool resize = true);

			bool  is_resize () const;

			void set_crop (bool crop = true);

			bool  is_crop () const;

			const Image* image () const;

			operator bool () const;

			bool operator ! () const;

			struct Data;

			Xot::PSharedImpl<Data> self;

	};// Camera


	std::vector<String> get_camera_device_names ();


}// Rays


#endif//EOH

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
rays-0.3 include/rays/camera.h
rays-0.2.1 include/rays/camera.h
rays-0.2 include/rays/camera.h
rays-0.1.49 include/rays/camera.h
rays-0.1.48 include/rays/camera.h
rays-0.1.47 include/rays/camera.h
rays-0.1.46 include/rays/camera.h
rays-0.1.45 include/rays/camera.h
rays-0.1.44 include/rays/camera.h
rays-0.1.43 include/rays/camera.h
rays-0.1.42 include/rays/camera.h
rays-0.1.40 include/rays/camera.h
rays-0.1.39 include/rays/camera.h
rays-0.1.38 include/rays/camera.h
rays-0.1.37 include/rays/camera.h
rays-0.1.36 include/rays/camera.h
rays-0.1.35 include/rays/camera.h
rays-0.1.34 include/rays/camera.h
rays-0.1.33 include/rays/camera.h
rays-0.1.32 include/rays/camera.h