JacksonCampolattaro
b267403b95
Recursive intersection now uses indices
2023-04-24 13:38:05 +02:00
JacksonCampolattaro
c0a8bbf2c9
Topology equality is done by index
2023-04-20 11:57:35 +02:00
JacksonCampolattaro
b9ed5a4221
Relative node access is now done only by index
2023-04-19 19:11:59 +02:00
JacksonCampolattaro
b4f04645f1
Level traversal is done by index, has a new unit test
2023-04-19 18:44:30 +02:00
JacksonCampolattaro
62fa9db7a6
Preorder traversal is now implemented in terms of indices
2023-04-19 10:42:48 +02:00
JacksonCampolattaro
07968655f6
Add support for traversal by index
2023-04-18 14:45:00 +02:00
JacksonCampolattaro
8c12fd3bc7
Implement desired behavior for repeated refinement
2023-04-12 12:10:53 +02:00
JacksonCampolattaro
4e3fc7edf6
Add shims for using functions with indices
2023-04-12 11:17:57 +02:00
JacksonCampolattaro
9103affe72
Splitting is done by index (internally)
...
Pre-allocating nodes is no longer necessary, since refine() isn't broken by pointer invalidation
2023-04-11 17:52:52 +02:00
JacksonCampolattaro
a5a92ad795
Traversal is now done by index (internally)
2023-04-11 12:17:32 +02:00
JacksonCampolattaro
1a1ca5cf28
Node access is now done solely by index
...
Nodes no longer hold references to their parents and children
2023-03-31 15:58:42 +02:00
JacksonCampolattaro
14726a1e41
Add functions to get node indices & retrieve nodes by index
2023-03-29 22:46:52 +02:00
JacksonCampolattaro
6dec072b00
Node parent access is now done through the tree
2023-03-29 16:38:45 +02:00
JacksonCampolattaro
45244da9e1
Node can no longer directly access its children without the tree
...
This is necessary for the next step, but makes the API a pain to use. Some sort of `Node_handle` type is definitely worthwhile.
2023-03-27 18:12:20 +02:00
JacksonCampolattaro
353acb57ed
Nodes are allocated in an std::vector, and contain a boost::span of children
...
This reference-based approach breaks when the vector re-allocates. This is a stepping-stone to using indices.
2023-03-27 12:20:57 +02:00
JacksonCampolattaro
d8b42fd3f3
Remove subscript operator for direct access to children of root
...
This operator will be used for access by node ID in the future, and this functionality was less clear than tree.root[].
2023-03-26 21:32:55 +02:00
JacksonCampolattaro
035db48542
Nodes can't split, unsplit, or copy themselves.
...
This ensures allocating and deallocating nodes is strictly the responsibility of the orthtree object.
2023-03-26 16:50:06 +02:00
JacksonCampolattaro
4f6d249c1f
Eliminate heap allocated `Data *m_data`
...
This required changing return types to `Node *` in many cases. All unit tests have been updated to account for the new interface.
2023-03-23 09:58:20 +01:00
albert-github
01a7852f70
Merge branch 'master' into feature/bug_documentation_spell_20221113
...
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
Synchronize with master
2022-11-16 13:58:05 +01:00
albert-github
eed54a0ae5
spelling corrections
...
Some spelling corrections (Directories starting with `O`-`S` , first part),
some backward work
some forward work
2022-11-15 18:45:39 +01:00
Laurent Rineau
c01757bc80
Merge pull request #7028 from afabri/Orthtree-CC-GF
...
Orthtree: Fix memory leak
2022-11-15 17:01:29 +01:00
albert-github
45478184de
spelling corrections
...
Some spelling corrections (Directories starting with `E`-` L`),
some backward work
some forward work
2022-11-15 13:39:40 +01:00
Andreas Fabri
331ea2898a
Orthtree: Fix memory leak
2022-11-09 08:47:54 +00:00
Andreas Fabri
d1eca8310f
typo
2022-11-09 08:47:37 +00:00
Andreas Fabri
efddc4ae84
Orthtree: Fix in test code
2022-06-30 15:57:21 +01:00
Andreas Fabri
2b836ab7ab
no need for int D
2022-06-21 17:11:28 +01:00
Andreas Fabri
9a633432ba
change order of parameters
2022-06-21 17:05:35 +01:00
Andreas Fabri
329f52175a
Orthtree: Fix memory leak in test code
2022-06-21 16:54:27 +01:00
Andreas Fabri
191e99adc8
Fix Orthtree
2022-05-17 10:41:26 +01:00
Simon Giraudot
8f8679e038
Fix uninitialized pointer
2021-04-13 09:42:15 +02:00
Simon Giraudot
24aa93dcaf
Use raw pointers instead of shared pointers (and let Orthtree manage memory)
2021-04-07 14:26:50 +02:00
Simon Giraudot
4d761ed9cd
More corrections from review
2021-04-01 14:21:01 +02:00
Simon Giraudot
616cd5a549
Apply corrections from review
2021-04-01 08:55:51 +02:00
Simon Giraudot
692c7a6f90
Remove unused parameter
2021-03-23 11:44:50 +01:00
Simon Giraudot
9724bed342
Prevent min/max macro substitution on windows
2021-03-22 08:24:44 +01:00
Simon Giraudot
0da0b71980
Fix missing typename
2021-03-17 15:45:43 +01:00
Simon Giraudot
2fa19c2818
Fix more warnings
2021-03-17 08:12:53 +01:00
Simon Giraudot
701f230f24
Fix warning (unsigned is always >= 0)
2021-03-16 12:14:45 +01:00
Simon Giraudot
a14dfc4e96
Fix bbox init for EPECK compatibility
2021-03-16 12:01:27 +01:00
Simon Giraudot
39d3051d9f
Fix warnings
2021-03-16 08:54:36 +01:00
Simon Giraudot
e1cd919ea4
Fix warnings
2021-03-15 09:36:12 +01:00
Simon Giraudot
349717097f
Fix doc warnings
2021-03-11 10:21:07 +01:00
Simon Giraudot
ea17a54671
Fix max() Windows error
2021-03-11 08:32:30 +01:00
Simon Giraudot
57af406402
Fix multiple inclusion guard
2021-03-04 15:55:14 +01:00
Simon Giraudot
67c1f3fad1
Add missing includes
2021-03-04 15:12:23 +01:00
Simon Giraudot
0b1d696c97
Add Orthtree.h include so that Node.h compiles
2021-03-04 08:29:24 +01:00
Simon Giraudot
e95dea12cd
Fix missing include
2021-03-03 15:00:49 +01:00
Simon Giraudot
0f40608714
Make node comparable
2021-02-03 08:26:25 +01:00
Simon Giraudot
c15327a901
Add level traversal
2021-02-03 08:26:03 +01:00
Simon Giraudot
5aeb07d654
Minor fixes
2021-02-02 08:27:44 +01:00