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

Comparing trunk/OOPSE-3.0/src/types/BondStamp.hpp (file contents):
Revision 1492 by tim, Fri Sep 24 16:27:58 2004 UTC vs.
Revision 2545 by tim, Wed Jan 11 22:50:55 2006 UTC

# Line 1 | Line 1
1 < #ifndef __BONDSTAMP_H__
2 < #define __BONDSTAMP_H__
1 > /*
2 > * Copyright (c) 2005 The University of Notre Dame. All Rights Reserved.
3 > *
4 > * The University of Notre Dame grants you ("Licensee") a
5 > * non-exclusive, royalty free, license to use, modify and
6 > * redistribute this software in source and binary code form, provided
7 > * that the following conditions are met:
8 > *
9 > * 1. Acknowledgement of the program authors must be made in any
10 > *    publication of scientific results based in part on use of the
11 > *    program.  An acceptable form of acknowledgement is citation of
12 > *    the article in which the program was described (Matthew
13 > *    A. Meineke, Charles F. Vardeman II, Teng Lin, Christopher
14 > *    J. Fennell and J. Daniel Gezelter, "OOPSE: An Object-Oriented
15 > *    Parallel Simulation Engine for Molecular Dynamics,"
16 > *    J. Comput. Chem. 26, pp. 252-271 (2005))
17 > *
18 > * 2. Redistributions of source code must retain the above copyright
19 > *    notice, this list of conditions and the following disclaimer.
20 > *
21 > * 3. Redistributions in binary form must reproduce the above copyright
22 > *    notice, this list of conditions and the following disclaimer in the
23 > *    documentation and/or other materials provided with the
24 > *    distribution.
25 > *
26 > * This software is provided "AS IS," without a warranty of any
27 > * kind. All express or implied conditions, representations and
28 > * warranties, including any implied warranty of merchantability,
29 > * fitness for a particular purpose or non-infringement, are hereby
30 > * excluded.  The University of Notre Dame and its licensors shall not
31 > * be liable for any damages suffered by licensee as a result of
32 > * using, modifying or distributing the software or its
33 > * derivatives. In no event will the University of Notre Dame or its
34 > * licensors be liable for any lost revenue, profit or data, or for
35 > * direct, indirect, special, consequential, incidental or punitive
36 > * damages, however caused and regardless of the theory of liability,
37 > * arising out of the use of or inability to use software, even if the
38 > * University of Notre Dame has been advised of the possibility of
39 > * such damages.
40 > */
41 >
42 > #ifndef TYPES_BONDSTAMP_HPP
43 > #define TYPES_BONDSTAMP_HPP
44  
45 < #include "io/LinkedAssign.hpp"
45 > #include "types/DataHolder.hpp"
46  
47 < class BondStamp{
47 > namespace oopse {
48 > class BondStamp : public DataHolder {
49  
50 < public:
51 <  BondStamp();
52 <  ~BondStamp();
53 <  
54 <  void assignString( char* lhs, char* rhs );
55 <  void assignDouble( char* lhs, double rhs );
56 <  void assignInt( char* lhs, int rhs );
57 <  void members( int the_a, int the_b );
58 <  void constrain( double the_constraint );
59 <  char* checkMe( void );
50 >    public:
51 >      void setMembers(std::vector<int> members) {
52 >        if (members.size() ==2) {
53 >            a = members[0];
54 >            b = members[1];
55 >            if (a < 0 || b < 0) {
56 >                std::ostringstream oss;
57 >                oss << "BondStamp Error: members" << containerToString(members) << " is invalid" << std::endl;
58 >                throw OOPSEException(oss.str());
59 >            }
60 >        } else {
61 >            std::ostringstream oss;
62 >            oss << "BondStamp Error: members" << containerToString(members) << " is invalid" << std::endl;
63 >            throw OOPSEException(oss.str());
64 >        }
65 >        
66  
67 <  int getA( void ){ return a; }
68 <  int getB( void ){ return b; }
69 <
70 <  int haveExtras( void ) { return have_extras; }
71 <  LinkedAssign* getExtras( void ) { return unhandled; }
72 <
73 < private:
26 <
27 <  int a, b; //the members
28 <  double constraint;
29 <  short int have_mbrs, have_constraint;
30 <
31 <  LinkedAssign* unhandled; // the unhandled assignments
32 <  short int have_extras;
33 <
67 >      }
68 >      
69 >      int getA() {return a;}
70 >      int getB() {return b;}
71 >    private:
72 >        int a;
73 >        int b;
74   };
75  
76 <
76 > }
77   #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines