This file is indexed.

/usr/include/OTB-5.8/otbLogPolarTransform.h is in libotb-dev 5.8.0+dfsg-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
/*=========================================================================

  Program:   ORFEO Toolbox
  Language:  C++
  Date:      $Date$
  Version:   $Revision$


  Copyright (c) Centre National d'Etudes Spatiales. All rights reserved.
  See OTBCopyright.txt for details.


     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
     PURPOSE.  See the above copyright notices for more information.

=========================================================================*/
#ifndef otbLogPolarTransform_h
#define otbLogPolarTransform_h

#include "otbTransform.h"

namespace otb
{
/** \class LogPolarTransform
 * \brief Implement the log-polar coordinate transform.
 *
 * The log-polar coordinate system is a polar system where the
 * radial coordinate has a logarithmic scale.
 *
 * Given \f$(\rho,\theta)\f$ the coordinate in the log-polar system, the
 * corresponding cartesian coordinates are
 *
 * \f$ x-xc=exp(\rho)*cos(\theta) \f$
 * \f$ y-yc=exp(\rho)*sin(\theta) \f$
 *
 * Where (xc, yc) is the center of the log-polar transform in the cartesian space.
 * Please note that this center can NOT be represented in log-polar.
 *
 * \sa InverseLogPolarTransform
 * \ingroup Transform
 *
 * \ingroup OTBTransform
 */
template <class TScalarType>
class ITK_EXPORT LogPolarTransform
  : public Transform<TScalarType, 2, 2>
{
public:
  /** Standard typedef */
  typedef LogPolarTransform                 Self;
  typedef Transform<TScalarType, 2, 2> Superclass;
  typedef itk::SmartPointer<Self>           Pointer;
  typedef itk::SmartPointer<const Self>     ConstPointer;
  /** Creation through object factory */
  itkNewMacro(Self);
  /** Runtime information */
  itkTypeMacro(LogPolarTransform, Transform);

  /** Template related typedefs */
  typedef TScalarType ScalarType;

  /** Superclass related typedefs */
  typedef typename Superclass::InputPointType      InputPointType;
  typedef typename Superclass::OutputPointType     OutputPointType;
  typedef typename Superclass::InputVectorType     InputVectorType;
  typedef typename Superclass::OutputVectorType    OutputVectorType;
  typedef typename Superclass::InputVnlVectorType  InputVnlVectorType;
  typedef typename Superclass::OutputVnlVectorType OutputVnlVectorType;
  typedef typename Superclass::ParametersType      ParametersType;
  typedef itk::FixedArray<TScalarType, 2>          ScaleType;

  /** Set/Get the origin */
  itkSetMacro(Center, InputPointType);
  itkGetConstReferenceMacro(Center, InputPointType);

  /** Set/Get the scales */
  itkSetMacro(Scale, ScaleType);
  itkGetConstReferenceMacro(Scale, ScaleType);
  /**
   * Set the transform parameters through the standard interface.
   * \param parameters The parameters of the transform.
   */
  void SetParameters(const ParametersType& parameters) ITK_OVERRIDE;
  /**
   * Get the transform parameters through the standard interface.
   * \return The parameters of the transform.
   */
  ParametersType& GetParameters(void) const ITK_OVERRIDE;

  /**
   * Set the Fixed Parameters
   * \param param The fixed parameters of the transform.
   */
  void SetFixedParameters( const ParametersType & param) ITK_OVERRIDE
    { this->m_FixedParameters = param; }

  /**
   * Get the Fixed Parameters
   * \return The Fixed parameters of the transform.
   */
  const ParametersType& GetFixedParameters(void) const ITK_OVERRIDE{return this->m_FixedParameters; }
  /**
   * Transform a point.
   * \param point The point to transform.
   * \return The transformed point.
   */
  OutputPointType TransformPoint(const InputPointType& point) const ITK_OVERRIDE;
  /**
   * Transform a vector representing a point.
   * \param vector The point to transform.
   * \return The transformed point.
   */
  using Superclass::TransformVector;
  OutputVectorType TransformVector(const InputVectorType& vector) const ITK_OVERRIDE;

  /**
   * Transform a vnl vector representing a point.
   * \param vector The point to transform.
   * \return The transformed point.
   */
  OutputVnlVectorType TransformVector(const InputVnlVectorType& vector) const ITK_OVERRIDE;

protected:
  /** Constructor */
  LogPolarTransform();
  /** Destructor */
  ~LogPolarTransform() ITK_OVERRIDE;
  /** PrintSelf method */
  void PrintSelf(std::ostream& os, itk::Indent indent) const ITK_OVERRIDE;

private:
  LogPolarTransform(const Self &); // purposely not implemented
  void operator =(const Self&); // purposely not implemented

  InputPointType m_Center;
  ScaleType      m_Scale;
};
} // end namespace otb
#ifndef OTB_MANUAL_INSTANTIATION
#include "otbLogPolarTransform.txx"
#endif

#endif