File: PointLightVisitor.h

package info (click to toggle)
pinball 0.3.20201218-4
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye
  • size: 8,452 kB
  • sloc: cpp: 15,230; makefile: 840; sh: 381; xml: 24
file content (37 lines) | stat: -rw-r--r-- 975 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/***************************************************************************
                          PointLightVisit.h  -  description
                             -------------------
    begin                : Sun Jan 30 2000
    copyright            : (C) 2000 by Henrik Enqvist
    email                : henqvist@excite.com
 ***************************************************************************/

#ifndef POINTLIGHTVISITOR_H
#define POINTLIGHTVISITOR_H

#include <vector>

#include "Visitor.h"
#include "EMath.h"

class Light;
class Group;
class Shape3D;

/** Only for internal use. */
class PointLightVisitor : public Visitor {
 protected:
	PointLightVisitor(int size = 4);
 public:
	~PointLightVisitor();
	static PointLightVisitor * getInstance();
	void add(Light* l);
	void visit(Group* g);
	void clear();
 private:
	vector<Light*> m_vLight;
	void visit(Shape3D* s, Group* g);
	static PointLightVisitor * p_PointLightVisitor;
};

#endif // POINTLIGHTVISITOR_H