Blame c++/contourgl/clcontext.h

c76ce8
/*
c76ce8
    ......... 2015 Ivan Mahonin
c76ce8
c76ce8
    This program is free software: you can redistribute it and/or modify
c76ce8
    it under the terms of the GNU General Public License as published by
c76ce8
    the Free Software Foundation, either version 3 of the License, or
c76ce8
    (at your option) any later version.
c76ce8
c76ce8
    This program is distributed in the hope that it will be useful,
c76ce8
    but WITHOUT ANY WARRANTY; without even the implied warranty of
c76ce8
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
c76ce8
    GNU General Public License for more details.
c76ce8
c76ce8
    You should have received a copy of the GNU General Public License
c76ce8
    along with this program.  If not, see <http: licenses="" www.gnu.org="">.</http:>
c76ce8
*/
c76ce8
49e693
#ifndef _CLCONTEXT_H_
49e693
#define _CLCONTEXT_H_
49e693
c76ce8
#include <vector></vector>
f83e6b
#include <string></string>
c76ce8
c76ce8
#include <cl opencl.h=""></cl>
c76ce8
c76ce8
c76ce8
class ClContext {
c76ce8
public:
c76ce8
	cl_int err;
2517eb
	cl_device_id device;
c76ce8
	cl_context context;
f83e6b
	cl_command_queue queue;
c76ce8
013f0c
	unsigned int max_compute_units;
013f0c
	size_t max_group_size;
013f0c
c76ce8
	ClContext();
c76ce8
	~ClContext();
c76ce8
c76ce8
	void hello();
f83e6b
	cl_program load_program(const std::string &filename);
c7fa36
	static void callback(const char *, const void *, size_t, void *);
c76ce8
};
49e693
49e693
#endif