This file is indexed.

/usr/include/OTB-6.4/otbRCC8Graph.txx is in libotb-dev 6.4.0+dfsg-1.

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
/*
 * 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 otbRCC8Graph_txx
#define otbRCC8Graph_txx

#include "otbRCC8Graph.h"

namespace otb
{
/**
 * Constructor
 */
template <class TVertex>
RCC8Graph<TVertex>
::RCC8Graph()
{
  m_NumberOfVertices = 0;
}
/**
 * since the number of vertices is mandatory to instantiate the
 * internal boost representation, the build method has to be called
 * once this parameter is set.
 */
template <class TVertex>
void
RCC8Graph<TVertex>
::Build(void)
{
  this->InitializeGraph(m_NumberOfVertices - 1);
}
/**
 * Initialize a range of vertex.
 * \param num The index of the last vertices to initialize.
 */
template <class TVertex>
void
RCC8Graph<TVertex>
::InitializeGraph(unsigned int num)
{
  for (unsigned int i = boost::num_vertices(m_Graph); i <= num; ++i)
    {
    VertexDescriptorType id = boost::add_vertex(m_Graph);
    VertexPointerType    vertex = VertexType::New();
    m_Graph[id] = vertex;
    }
}
/**
 * Set a vertex.
 * \param index The index of the vertex in the graph.
 * \param vertex The vertex to set.
 */
template<class TVertex>
void
RCC8Graph<TVertex>
::SetVertex(unsigned int index, VertexPointerType vertex)
{
  if (index >= m_NumberOfVertices)
    {
    this->InitializeGraph(index);
    m_NumberOfVertices = index + 1;
    }
  VertexDescriptorType v = *boost::vertices(m_Graph).first;
  m_Graph[v + index] = vertex;
}
/**
 * Get a vertex.
 * \param index The index of the vertex in the graph
 * \return The vertex.
 */
template <class TVertex>
typename RCC8Graph<TVertex>
::VertexPointerType
RCC8Graph<TVertex>
::GetVertex(unsigned int index)
{
  VertexDescriptorType v = *boost::vertices(m_Graph).first;
  return m_Graph[v + index];
}
/**
 * Add an edge in the graph.
 * \param index1 The index of the source vertex.
 * \param index2 The index of the target vertex.
 * \param r The rcc8 value associated to the edge.
 */
template <class TVertex>
void
RCC8Graph<TVertex>
::AddEdge(unsigned int index1, unsigned int index2, RCC8ValueType r)
{
  EdgeDescriptorType e = boost::add_edge(index1, index2, m_Graph).first;
  EdgeType::Pointer  edge = EdgeType::New();
  edge->SetValue(r);
  m_Graph[e] = edge;
}
/**
  * Get number of edges
  * /return The number of edges.
  */
template <class TVertex>
unsigned int
RCC8Graph<TVertex>
::GetNumberOfEdges(void)
{
  return num_edges(m_Graph);
}
/**
 * PrintSelf method
 */
template <class TVertex>
void
RCC8Graph<TVertex>
::PrintSelf(std::ostream& os, itk::Indent indent) const
{
  Superclass::PrintSelf(os, indent);
}
} // end namespace otb
#endif