diff --git a/Modules/Filtering/Polarimetry/include/otbPolarimetryTags.h b/Modules/Filtering/Polarimetry/include/otbPolarimetryTags.h new file mode 100644 index 0000000000000000000000000000000000000000..d38ca71ffac427b682fe0b2d8610720050ed2e79 --- /dev/null +++ b/Modules/Filtering/Polarimetry/include/otbPolarimetryTags.h @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2005-2017 Centre National d'Etudes Spatiales (CNES) + * + * This file is part of Orfeo Toolbox + * + * https://www.orfeo-toolbox.org/ + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef otbPolarimetryTags_h +#define otbPolarimetryTags_h + +namespace otb +{ + namespace polarimetry_tags + { + struct hh {}; + struct hv {}; + struct vh {}; + struct vv {}; + } // end namespace polarimetry_tags +} // end namespace otb + +#endif diff --git a/Modules/Filtering/Polarimetry/include/otbSinclairImageFilters.h b/Modules/Filtering/Polarimetry/include/otbSinclairImageFilters.h new file mode 100644 index 0000000000000000000000000000000000000000..3ea2f8b620739f1876328f7af4924d02058f6cd8 --- /dev/null +++ b/Modules/Filtering/Polarimetry/include/otbSinclairImageFilters.h @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2005-2017 Centre National d'Etudes Spatiales (CNES) + * + * This file is part of Orfeo Toolbox + * + * https://www.orfeo-toolbox.org/ + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef otbSinclairImageFilters_h +#define otbSinclairImageFilters_h + +#include "otbPolarimetryTags.h" +#include "otbFunctorImageFilter.h" +#include "otbSinclairToCovarianceMatrixFunctor.h" + +namespace otb +{ + // This is the entire declaration of SinclairToCovarianceMatrixFilter +template <typename TInputImage, typename TOutputImage> +using SinclairToCovarianceMatrixFilter = FunctorImageFilter< Functor::SinclairToCovarianceMatrixFunctor <typename TInputImage::PixelType,typename TInputImage::PixelType,typename TInputImage::PixelType,typename TInputImage::PixelType, + typename TOutputImage::PixelType> , + std::tuple<polarimetry_tags::hh, + polarimetry_tags::hv, + polarimetry_tags::vh, + polarimetry_tags::vv> >; + + +} // end namespace otb + +#endif diff --git a/Modules/Filtering/Polarimetry/otb-module.cmake b/Modules/Filtering/Polarimetry/otb-module.cmake index 819bb964cfad2b0d711e57bde46f49d16bfddda8..5d44ff3adaba1c9857568a1bc3e1e1b5d0f2532e 100644 --- a/Modules/Filtering/Polarimetry/otb-module.cmake +++ b/Modules/Filtering/Polarimetry/otb-module.cmake @@ -29,6 +29,7 @@ otb_module(OTBPolarimetry DEPENDS OTBCommon OTBITK + OTBFunctor TEST_DEPENDS OTBImageBase