COVISE Core
coDoOctTree.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_H
9#define CO_DO_OCTTREE_H
10
11// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12// CLASS OctTree
13//
14// This class manages an octtree structure for cell location in unstructured grids
15//
16// Initial version: 2001-12-10 Sergio Leseduarte
17// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
18// (C) 2001 by VirCinity IT Consulting
19// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
20// Changes:
21
22#include "coDoBasisTree.h"
23
24namespace covise
25{
26
32{
33 friend class coDoInitializer;
34 static coDistributedObject *virtualCtor(coShmArray *arr);
35
36public:
40 coDoOctTree(const coObjInfo &info);
41
46 coDoOctTree(const coObjInfo &info, coShmArray *arr);
47
56 int cellListSize,
57 int macroCellListSize,
58 int cellBBoxesSize,
59 int gridBBoxSize)
60 : coDoBasisTree(info, "OCTREE", "OCT-TREE", cellListSize, macroCellListSize, cellBBoxesSize, gridBBoxSize)
61 {
62 }
63
75 coDoOctTree(const coObjInfo &info, int nelem, int nconn, int ncoord,
76 int *el, int *conn, float *x_c, float *y_c, float *z_c,
77 int normal_size = NORMAL_SIZE,
78 int max_no_levels = MAX_NO_LEVELS,
79 int min_small_enough = MIN_SMALL_ENOUGH,
80 int crit_level = CRIT_LEVEL,
81 int limit_fX = INT_MAX,
82 int limit_fY = INT_MAX,
83 int limit_fZ = INT_MAX);
84
91 int IsInBBox(int cell, int no_e, const float *point) const;
92
94 virtual ~coDoOctTree();
95
96protected:
97 coDoOctTree *cloneObject(const coObjInfo &newinfo) const;
98
99private:
100};
101}
102#endif
#define DOEXPORT
Definition: coExport.h:331
list of all chemical elements
Definition: coConfig.h:27
Definition: coObjID.h:231
Definition: covise_shm.h:482
Definition: coDistributedObject.h:296
Definition: coDoBasisTree.h:30
Definition: coDoOctTree.h:32
coDoOctTree(const coObjInfo &info, int cellListSize, int macroCellListSize, int cellBBoxesSize, int gridBBoxSize)
Definition: coDoOctTree.h:55
Definition: covise_statics.cpp:55