This file is indexed.

/usr/include/BALL/NMR/shiftModel2D.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
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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
#ifndef BALL_NMR_SHIFTMODEL2D_H
#define BALL_NMR_SHIFTMODEL2D_H

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

#ifndef BALL_NMR_SPECTRUM_H
	#include <BALL/NMR/spectrum.h>
#endif

#include <vector>

namespace BALL 
{
	/**	A class representing a complete parameterized 2D NMR shift model.
	The model consists of peak list, a system, a spectrum type and parameters
	*/
	class BALL_EXPORT ShiftModel2D 
		: public ShiftModule	
	{	
		public:
		
		BALL_CREATE(ShiftModel2D)
		
		/**	@name	Type definitions
		*/
		//@{

		enum SPECTRUM_TYPE{
			HSQC_NH = 1, 
			HSQC_CH, 
			COSY_HH, // ist noch nicht implementiert!!! muesste ueber 2 Bindungslaengen spin = 1/2 pruefen.... 
			COSY_CH,  //
			TOCSY_HH, 
			TOCSY_CH, 
			TOCSY_NH
		};
		
		//@}
		/**	@name	Constructors and Destructors
		*/
		//@{
		
		/** Default Constructor
		*/
		ShiftModel2D();

		/** Detailed Constructor.
		 *  If compute_shifts is set to false, we assume that the shifts have been previously assigned, and will use the
		 *  properties as we find them in the system.
		 */
		ShiftModel2D(const String& filename,SPECTRUM_TYPE st, bool compute_shifts=true);
		
		/** Detailed Constructor.
		 *  If compute_shifts is set to false, we assume that the shifts have been previously assigned, and will use the
		 *  properties as we find them in the system.
		 */
		ShiftModel2D(const String& filename,SPECTRUM_TYPE st, Vector2 origin, Vector2 dimension, Vector2 spacing, bool compute_shifts=true);	
		
		/**	Copy constructor
		*/
		ShiftModel2D(const ShiftModel2D& model);

		/**	Destructor
		*/
		virtual ~ShiftModel2D();
		
		/**	Clear method.	
		*/
		void clear();
		
		//@}
		/**	@name Accessors
		*/	
		//@{
		
		/**	Set the parameter filename.
		*/
		void setFilename(const String& filename)
			throw(Exception::FileNotFound);

		/**	Return the parameter filename.
		*/
		const String& getFilename() const
		{
			return parameters_.getFilename();
		};
		
		/**
		*/
		const Parameters& getParameters() const
		{
			return parameters_;
		};

		/**	Get the peaks
		*/
		const std::vector<Peak2D>& getPeaks() const
		{
			return peaks_;
		};
		
		/**	Set the peaks
		*/
		void setPeaks(std::vector<Peak2D> peaks)	
		{
			peaks_ = peaks;
		};
			
		/**	Get the origin
		*/
		const Vector2& getOrigin() const
		{
			return origin_;
		};
 		
		/**	Set the origin
		*/
		void setOrigin(const Vector2& origin) 
		{
			origin_ = origin;
		};
 
		/**	Get the dimension
		*/
		const Vector2& getDimension() const
		{ 
			return dimension_;
		};

		/**	Set the dimension 
		*/
		void setDimension(const Vector2& dimension) 
		{ 
			dimension_ = dimension; 
		}

		/**	Get the spacing
		*/
		const Vector2& getSpacing() const
		{
			return spacing_;
		};
		
	
		/**	Set the system
		*/
		void setSystem( System* system)
		{
			system_ = system;
		};
	
		/**	Return the system
		*/
		const System* getSystem() const
		{
			return system_;
		};
		

		void operator >> (Spectrum2D& spectrum);
		
		//@}
		/**	@name	Predicates
		*/
		//@{
			
		/**	Validity flag
		*/
		bool isValid() const;
		

		//@}
		/**	@name	Processor related methods
		*/
		//@{

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

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

		/**	Application method
		*/
		Processor::Result operator () (Composite& composite);
		//@}

	protected:	
		
		/*_	Initialize the model from the parameter file.
				This method assumes that object has a valid	parameter file assigned.
				It sets {\tt valid_} to <b>  true </b> if it could create a shift model 
				from the contents of the parameter file.
		*/
		bool init_()
			throw(Exception::FileNotFound);
		
		void createPeak_(Atom* proton, Atom* atom, float peakwidth_proton, float peakwidth_atom);
		/*_ The spectrum peaks
		 * */
		std::vector<Peak2D> peaks_;	
		
		/*_ The origin of the data
		*/
		Vector2             origin_;	
		
		/*_ Dimension of the data
		*/
		Vector2             dimension_;	
		
		/*_ spacing of the data
		 */
		Vector2             spacing_;
	
		/*_  spectrum type
		 * */
		SPECTRUM_TYPE 			type_;
		
		/*_	The parameters object ??  Why do we need them???  evtl durch String filename ersetzten
		*/
		Parameters				parameters_;

		/*_ pointer to the system
		 */
		System* 					system_;
		
		/*_	The validity flag.
				Set to <b>  true </b> if the object was initialized correctly.
		*/
		bool valid_;

		/// Flag for shift computation
		bool compute_shifts_;

	};
	
	std::ostream& operator << (std::ostream& os, const BALL::ShiftModel2D& shiftmodel);

} // namespace BALL

#endif // BALL_NMR_SHIFTMODEL2D_H