xref: /haiku/src/add-ons/screen_savers/glife/GLifeGrid.h (revision 7d0f6bd08c6a85222ceb55f49abb1ba805a91e05)
1 /*
2  * Copyright 2012, Haiku, Inc.
3  * Distributed under the terms of the MIT License.
4  *
5  * Authors:
6  * 		Aaron Hill <serac@hillvisions.com>
7  */
8 #ifndef _GLIFE_GLIFEGRID_H
9 #define _GLIFE_GLIFEGRID_H
10 
11 
12 #include <OS.h>
13 
14 
15 // GLifeGrid Class Declaration
16 class GLifeGrid
17 {
18 private:
19 	bool*		m_pbGrid;
20 	int32		m_iWidth;
21 	int32		m_iHeight;
22 
23 	int32		Neighbors( int32, int32 );
24 
25 public:
26 	// Constructor & Destructor
27 				GLifeGrid( int32, int32 );
28 				~GLifeGrid( void );
29 	// Public Methods
30 	void		Generation( void );
31 	// Accessor Methods
32 	bool		Occupied( int32, int32 );
33 };
34 
35 
36 #endif /* _GLIFE_GLIFEGRID_H */
37