Skip to content

Commit

Permalink
Merge pull request #4 from dneg/feature/ax
Browse files Browse the repository at this point in the history
Sync AX
  • Loading branch information
Idclip authored Nov 4, 2020
2 parents 741bcbf + 5429be6 commit 7423858
Show file tree
Hide file tree
Showing 168 changed files with 6,988 additions and 3,239 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ax.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ jobs:
matrix:
compiler: ['clang++']
build: ['Release']
llvm: ['7','8','9','10']
llvm: ['7','8','9'] #@todo add back llvm 10 when the brew formula is fixed
# Extra builds
include:
- compiler: 'g++'
Expand Down
20 changes: 20 additions & 0 deletions .github/workflows/houdini_cache_update.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,26 @@ on:
# succeeds, put it into the GitHub Actions cache

jobs:
houdini18_5:
runs-on: ubuntu-16.04
container:
image: aswf/ci-base:2020
steps:
- uses: actions/checkout@v2
- name: download_houdini
run: ./ci/download_houdini.sh 18.5 ON ON ${{ secrets.HOUDINI_CLIENT_ID }} ${{ secrets.HOUDINI_SECRET_KEY }}
- name: install_houdini
run: ./ci/install_houdini.sh
- name: build
run: ./ci/build_houdini.sh clang++ Release ON
- name: test
run: ./ci/test.sh
- name: write_houdini_cache
uses: actions/cache@v2
with:
path: hou
key: vdb1-houdini18_5-${{ hashFiles('hou/hou.tar.gz') }}

houdini18_0:
runs-on: ubuntu-16.04
container:
Expand Down
27 changes: 26 additions & 1 deletion CHANGES
Original file line number Diff line number Diff line change
@@ -1,10 +1,24 @@
OpenVDB Version History
=======================

Version 7.1.1 - In Development
Version 7.2.0 - In Development

New features:
- Added tree::DynamicNodeManager that lazily caches the nodes at each
level of the tree to allow for efficient threading of topology-changing
top-down workflows.
- Added tools::CsgUnionOp, tools::CsgIntersectionOp and
tools::CsgDifferenceOp that use a parallel breadth-first algorithm to
accelerate CSG union, intersection and difference operations.
- Added tools::TreeToMerge which provides methods to steal or deep-copy
from a tree based on the tag dispatch class used in its construction.

Improvements:
- util::CpuTimer now uses C++11 chrono instead of TBB.
- Threaded the construction of LeafManager and NodeManager linear arrays.
- tools::csgUnion, tools::csgIntersection and tools::csgDifference now use
the new parallel breadth-first algorithms for much faster performance.
- Extended tree::NodeManager to allow for use with a const tree.

Houdini:
- Fixed a bug in the OpenVDB Points Convert SOP where the auto voxel
Expand All @@ -18,6 +32,17 @@ Version 7.1.1 - In Development
Bug fixes:
- Fixed a bug which could cause recursive compile time instantiations of
TypeList objects, manifesting in longer compile times.
- Deprecated util::PagedArray::push_back due to a race condition. Instead
use util::PagedArray::ValueBuffer::push_back which is faster and thread-safe.

API changes:
- Deprecated tree::LeafManager::getNodes. This method is no longer used when
constructing a NodeManager from a LeafManager.
- Deprecated Tree::visitActiveBBox, Tree::visit and Tree::visit2 methods in
favor of using a tree::DynamicNodeManager.
- Removed tools::CsgVisitorBase, tools::CsgVisitorUnion,
tools::CsgVisitorIntersection and tools::CsgVisitorDifference. The CSG
tools now use the parallel breath-first algorithms.

Build:
- Removed the Makefiles.
Expand Down
1 change: 1 addition & 0 deletions ci/download_houdini.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ cp -r dsolib/libbz2* ../hou/dsolib/.
cp -r dsolib/libtbb* ../hou/dsolib/.
cp -r dsolib/libHalf* ../hou/dsolib/.
cp -r dsolib/libjemalloc* ../hou/dsolib/.
cp -r dsolib/liblzma* ../hou/dsolib/.

# needed for < H18.0 (due to sesitag)
if [ "$HOUDINI_MAJOR" == "17.0" ] || [ "$HOUDINI_MAJOR" == "17.5" ]; then
Expand Down
6 changes: 3 additions & 3 deletions doc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ set(DOXY_FILES
doc/python.txt)

set(DOXYGEN_PROJECT_NAME "OpenVDB")
set(DOXYGEN_PROJECT_NUMBER "7.1.1")
set(DOXYGEN_PROJECT_NUMBER "7.2.0")
set(DOXYGEN_PROJECT_BRIEF "")
set(DOXYGEN_FILE_PATTERNS "*.h") # headers only
set(DOXYGEN_IMAGE_PATH "doc/img")
Expand Down Expand Up @@ -86,7 +86,7 @@ set(DOXYGEN_ALIASES
[[ijk="(<i>i</i>,&nbsp;<i>j</i>,&nbsp;<i>k</i>)"]]
[[xyz="(<i>x</i>,&nbsp;<i>y</i>,&nbsp;<i>z</i>)"]]
[[const="<tt>const</tt>"]]
[["vdbnamespace=openvdb::v7_1"]]
[["vdbnamespace=openvdb::v7_2"]]
[["hunamespace=houdini_utils"]]
[["hvdbnamespace=openvdb_houdini"]]
# Use this command to create a link to an OpenVDB class, function, etc.
Expand All @@ -109,7 +109,7 @@ set(DOXYGEN_ALIASES
)

set(DOXYGEN_PREDEFINED
"OPENVDB_VERSION_NAME=v7_1"
"OPENVDB_VERSION_NAME=v7_2"
"OPENVDB_ABI_VERSION_NUMBER=7"
[[__declspec(x):= __attribute__(x):=]]
"OPENVDB_USE_LOG4CPLUS=")
Expand Down
39 changes: 37 additions & 2 deletions doc/changes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,34 @@

@page changes Release Notes

@htmlonly <a name="v7_1_1_changes"></a>@endhtmlonly
@htmlonly <a name="v7_2_0_changes"></a>@endhtmlonly
@par
<B>Version 7.1.1</B> - <I>In Development</I>
<B>Version 7.2.0</B> - <I>In Development</I>

@par
New features:
- Added @vdblink::tree::DynamicNodeManager DynamicNodeManager@endlink that
lazily caches the nodes at each level of the tree to allow for efficient
threading of topology-changing top-down workflows.
- Added @vdblink::tools::CsgUnionOp CsgUnionOp@endlink,
@vdblink::tools::CsgIntersectionOp CsgIntersectionOp@endlink and
@vdblink::tools::CsgDifferenceOp CsgDifferenceOp@endlink that use a parallel
breadth-first algorithm to accelerate CSG union, intersection and difference
operations.
- Added @vdblink::tools::TreeToMerge TreeToMerge@endlink which provides methods
to steal or deep-copy from a tree based on the tag dispatch class used in its
construction.

@par
Improvements:
- util::CpuTimer now uses C++11 chrono instead of TBB.
- Threaded the construction of LeafManager and NodeManager linear arrays.
- @vdblink::tools::csgUnion() csgUnion@endlink,
@vdblink::tools::csgIntersection() csgIntersection@endlink and
@vdblink::tools::csgDifference() csgDifference@endlink now use the new
parallel breadth-first algorithms for much faster performance.
- Extended @vdblink::tree::NodeManager NodeManager@endlink to allow for use with
a const tree.

@par
Houdini:
Expand All @@ -24,6 +45,20 @@ Houdini:
Bug Fixes:
- Fixed a bug which could cause recursive compile time instantiations of
TypeList objects, manifesting in longer compile times.
- Deprecated @vdblink::util::PagedArray::push_back util::PagedArray::push_back@endlink
due to a race condition. Instead use
@vdblink::util::PagedArray::ValueBuffer::push_back util::PagedArray::ValueBuffer::push_back@endlink
which is faster and thread-safe.

@par
API changes:
- Deprecated tree::LeafManager::getNodes. This method is no longer used when
constructing a NodeManager from a LeafManager.
- Deprecated Tree::visitActiveBBox, Tree::visit and Tree::visit2 methods in
favor of using a tree::DynamicNodeManager.
- Removed tools::CsgVisitorBase, tools::CsgVisitorUnion,
tools::CsgVisitorIntersection and tools::CsgVisitorDifference. The CSG tools
now use the parallel breath-first algorithms.

@par
Build:
Expand Down
1 change: 1 addition & 0 deletions openvdb/openvdb/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -318,6 +318,7 @@ set(OPENVDB_LIBRARY_TOOLS_INCLUDE_FILES
tools/LevelSetTracker.h
tools/LevelSetUtil.h
tools/Mask.h
tools/Merge.h
tools/MeshToVolume.h
tools/Morphology.h
tools/MultiResGrid.h
Expand Down
4 changes: 4 additions & 0 deletions openvdb/openvdb/Types.h
Original file line number Diff line number Diff line change
Expand Up @@ -1045,6 +1045,10 @@ class ShallowCopy {};
/// @brief Tag dispatch class that distinguishes topology copy constructors
/// from deep copy constructors
class TopologyCopy {};
/// @brief Tag dispatch class that distinguishes constructors that deep copy
class DeepCopy {};
/// @brief Tag dispatch class that distinguishes constructors that steal
class Steal {};
/// @brief Tag dispatch class that distinguishes constructors during file input
class PartialCreate {};

Expand Down
Loading

0 comments on commit 7423858

Please sign in to comment.