This file is indexed.

/usr/include/ossim/imaging/ossimHistogramEqualization.h is in libossim-dev 1.7.21-4.

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
//*******************************************************************
// Copyright (C) 2000 ImageLinks Inc. 
//
// License:  LGPL
// 
// See LICENSE.txt file in the top level directory for more details.
// 
// Author: Garrett Potts
//
//*************************************************************************
// $Id: ossimHistogramEqualization.h 11721 2007-09-13 13:19:34Z gpotts $
#ifndef ossimHistogramEqualization_HEADER
#define ossimHistogramEqualization_HEADER
#include <ossim/imaging/ossimImageSourceHistogramFilter.h>

class OSSIMDLLEXPORT ossimHistogramEqualization : public ossimImageSourceHistogramFilter
{
public:
   ossimHistogramEqualization();
   ossimHistogramEqualization(ossimImageSource* inputSource,
                              ossimRefPtr<ossimMultiResLevelHistogram> histogram);
   ossimHistogramEqualization(ossimImageSource* inputSource,
                              ossimRefPtr<ossimMultiResLevelHistogram> histogram,
                              bool inverseFlag);
   virtual ~ossimHistogramEqualization();
   virtual ossimRefPtr<ossimImageData> getTile(const ossimIrect& tileRect,
                                               ossim_uint32 resLevel=0);

   virtual void setHistogram(ossimRefPtr<ossimMultiResLevelHistogram> histogram);
   virtual bool setHistogram(const ossimFilename& filename);

   virtual bool getInverseFlag()const;
   virtual void initialize();
   virtual void setInverseFlag(bool inverseFlag);
   
   virtual bool loadState(const ossimKeywordlist& kwl,
                          const char* prefix=NULL);
   virtual bool saveState(ossimKeywordlist& kwl,
                          const char* prefix=NULL)const;

   virtual std::ostream& print(std::ostream& out) const;

protected:

   /**
    * Called on first getTile, will initialize all data needed.
    */
   void allocate();
   
  ossimRefPtr<ossimImageData> theTile;
   /*!
    * This will be used in some of the histogram
    * based operations.
    */
   ossimRefPtr<ossimMultiResLevelHistogram> theAccumulationHistogram;

   /*!
    * Indicates if you should equalize or unequalize an input stream.
    * If the inverse flag is true then it will indicate that we should
    * assume that the input stream is already equalized and we should
    * invert based on the current accumulation histogram.
    *
    *
    * This flag is defaulted to false.
    */
   bool                         theInverseFlag;
   /*!
    * We will create a LUT for each band that directly maps
    * an input value to an equalized output.
    */
   vector<double*> theForwardLut;
   
   /*!
    * We will create a LUT for each band that directly maps
    * an input value to an un-equalized output.
    */
   vector<double*> theInverseLut;

   
  std::vector<ossim_uint32> theBandList;
   virtual void computeAccumulationHistogram();

  template<class T>
  ossimRefPtr<ossimImageData> runEqualizationAlgorithm(T dummyVariable,
                                                       ossimRefPtr<ossimImageData> tile);

   /*!
    * We will pre-compute the luts for the forward and inverse
    * equalization.  Note: the inverse is a little more tricky
    * and since we must fill the empty spots missed by the
    * inverse.  We use a linear interpolation between valid
    * values for this.
    */
   virtual void initializeLuts();
   virtual void deleteLuts();

TYPE_DATA
};
#endif /* #ifndef ossimHistogramEqualization_HEADER */