SlideIO 2.0.0
Open-source library for reading of medical images
Loading...
Searching...
No Matches
medianblurfilterwrap.hpp
1// This file is part of slideio project.
2// It is subject to the license terms in the LICENSE file found in the top-level directory
3// of this distribution and at http://slideio.com/license.html.
4#pragma once
5#include "slideio/transformer/transformer_def.hpp"
6#include "slideio/transformer/transformationwrapper.hpp"
7#include <memory>
8
9#if defined(_MSC_VER)
10#pragma warning( push )
11#pragma warning(disable: 4275 4251)
12#endif
13
14namespace slideio
15{
16 class MedianBlurFilter;
17 enum class TransformationType;
18 class SLIDEIO_TRANSFORMER_EXPORTS MedianBlurFilterWrap : public TransformationWrapper
19 {
20 public:
21 MedianBlurFilterWrap(const MedianBlurFilterWrap& other)
22 : TransformationWrapper(other),
23 m_filter(other.m_filter) {
24 }
25
26 MedianBlurFilterWrap(MedianBlurFilterWrap&& other) noexcept
27 : TransformationWrapper(std::move(other)),
28 m_filter(std::move(other.m_filter)) {
29 }
30
31 MedianBlurFilterWrap& operator=(const MedianBlurFilterWrap& other) {
32 if (this == &other)
33 return *this;
34 TransformationWrapper::operator =(other);
35 m_filter = other.m_filter;
36 return *this;
37 }
38
39 MedianBlurFilterWrap& operator=(MedianBlurFilterWrap&& other) noexcept {
40 if (this == &other)
41 return *this;
42 TransformationWrapper::operator =(std::move(other));
43 m_filter = std::move(other.m_filter);
44 return *this;
45 }
46
47 MedianBlurFilterWrap();
48 MedianBlurFilterWrap(const MedianBlurFilter& filter);
49 int getKernelSize() const;
50 void setKernelSize(int kernelSize);
51 TransformationType getType() const override;
52 std::shared_ptr<MedianBlurFilter> getFilter() const;
53
54 private:
55 std::shared_ptr<MedianBlurFilter> m_filter;
56};
57
58}
59
60#if defined(_MSC_VER)
61#pragma warning( pop )
62#endif
Definition: exceptions.hpp:15