GenGeo  1.1
CircMNTable2D.h
Go to the documentation of this file.
1 
2 // //
3 // Copyright (c) 2007-2014 by The University of Queensland //
4 // Centre for Geoscience Computing //
5 // http://earth.uq.edu.au/centre-geoscience-computing //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.opensource.org/licenses/osl-3.0.php //
10 // //
12 
13 #ifndef __CIRCMNTABLE2D_H
14 #define __CIRCMNTABLE2D_H
15 
16 // --- Project includes ---
17 #include "MNTable2D.h"
18 
26 class CircMNTable2D : public MNTable2D
27 {
28  protected:
30 
31  virtual void set_x_circ();
32  virtual int getIndex(const Vector3&) const;
33  int getXIndex(const Vector3&) const;
34  int getYIndex(const Vector3&) const;
35  int getFullIndex(const Vector3&) const;
36 
37 
38  public:
39  CircMNTable2D();
40  CircMNTable2D(const Vector3&,const Vector3&,double,unsigned int);
41  virtual ~CircMNTable2D();
42 
43  virtual bool insert(const Sphere&,unsigned int);
44  virtual bool insertChecked(const Sphere&,unsigned int,double tol=s_small_value);
45  virtual bool checkInsertable(const Sphere&,unsigned int);
46  virtual void generateBonds(int,double,int);
47  virtual void generateBondsWithMask(int,double,int,int,int);
48 
49  // output
50  friend ostream& operator << (ostream&,const CircMNTable2D&);
51 };
52 
53 #endif // __CIRCMNTABLE2D_H