Skip to content

Commit

Permalink
dwidenoise: Further fixes for clang-tidy
Browse files Browse the repository at this point in the history
  • Loading branch information
Lestropie committed Nov 7, 2024
1 parent 7c8fc04 commit 239e994
Showing 1 changed file with 12 additions and 7 deletions.
19 changes: 12 additions & 7 deletions cmd/dwidenoise.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@ class KernelVoxel {
sq_distance = that.sq_distance;
return *this;
}
KernelVoxel &operator=(KernelVoxel &&that) {
KernelVoxel &operator=(KernelVoxel &&that) noexcept {
offset = that.offset;
sq_distance = that.sq_distance;
return *this;
Expand All @@ -221,6 +221,7 @@ class KernelBase {
public:
KernelBase(const Header &H) : H(H) {}
KernelBase(const KernelBase &) = default;
virtual ~KernelBase() = default;
// This is just for pre-allocating matrices
virtual ssize_t estimated_size() const = 0;
// This is the interface that kernels must provide
Expand All @@ -235,14 +236,15 @@ class KernelCube : public KernelBase {
KernelCube(const Header &header, const std::vector<uint32_t> &extent)
: KernelBase(header),
half_extent({int(extent[0] / 2), int(extent[1] / 2), int(extent[2] / 2)}),
size(size_t(extent[0]) * size_t(extent[1]) * size_t(extent[2])),
size(ssize_t(extent[0]) * ssize_t(extent[1]) * ssize_t(extent[2])),
centre_index(size / 2) {
for (auto e : extent) {
if (!(e % 2))
throw Exception("Size of cubic kernel must be an odd integer");
}
}
KernelCube(const KernelCube &) = default;
~KernelCube() final = default;
KernelData operator()(const voxel_type &pos) const override {
KernelData result(centre_index);
voxel_type voxel;
Expand Down Expand Up @@ -287,7 +289,8 @@ class KernelSphereBase : public KernelBase {
public:
KernelSphereBase(const Header &voxel_grid, const default_type max_radius)
: KernelBase(voxel_grid), shared(new Shared(voxel_grid, max_radius)) {}
virtual ~KernelSphereBase() {}
KernelSphereBase(const KernelSphereBase &) = default;
virtual ~KernelSphereBase() override {}

protected:
class Shared {
Expand All @@ -299,8 +302,8 @@ class KernelSphereBase : public KernelBase {
int(std::ceil(max_radius / voxel_grid.spacing(1))), //
int(std::ceil(max_radius / voxel_grid.spacing(2)))}); //
// Build the searchlight
data.reserve(size_t((2 * half_extents[0] + 1) * (2 * half_extents[1] + 1) * (2 * half_extents[2] + 1)));
voxel_type offset;
data.reserve(size_t(2 * half_extents[0] + 1) * size_t(2 * half_extents[1] + 1) * size_t(2 * half_extents[2] + 1));
voxel_type offset({-1, -1, -1});
for (offset[2] = -half_extents[2]; offset[2] <= half_extents[2]; ++offset[2]) {
for (offset[1] = -half_extents[1]; offset[1] <= half_extents[1]; ++offset[1]) {
for (offset[0] = -half_extents[0]; offset[0] <= half_extents[0]; ++offset[0]) {
Expand Down Expand Up @@ -328,7 +331,8 @@ class KernelSphereRatio : public KernelSphereBase {
KernelSphereRatio(const Header &voxel_grid, const default_type min_ratio)
: KernelSphereBase(voxel_grid, compute_max_radius(voxel_grid, min_ratio)),
min_size(std::ceil(voxel_grid.size(3) * min_ratio)) {}
~KernelSphereRatio() {}
KernelSphereRatio(const KernelSphereRatio &) = default;
~KernelSphereRatio() final = default;
KernelData operator()(const voxel_type &pos) const override {
KernelData result(0);
auto table_it = shared->begin();
Expand Down Expand Up @@ -384,7 +388,8 @@ class KernelSphereFixedRadius : public KernelSphereBase {
maximum_size(std::distance(shared->begin(), shared->end())) { //
INFO("Maximum number of voxels in " + str(radius) + "mm fixed-radius kernel is " + str(maximum_size));
}
~KernelSphereFixedRadius() {}
KernelSphereFixedRadius(const KernelSphereFixedRadius &) = default;
~KernelSphereFixedRadius() final = default;
KernelData operator()(const voxel_type &pos) const {
KernelData result(0);
result.voxels.reserve(maximum_size);
Expand Down

0 comments on commit 239e994

Please sign in to comment.