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

Comparing trunk/OOPSE-3.0/src/selection/Token.hpp (file contents):
Revision 2203 by tim, Mon Apr 11 20:16:50 2005 UTC vs.
Revision 2204 by gezelter, Fri Apr 15 22:04:00 2005 UTC

# Line 1 | Line 1
1 < /*
1 > /*
2   * Copyright (c) 2005 The University of Notre Dame. All Rights Reserved.
3   *
4   * The University of Notre Dame grants you ("Licensee") a
# Line 50 | Line 50 | namespace oopse {
50   namespace oopse {
51  
52  
53 < /**
54 < * @class Token
55 < * @todo document
56 < * @note translate from jmol
57 < */
58 < class Token {
53 >  /**
54 >   * @class Token
55 >   * @todo document
56 >   * @note translate from jmol
57 >   */
58 >  class Token {
59  
60 <    public:
60 >  public:
61  
62  
63 <        int tok;
64 <        boost::any value;
65 <        int intValue;
63 >    int tok;
64 >    boost::any value;
65 >    int intValue;
66  
67 <        Token() { tok = unknown;}
67 >    Token() { tok = unknown;}
68  
69 <        Token(const Token& token) {
70 <            *this = token;
71 <        }
69 >    Token(const Token& token) {
70 >      *this = token;
71 >    }
72          
73 <        Token(int MyTok, int myIntValue, const boost::any& myValue) {
74 <            this->tok = MyTok;
75 <            this->intValue = myIntValue;
76 <            this->value = myValue;
77 <        }
73 >    Token(int MyTok, int myIntValue, const boost::any& myValue) {
74 >      this->tok = MyTok;
75 >      this->intValue = myIntValue;
76 >      this->value = myValue;
77 >    }
78  
79 <        Token(int myTok, int myIntValue) {
80 <        this->tok = myTok;
81 <        this->intValue = myIntValue;
82 <        }
79 >    Token(int myTok, int myIntValue) {
80 >      this->tok = myTok;
81 >      this->intValue = myIntValue;
82 >    }
83  
84 <        Token(int myTok) {
85 <            this->tok = myTok;
86 <        }
84 >    Token(int myTok) {
85 >      this->tok = myTok;
86 >    }
87  
88 <        Token(int myTok,  const boost::any& myValue) {
89 <            this->tok = myTok;
90 <            this->value = myValue;
91 <        }
88 >    Token(int myTok,  const boost::any& myValue) {
89 >      this->tok = myTok;
90 >      this->value = myValue;
91 >    }
92          
93 <        const static int nada              =  0;
94 <        const static int identifier        =  1;
95 <        const static int integer           =  2;
96 <        const static int decimal           =  3;
97 <        const static int string            =  4;
98 <        const static int unknown           =  5;
99 <        const static int keyword           =  6;
100 <        const static int whitespace        =  7;
101 <        const static int comment           =  8;
102 <        const static int endofline         = 9;
103 <        const static int endofstatement    = 10;
93 >    const static int nada              =  0;
94 >    const static int identifier        =  1;
95 >    const static int integer           =  2;
96 >    const static int decimal           =  3;
97 >    const static int string            =  4;
98 >    const static int unknown           =  5;
99 >    const static int keyword           =  6;
100 >    const static int whitespace        =  7;
101 >    const static int comment           =  8;
102 >    const static int endofline         = 9;
103 >    const static int endofstatement    = 10;
104  
105 <        const static int command           = (1 <<  8);
106 <        const static int expressionCommand = (1 <<  9); // expression command
107 <        const static int expression        = (1 << 10); /// expression term
105 >    const static int command           = (1 <<  8);
106 >    const static int expressionCommand = (1 <<  9); // expression command
107 >    const static int expression        = (1 << 10); /// expression term
108  
109 <        // generally, the minus sign is used to denote atom ranges
110 <        // this property is used for the few commands which allow negative integers
111 <        const static int negnums      = (1 << 11);
109 >    // generally, the minus sign is used to denote atom ranges
110 >    // this property is used for the few commands which allow negative integers
111 >    const static int negnums      = (1 << 11);
112  
113 <        //expression involves coordinates which will change every frame, such as withins
114 <        const static int dynamic        = (1 << 12);
113 >    //expression involves coordinates which will change every frame, such as withins
114 >    const static int dynamic        = (1 << 12);
115  
116 <        // every property is also valid in an expression context
117 <        const static int atomproperty      = (1 << 12) | expression | negnums;
118 <        // every predefined is also valid in an expression context
119 <        const static int comparator        = (1 << 13) | expression;
120 <        const static int predefinedset     = (1 << 14) | expression;
121 <        const  static int embeddedExpression= (1 << 15); // embedded expression
122 <        const static int index = (1 << 16) | expression;
123 <        // rasmol commands
124 <        const static int define       = command | expressionCommand |1;
125 <        const static int select       = command |expressionCommand |2 ;
116 >    // every property is also valid in an expression context
117 >    const static int atomproperty      = (1 << 12) | expression | negnums;
118 >    // every predefined is also valid in an expression context
119 >    const static int comparator        = (1 << 13) | expression;
120 >    const static int predefinedset     = (1 << 14) | expression;
121 >    const  static int embeddedExpression= (1 << 15); // embedded expression
122 >    const static int index = (1 << 16) | expression;
123 >    // rasmol commands
124 >    const static int define       = command | expressionCommand |1;
125 >    const static int select       = command |expressionCommand |2 ;
126  
127 <        //predefine
128 <        //const static int selected    = predefinedset |0;
127 >    //predefine
128 >    //const static int selected    = predefinedset |0;
129  
130 <        // atom expression operators
131 <        const static int leftparen    = expression |  0;
132 <        const static int rightparen   = expression |  1;
133 <        const static int to                = expression | 2;
134 <        const static int opAnd        = expression |  3;
135 <        const static int opOr         = expression |  4;
136 <        const static int opNot        = expression |  5;
137 <        const static int within       = expression | dynamic | 6;
138 <        const static int asterisk     = expression |  7;
139 <        const static int dot          = expression | 8;
140 <        const static int all          = expression | 9 ;
141 <        const static int none      = expression | 10;
142 <        const static int name      = expression | 11;
143 <        // miguel 2005 01 01
144 <        // these are used to demark the beginning and end of expressions
145 <        // they do not exist in the source code, but are emitted by the
146 <        // expression compiler
147 <        const static int expressionBegin = expression | 100;
148 <        const static int expressionEnd   = expression | 101;
130 >    // atom expression operators
131 >    const static int leftparen    = expression |  0;
132 >    const static int rightparen   = expression |  1;
133 >    const static int to                = expression | 2;
134 >    const static int opAnd        = expression |  3;
135 >    const static int opOr         = expression |  4;
136 >    const static int opNot        = expression |  5;
137 >    const static int within       = expression | dynamic | 6;
138 >    const static int asterisk     = expression |  7;
139 >    const static int dot          = expression | 8;
140 >    const static int all          = expression | 9 ;
141 >    const static int none      = expression | 10;
142 >    const static int name      = expression | 11;
143 >    // miguel 2005 01 01
144 >    // these are used to demark the beginning and end of expressions
145 >    // they do not exist in the source code, but are emitted by the
146 >    // expression compiler
147 >    const static int expressionBegin = expression | 100;
148 >    const static int expressionEnd   = expression | 101;
149  
150 <        const static int mass         = atomproperty | 0;
151 <        const static int charge       = atomproperty | 1;
150 >    const static int mass         = atomproperty | 0;
151 >    const static int charge       = atomproperty | 1;
152          
153 <        const static int opGT         = comparator |  0;
154 <        const static int opGE         = comparator |  1;
155 <        const static int opLE         = comparator |  2;
156 <        const static int opLT         = comparator |  3;
157 <        const static int opEQ         = comparator |  4;
158 <        const static int opNE         = comparator |  5;
153 >    const static int opGT         = comparator |  0;
154 >    const static int opGE         = comparator |  1;
155 >    const static int opLE         = comparator |  2;
156 >    const static int opLT         = comparator |  3;
157 >    const static int opEQ         = comparator |  4;
158 >    const static int opNE         = comparator |  5;
159  
160 <        static Token tokenExpressionBegin;
161 <        static Token tokenExpressionEnd;
160 >    static Token tokenExpressionBegin;
161 >    static Token tokenExpressionEnd;
162  
163 < };
163 >  };
164  
165  
166   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines