xref: /haiku/src/add-ons/screen_savers/spider/PolygonQueue.h (revision 3c5dd345287e30b212cdf2fb92cf8cccc5f2bddd)
1*3c5dd345SStephan Aßmus /*
2*3c5dd345SStephan Aßmus  * Copyright 2007, Haiku Inc. All rights reserved.
3*3c5dd345SStephan Aßmus  * Distributed under the terms of the MIT License.
4*3c5dd345SStephan Aßmus  *
5*3c5dd345SStephan Aßmus  * Authors:
6*3c5dd345SStephan Aßmus  *		Stephan Aßmus <superstippi@gmx.de>
7*3c5dd345SStephan Aßmus  */
8*3c5dd345SStephan Aßmus #ifndef POLYGON_QUEUE_H
9*3c5dd345SStephan Aßmus #define POLYGON_QUEUE_H
10*3c5dd345SStephan Aßmus 
11*3c5dd345SStephan Aßmus #include <SupportDefs.h>
12*3c5dd345SStephan Aßmus 
13*3c5dd345SStephan Aßmus class Polygon;
14*3c5dd345SStephan Aßmus 
15*3c5dd345SStephan Aßmus class PolygonQueue {
16*3c5dd345SStephan Aßmus  public:
17*3c5dd345SStephan Aßmus 								PolygonQueue(Polygon* start, int32 depth);
18*3c5dd345SStephan Aßmus 	virtual						~PolygonQueue();
19*3c5dd345SStephan Aßmus 
20*3c5dd345SStephan Aßmus 			Polygon*			Head() const;
21*3c5dd345SStephan Aßmus 			Polygon*			Tail() const;
22*3c5dd345SStephan Aßmus 
23*3c5dd345SStephan Aßmus 			void				Step();
24*3c5dd345SStephan Aßmus 
25*3c5dd345SStephan Aßmus  private:
26*3c5dd345SStephan Aßmus 			Polygon**			fPolygons;
27*3c5dd345SStephan Aßmus 			int32				fDepth;
28*3c5dd345SStephan Aßmus };
29*3c5dd345SStephan Aßmus 
30*3c5dd345SStephan Aßmus #endif // POLYGON_QUEUE_H
31