This file is indexed.

/usr/include/BALL/NMR/johnsonBoveyShiftProcessor.h is in libball1.4-dev 1.4.3~beta1-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
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
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
// $Id: johnsonBoveyShiftProcessor.h,v 1.18 2005/12/23 17:01:56 amoll Exp $
//

#ifndef BALL_COMMON_H
#	include <BALL/common.h>
#endif

#ifndef BALL_KERNEL_EXPRESSION_H
#	include <BALL/KERNEL/expression.h>
#endif

#ifndef BALL_NMR_SHIFTMODULE_H
#	include <BALL/NMR/shiftModule.h>
#endif

#ifndef BALL_DATATYPE_STRINGHASHMAP_H
#	include <BALL/DATATYPE/stringHashMap.h>
#endif

#ifndef BALL_FORMAT_PARAMETERS_H
#	include <BALL/FORMAT/parameters.h>
#endif

#ifndef BALL_FORMAT_PARAMETERSECTION_H
#	include <BALL/FORMAT/parameterSection.h>
#endif

#include <list>

namespace BALL 
{		
	/**	Shift assignment processor implementing Johnson Bovey theory. 
	\ingroup ShiftModulesNMR		
	*/
	class BALL_EXPORT JohnsonBoveyShiftProcessor
		:	public ShiftModule
	{
		public:

    BALL_CREATE(JohnsonBoveyShiftProcessor)

		/**	@name	Type definitions
		*/
		//@{

		///
		struct BALL_EXPORT Ring
    {
			double	radius;
			double	intensity;
			Size	electrons;
			std::vector<String>	atom_names;

			bool operator == (const Ring& ring) const;
			bool operator != (const Ring& ring) const { return !(*this == ring);}
		} ;
  
		//@}
		
    /** @name Enums and Constants
    */
    //@{

    /** A symbolic name for the ring current contribution to the chemical shift
        @see ShiftModule::PROPERTY__SHIFT
    */
    static const char* PROPERTY__RING_CURRENT_SHIFT;		
    //@}


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

		/**	Default constructor.
		*/
		JohnsonBoveyShiftProcessor();

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

		//@}
		/** @name	Processor specific functions.
		*/
		//@{

		/**	Start method.
		*/
		virtual bool start();

		/**	Finish method.
		*/
		virtual bool finish();

		/**	Application method
		*/
		virtual Processor::Result operator () (Composite& composite);
		
		//@}
		/**	@name Accessors
		*/
		//@{
			
		/** Initialize all parameters required
		*/
		virtual void init();
			
		//@}

		protected:

		std::list<Atom*>	proton_list_;	
		std::list<Atom*>	atom_list_;	
		std::list<Residue*>	aromat_list_;
		StringHashMap<Ring>	rings_;
		StringHashMap<Position>	residues_with_rings_;
		std::vector<Expression>	expressions_;
		
		double carlsonEllipticalIntegral1_(double, double, double);	// Carlson elliptical Integral of 1st kind
		double carlsonEllipticalIntegral2_(double, double, double);	// Carlson elliptical Integral of 2nd kind
		double legendreEllipticalIntegral1_(double, double);	// Legendre elliptical Integral of 1st kind
		double legendreEllipticalIntegral2_(double, double);	// Legendre elliptical Integral of 2nd kind
	};
  
} // namespace BALL