HBondShiftProcessor.h

Go to the documentation of this file.
00001 // -*- Mode: C++; tab-width: 2; -*-
00002 // vi: set ts=2:
00003 //
00004 // $Id: HBondShiftProcessor.h,v 1.14 2005/12/23 17:01:55 amoll Exp $
00005 //
00006 
00007 #ifndef BALL_NMR_HBONDSHIFTPROCESSOR_H
00008 #define BALL_NMR_HBONDSHIFTPROCESSOR_H
00009 
00010 #ifndef BALL_KERNEL_PTE_H
00011 # include <BALL/KERNEL/PTE.h>
00012 #endif
00013 
00014 #ifndef BALL_KERNEL_BOND_H
00015 # include <BALL/KERNEL/bond.h>
00016 #endif
00017 
00018 #ifndef BALL_KERNEL_ATOM_H
00019 # include <BALL/KERNEL/atom.h>
00020 #endif
00021 
00022 #ifndef BALL_NMR_SHIFT_MODULE_H
00023 # include <BALL/NMR/shiftModule.h>
00024 #endif
00025 
00026 #ifndef BALL_FORMAT_PARAMETERSECTION_H
00027 # include <BALL/FORMAT/parameterSection.h>
00028 #endif
00029 
00030 namespace BALL
00031 {
00035   class BALL_EXPORT HBondShiftProcessor
00036   : public ShiftModule
00037   {
00038     public:
00039     BALL_CREATE(HBondShiftProcessor)
00040 
00041     
00044 
00045     static const char* PROPERTY__HBOND_SHIFT;
00046 
00048 
00051 
00054     HBondShiftProcessor()
00055       ;
00056 
00059     HBondShiftProcessor(const HBondShiftProcessor& processor)
00060       ;
00061 
00064     virtual ~HBondShiftProcessor()
00065       ;
00066 
00068 
00071 
00079     virtual void init();
00080 
00082 
00085 
00088     virtual bool start();
00089 
00094     virtual Processor::Result operator () (Composite& composite);
00095 
00096     
00109     virtual bool finish();
00110 
00112 
00113     protected:
00114 
00117     std::list<Atom*> donor_list_;
00118 
00121     std::list<Atom*> acceptor_list_;
00122 
00125     float a_;
00126 
00129     float b_;
00130 
00133     float minimum_bond_length_;
00134 
00137     float maximum_bond_length_;
00138 };
00139 } // namespace BALL
00140 
00141 #endif