File indexing completed on 2026-09-21 09:29:24
0001 #ifndef VECGEOM_VOLUMES_SPECIALIZEDBOOLEAN_H
0002 #define VECGEOM_VOLUMES_SPECIALIZEDBOOLEAN_H
0003
0004 #include "VecGeom/base/Global.h"
0005
0006 #include "VecGeom/volumes/kernel/BooleanImplementation.h"
0007 #include "VecGeom/volumes/UnplacedBooleanVolume.h"
0008 #include "VecGeom/volumes/PlacedBooleanVolume.h"
0009 #include "VecGeom/volumes/SpecializedPlacedVolImplHelper.h"
0010
0011 namespace vecgeom {
0012
0013 inline namespace VECGEOM_IMPL_NAMESPACE {
0014
0015 template <BooleanOperation boolOp>
0016 using SpecializedBooleanVolume = SpecializedVolImplHelper<BooleanImplementation<boolOp>>;
0017
0018 using GenericPlacedUnionVolume = SpecializedBooleanVolume<kUnion>;
0019 using GenericPlacedIntersectionVolume = SpecializedBooleanVolume<kIntersection>;
0020 using GenericPlacedSubtractionVolume = SpecializedBooleanVolume<kSubtraction>;
0021
0022 using GenericUnionVolume = SpecializedBooleanVolume<kUnion>;
0023 using GenericIntersectionVolume = SpecializedBooleanVolume<kIntersection>;
0024 using GenericSubtractionVolume = SpecializedBooleanVolume<kSubtraction>;
0025
0026 }
0027
0028 }
0029
0030 #endif