ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/branches/new_design/OOPSE-3.0/src/types/CharmmTorsionType.hpp
(Generate patch)

Comparing branches/new_design/OOPSE-3.0/src/types/CharmmTorsionType.hpp (file contents):
Revision 1798 by tim, Thu Nov 18 23:26:27 2004 UTC vs.
Revision 1799 by tim, Tue Nov 30 03:49:22 2004 UTC

# Line 32 | Line 32
32  
33   #ifndef TYPES_CHARMMTORSIONTYPE_HPP
34   #define TYPES_CHARMMTORSIONTYPE_HPP
35 + #include <algorithm>
36 + #include <cassert>
37 + #include <vector>
38  
39   #include "types/TorsionType.hpp"
40   namespace oopse {
41  
42 <    struct CharmmTorsionParameter {
43 <        double kchi;
44 <        int n;
45 <        double delta;
46 <    };
47 <  
42 > struct CharmmTorsionParameter {
43 >    double kchi;
44 >    int n;
45 >    double delta;
46 > };
47 >
48 > class SamePeriodicityFunctor {
49 >    public:
50 >        SamePeriodicityFunctor(int n) : n_(n) {}
51 >        bool operator()(CharmmTorsionParameter p) {
52 >            return p.n == n_;
53 >        }
54 >        
55 >   private:
56 >        int n_;
57 > };
58   /**
59   * @class CharmmTorsionType CharmmTorsionType.hpp "types/CharmmTorsionType.hpp"
60   */
# Line 51 | Line 64 | class CharmmTorsionType : public TorsionType{
64  
65          void setCharmmTorsionParameter(CharmmTorsionParameter param) {
66  
67 <            assert(param.n >=0);
67 >            assert(param.n >= 0 && param.n < 6);
68  
69 <            std::vector<CharmmTorsionParameter> i ;
70 <            i = std::find(parameter_.begin(), parameter_.end(), );
69 >            std::vector<CharmmTorsionParameter>::iterator i ;
70 >            i = std::find_if(parameter_.begin(), parameter_.end(), SamePeriodicityFunctor(param.n));
71  
72              if (i != parameter_.end()) {
73                  std::cerr << "a parameter set with " << param.n <<" is already there" << std::endl;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines