COVISE Core
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
coDoOctTreeP.h
Go to the documentation of this file.
1 /* This file is part of COVISE.
2 
3  You can use it under the terms of the GNU Lesser General Public License
4  version 2.1 or later, see lgpl-2.1.txt.
5 
6  * License: LGPL 2+ */
7 
8 #ifndef CO_DO_OCTTREE_P_H
9 #define CO_DO_OCTTREE_P_H
10 
11 #include "coDoBasisTree.h"
12 #include <vector>
13 
14 // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
15 // CLASS OctTree
16 //
17 // This class manages an octtree structure for cell location in unstructured grids
18 //
19 // Initial version: 2001-12-10 Sergio Leseduarte
20 // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
21 // (C) 2001 by VirCinity IT Consulting
22 // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
23 // Changes:
24 namespace covise
25 {
26 
32 {
33  friend class coDoInitializer;
34  static coDistributedObject *virtualCtor(coShmArray *arr);
35 
36 public:
40  coDoOctTreeP(const coObjInfo &info);
41 
46  coDoOctTreeP(const coObjInfo &info, coShmArray *arr);
47 
59  coDoOctTreeP(const coObjInfo &info, int nelem, int nconn, int ncoord,
60  int *el, int *conn, float *x_c, float *y_c, float *z_c,
61  int normal_size = NORMAL_SIZE,
62  int max_no_levels = MAX_NO_LEVELS,
63  int min_small_enough = MIN_SMALL_ENOUGH,
64  int crit_level = CRIT_LEVEL,
65  int limit_fX = INT_MAX,
66  int limit_fY = INT_MAX,
67  int limit_fZ = INT_MAX);
68 
73  void LoadCellPopulations(std::vector<int> **oct_trees_cells, const float *point,
74  int search_level);
75 
77  virtual ~coDoOctTreeP();
78 
79  void setInfo(int nelem_l,
80  int nconn_l,
81  int ncoord_l,
82  int *el,
83  int *conn,
84  float *x_c,
85  float *y_c,
86  float *z_c);
87 
88 protected:
89  coDoOctTreeP *cloneObject(const coObjInfo &newinfo) const;
90 
91 private:
92 };
93 }
94 #endif
Definition: coDoBasisTree.h:29
Definition: coDoOctTreeP.h:31
Definition: covise_shm.h:479
Definition: covise_statics.cpp:54
Definition: coObjID.h:230
#define DOEXPORT
Definition: coExport.h:307
Definition: coDistributedObject.h:294