BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
createSpectrumProcessor.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 // $Id: createSpectrumProcessor.h,v 1.26 2005/12/23 17:01:55 amoll Exp $
5 //
6 
7 #ifndef BALL_NMR_CREATESPECTRUMPROCESSOR_H
8 #define BALL_NMR_CREATESPECTRUMPROCESSOR_H
9 
10 #ifndef BALL_NMR_PEAK_H
11 # include <BALL/NMR/peak.h>
12 #endif
13 
14 #ifndef BALL_NMR_PEAKLIST_H
15 # include <BALL/NMR/peakList.h>
16 #endif
17 
18 #ifndef BALL_KERNEL_ATOM_H
19 # include <BALL/KERNEL/atom.h>
20 #endif
21 
22 #ifndef BALL_DATATYPE_REGULARDATA1D_H
24 #endif
25 
26 #ifndef BALL_KERNEL_EXPRESSION_H
27 # include <BALL/KERNEL/expression.h>
28 #endif
29 
30 #ifndef BALL_DATATYPE_STRINGHASHSET_H
32 #endif
33 
34 #ifndef BALL_NMR_SHIFTMODULE_H
35 # include <BALL/NMR/shiftModule.h>
36 #endif
37 
38 namespace BALL
39 {
40  class Atom;
41 
48  : public ShiftModule
49  {
50  public:
51 
55 
58 
61 
63 
66 
75  throw(Exception::FileNotFound, Exception::ParseError);
76 
79  virtual ~CreateSpectrumProcessor();
80 
82 
85 
94  virtual void init();
95 
104  virtual void init(const String& filename)
105  throw(Exception::ParseError, Exception::FileNotFound);
106 
109  virtual bool start()
110  ;
111 
114  virtual Processor::Result operator () (Composite& atom)
115  ;
116 
119  const PeakList1D& getPeakList() const;
120 
122 
125 
127  void setWidth(float width)
128  ;
129 
131  float getWidth() const
132  ;
133 
135  void setAtomAveraging(bool flag = true)
136  ;
137 
139  bool getAtomAveraging() const
140  ;
141 
143  void setAtomIgnoring(bool flag = true)
144  ;
145 
147  bool getAtomIgnoring() const
148  ;
149 
151  void setExpression(const String& expression)
152  ;
153 
154  const String& getExpression() const
155  ;
156 
158 
159  protected:
160 
161  PeakList1D peaklist_;
162  StringHashSet ignore_atoms_;
163  vector<String> equivalency_residues_;
164  vector<vector<String> > equivalency_atoms_;
165  float width_;
166  bool use_averaging_;
167  bool use_ignore_table_;
168  Expression expression_;
169  };
170 
185  BALL_EXPORT const RegularData1D& operator << (RegularData1D& data, const PeakList1D& peak_list) ;
186 
187 } //namespace BALL
188 
189 #endif // BALL_NMR_CREATESPECTRUMPROCESSOR_H