This file is indexed.

/usr/include/BALL/MATHS/piecewisePolynomial.h is in libball1.4-dev 1.4.1+20111206-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
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
// $Id: piecewisePolynomial.h,v 1.19 2005/12/23 17:01:48 amoll Exp $
//

#ifndef BALL_MATHS_PPOLYNOMIAL_H
#define BALL_MATHS_PPOLYNOMIAL_H

#ifndef BALL_MATHS_PIECEWISEFUNCTION_H
# include <BALL/MATHS/piecewiseFunction.h>
#endif

namespace BALL 
{
	/** Piecewise polynomial curve object.
			This class provides a trivial implementation of piecewise polynomial
			curves. More useful spline/B-spline implementations might follow in the
			future. The PPCurves are of the form 
			\f[\sum_{i=0}^{d} a_i^{(k)} (x - x_0^{(k)})^i\f], where \f$k\f$ is the index of
			the interval and \f$d\f$ is the overall degree of the PPCurve. Note that
			there is no warranty that the defined curve is continuously
			differentiable or even continuous.
		\ingroup 	FunctionClasses
	 */

	class BALL_EXPORT PiecewisePolynomial
		:	public PiecewiseFunction
	{
		public:

		BALL_CREATE(PiecewisePolynomial)

		/**	@name	Constructors and Destructors
		*/
		//@{

		/** Default constructor 
		*/
		PiecewisePolynomial();

		/** Copy constructor 
		*/
		PiecewisePolynomial(const PiecewisePolynomial& polynomial) ;

		/** Detailed Constructor.
				This constructor does <b>not</b> check sanity of the arguments 
		 */
		PiecewisePolynomial(Size degree, const std::vector<Interval>& intervals,
				const std::vector<Coefficients>& coefficients) ;

		/** Destructor 
		*/
		virtual ~PiecewisePolynomial();

		//@}
		/** @name Assignment 
		*/
		//@{

		/** Assignment operator 
		*/
		PiecewisePolynomial& operator = (const PiecewisePolynomial& poly);

		/** Clear method 
		*/
		virtual void clear();

		//@}
		/** @name Accessors
		*/
		//@{

		/** Set the instance manually 
		*/
		void set(Size degree, const std::vector<Interval>& intervals, const std::vector<Coefficients>& coeffs);

		/// set the degree of the polynomial
		void setDegree(Size degree);

		/// get the degree of the polynomial
		Size getDegree() const;

		/// compute the value of the PiecewisePolynomial at a given x
		virtual double operator () (double x) const;

		//@}
		/** @name Predicates 
		*/
		//@{

		/** Equality operator 
		*/
		bool operator == (const PiecewisePolynomial& poly) const;

		//@}
		/** @name Debugging and Diagnostics 
		*/
		//@{

		/** Dumps the whole content of the object 
		*/
		virtual void dump (std::ostream& s = std::cout, Size depth = 0) const;

		//@}

		protected:

		/*_ The degree of the polynomial 
		*/
		Size degree_;

	};

}

#endif // BALL_MATHS_PPPOLYNOMIAL_H