~ubuntu-branches/ubuntu/precise/stellarium/precise

« back to all changes in this revision

Viewing changes to src/stelutils/Grid.hpp

  • Committer: Bazaar Package Importer
  • Author(s): Cédric Delfosse
  • Date: 2009-03-13 20:07:22 UTC
  • mfrom: (1.1.8 upstream) (4.1.2 squeeze)
  • Revision ID: james.westby@ubuntu.com-20090313200722-l66s4zy2s3e8up0s
Tags: 0.10.2-1
New upstream release

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*
2
 
 * Stellarium
3
 
 * Copyright (C) 2007 Guillaume Chereau
4
 
 * 
5
 
 * This program is free software; you can redistribute it and/or
6
 
 * modify it under the terms of the GNU General Public License
7
 
 * as published by the Free Software Foundation; either version 2
8
 
 * of the License, or (at your option) any later version.
9
 
 * 
10
 
 * This program is distributed in the hope that it will be useful,
11
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 
 * GNU General Public License for more details.
14
 
 * 
15
 
 * You should have received a copy of the GNU General Public License
16
 
 * along with this program; if not, write to the Free Software
17
 
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
18
 
 */
19
 
 
20
 
#ifndef _GRID_HPP_
21
 
#define _GRID_HPP_
22
 
 
23
 
#include <list>
24
 
 
25
 
#include "GridObject.hpp"
26
 
#include "SphereGeometry.hpp"
27
 
 
28
 
using namespace StelGeom;
29
 
 
30
 
class Grid : public std::vector<GridObject*>
31
 
{
32
 
public:
33
 
    Grid() {}
34
 
    
35
 
    virtual ~Grid() {}
36
 
 
37
 
        //! Preselect all the objects in the given area
38
 
    virtual void filterIntersect(const ConvexS& s) {;}
39
 
    
40
 
        //! Get all the objects loaded into the grid structure
41
 
        virtual std::vector<GridObject*> getAllObjects() = 0;
42
 
 
43
 
        //! Insert an element in the resulting object list
44
 
        void insertResult(GridObject* obj)
45
 
    {
46
 
                std::vector<GridObject*>::push_back(obj);
47
 
    }
48
 
        
49
 
        //! Insert several elements in the resulting object list
50
 
        void insertResult(const std::vector<GridObject*>& objs)
51
 
        {
52
 
                std::vector<GridObject*>::insert(std::vector<GridObject*>::end(), objs.begin(), objs.end());
53
 
        }
54
 
};
55
 
 
56
 
#endif // _GRID_HPP_
57