include/container.h
author Radek Brich <radek.brich@devl.cz>
Fri, 14 Dec 2007 00:05:54 +0100
branchpyrit
changeset 37 5f954c0d34fc
parent 34 28f6e8b9d5d1
child 44 3763b26244f0
permissions -rw-r--r--
octree traversal rewritten to avoid recursion reenabled -O3 optimizations (was accidentaly disabled, now it traces even faster! :-)) realtime_bunny: added FPS counter, fixed a bug in ply loader min3 and max3 templates added to common.h

/*
 * Pyrit Ray Tracer
 * file: container.h
 *
 * Radek Brich, 2006-2007
 */

#ifndef CONTAINER_H
#define CONTAINER_H

#include <vector>

#include "scene.h"

using namespace std;

class Container
{
protected:
	BBox bbox;
public:
	ShapeList shapes;
	Container(): bbox(), shapes() {};
	virtual ~Container() {};
	virtual void addShape(Shape* aShape);
	//void addShapeNoExtend(Shape* aShape) { shapes.push_back(aShape); };
	virtual Shape *nearest_intersection(const Shape *origin_shape, const Ray &ray,
		Float &nearest_distance);
	virtual void optimize() {};
};

#endif