55#ifndef LASS_GUARDIAN_OF_INCLUSION_SPAT_SPAT_COMMON_H
56#define LASS_GUARDIAN_OF_INCLUSION_SPAT_SPAT_COMMON_H
68#ifdef LASS_SPAT_OBJECT_TREES_DIAGNOSTICS
72 template <
typename InfoType>
73 struct ObjectTreesDiagnostics
75 ObjectTreesDiagnostics(InfoType* info): info(info), visitedObjects(0), visitedNodes(0) {}
78 size_t visitedObjects;
83# define LASS_SPAT_OBJECT_TREES_DIAGNOSTICS_INIT_NODE(t_info, v_info)\
84 ::lass::spat::impl::ObjectTreesDiagnostics< t_info >* _lass_spat_object_trees_diagnostics =\
85 (::lass::spat::impl::ObjectTreesDiagnostics< t_info >*) v_info;\
86 if (_lass_spat_object_trees_diagnostics) {\
87 v_info = _lass_spat_object_trees_diagnostics->info;\
88 _lass_spat_object_trees_diagnostics->visitedNodes += 1;\
91# define LASS_SPAT_OBJECT_TREES_DIAGNOSTICS_VISIT_NODE\
92 if (_lass_spat_object_trees_diagnostics) { _lass_spat_object_trees_diagnostics->visitedNodes += 1; } else {}
94# define LASS_SPAT_OBJECT_TREES_DIAGNOSTICS_VISIT_OBJECT\
95 if (_lass_spat_object_trees_diagnostics) { _lass_spat_object_trees_diagnostics->visitedObjects += 1; } else {}
99# define LASS_SPAT_OBJECT_TREES_DIAGNOSTICS_INIT_NODE(t_info, v_info)
100# define LASS_SPAT_OBJECT_TREES_DIAGNOSTICS_VISIT_NODE
101# define LASS_SPAT_OBJECT_TREES_DIAGNOSTICS_VISIT_OBJECT
spatial subdivisions, quadtrees, octrees, meshes in 2D and 3D, triangulators, ...
Library for Assembled Shared Sources.