OS  2.10.2
OSnLParserData.h
Go to the documentation of this file.
1 /* $Id: OSnLParserData.h 4806 2014-06-07 11:37:46Z Gassmann $ */
14 #ifndef OSNLPARSERDATA_H
15 #define OSNLPARSERDATA_H
16 
17 #include "OSnLNode.h"
18 #include <vector>
19 
20 
30 {
31 public:
32 
35  std::string categoryAttribute;
37  std::string typeAttribute;
39  std::string varTypeAttribute;
41  std::string objTypeAttribute;
43  std::string conTypeAttribute;
45  std::string enumTypeAttribute;
47  std::string nameAttribute;
49  std::string valueAttribute;
51  std::string lbValueAttribute;
53  std::string ubValueAttribute;
55  std::string descriptionAttribute;
57  std::string solverAttribute;
59  std::string unitAttribute;
63 
65  int tempInt;
66  int numberOf;
67  int kounter;
68  int iOther;
69  int iOption;
70  double tempVal;
71  std::string tempStr;
72 
75 
78 
79 
84 
87 
90 
93 
96 
99 
102 
105 
110 
116 
122 
128 
134 
140 
146  std::vector<ExprNode*> nlNodeVec;
147 
152  std::vector<ExprNode*> sumVec;
153 
158  std::vector<ExprNode*> allDiffVec;
159 
164  std::vector<ExprNode*> productVec;
165 
170  std::vector<ExprNode*> maxVec;
171 
176  std::vector<ExprNode*> minVec;
177 
182  std::vector<ExprNode*> matrixSumVec;
183 
188  std::vector<ExprNode*> matrixProductVec;
189 
195 
201 
205 
209  char *errorText;
210 
214  std::string parser_errors;
215 
219 };//OSnLParserData
220 
221 
222 inline void osnl_empty_vectors( OSnLParserData* osnlData)
223 {
224 
225 }//end osnl_empty_vectors
226 
227 
228 
229 #endif /*OSNLPARSERDATA_H_*/
230 
OSnLParserData::nlMNodeMatrixRef
OSnLMNodeMatrixReference * nlMNodeMatrixRef
a pointer to an OSnLMNode object that is a simple matrix reference
Definition: OSnLParserData.h:92
OSnLParserData::variablecoefattON
bool variablecoefattON
variablecoefattON is set to true if the coeff attribute has been parsed for an OSnLNodeVariable,...
Definition: OSnLParserData.h:139
OSnLParserData::matrixreftypeattON
bool matrixreftypeattON
matrixreftypeattON is set to true if the type attribute has been parsed for an OSnLMNodeMatrixReferen...
Definition: OSnLParserData.h:194
OSnLParserData::solverAttributePresent
bool solverAttributePresent
Definition: OSnLParserData.h:56
OSnLParserData::tempInt
int tempInt
some temporary items to facilitate code sharing
Definition: OSnLParserData.h:65
OSnLParserData::idxAttribute
int idxAttribute
Definition: OSnLParserData.h:61
OSnLParserData::nlMNodeMatrixVar
OSnLMNodeMatrixVar * nlMNodeMatrixVar
a pointer to an OSnLMNode object that is a matrixVar reference
Definition: OSnLParserData.h:95
OSnLParserData::parser_errors
std::string parser_errors
used to accumulate error message so the parser does not die on the first error encountered
Definition: OSnLParserData.h:214
OSnLParserData
The OSnLParserData Class.
Definition: OSnLParserData.h:30
OSnLParserData::ubValueAttribute
std::string ubValueAttribute
Definition: OSnLParserData.h:53
OSnLParserData::categoryAttribute
std::string categoryAttribute
Definition: OSnLParserData.h:35
OSnLParserData::enumTypeAttributePresent
bool enumTypeAttributePresent
Definition: OSnLParserData.h:44
OSnLParserData::valueAttribute
std::string valueAttribute
Definition: OSnLParserData.h:49
OSnLParserData::suppressFurtherErrorMessages
bool suppressFurtherErrorMessages
Definition: OSnLParserData.h:218
OSnLParserData::iOption
int iOption
Definition: OSnLParserData.h:69
OSnLParserData::typeAttribute
std::string typeAttribute
Definition: OSnLParserData.h:37
OSnLNodeNumber
The OSnLNodeNumber Class.
Definition: OSnLNode.h:1263
OSnLParserData::sumVec
std::vector< ExprNode * > sumVec
the OSnLNodeSum node can have any number of children, including other children with an indeterminate ...
Definition: OSnLParserData.h:152
OSnLParserData::nlNodeNumberPoint
OSnLNodeNumber * nlNodeNumberPoint
a pointer to an OSnLNode object that is a number
Definition: OSnLParserData.h:89
ExprNode
A generic class from which we derive both OSnLNode and OSnLMNode.
Definition: OSnLNode.h:57
OSnLParserData::unitAttributePresent
bool unitAttributePresent
Definition: OSnLParserData.h:58
OSnLMNodeMatrixVar
Definition: OSnLNode.h:2532
OSnLParserData::conTypeAttribute
std::string conTypeAttribute
Definition: OSnLParserData.h:43
OSnLParserData::enumTypeAttribute
std::string enumTypeAttribute
Definition: OSnLParserData.h:45
OSnLParserData::tmpnlcount
int tmpnlcount
tmpnlcount counts the number of nl nodes actually found.
Definition: OSnLParserData.h:109
OSnLParserData::includeDiagonalAttributePresent
bool includeDiagonalAttributePresent
Attributes and other data items associated with parsing the OSnLMNodes.
Definition: OSnLParserData.h:203
OSnLParserData::nlNodePoint
ExprNode * nlNodePoint
These entities are used for parsing <nonlinearExpressions>
Definition: OSnLParserData.h:83
OSnLParserData::productVec
std::vector< ExprNode * > productVec
the OSnLNodeProduct node can have any number of children, including other children with an indetermin...
Definition: OSnLParserData.h:164
OSnLParserData::categoryAttributePresent
bool categoryAttributePresent
generic attributes
Definition: OSnLParserData.h:34
OSnLParserData::objTypeAttributePresent
bool objTypeAttributePresent
Definition: OSnLParserData.h:40
OSnLParserData::descriptionAttributePresent
bool descriptionAttributePresent
Definition: OSnLParserData.h:54
OSnLParserData::unitAttribute
std::string unitAttribute
Definition: OSnLParserData.h:59
OSnLParserData::varTypeAttributePresent
bool varTypeAttributePresent
Definition: OSnLParserData.h:38
OSnLParserData::nlNodeVariablePoint
OSnLNodeVariable * nlNodeVariablePoint
a pointer to an OSnLNode object that is a variable
Definition: OSnLParserData.h:86
OSnLParserData::idxAttributePresent
bool idxAttributePresent
Definition: OSnLParserData.h:60
OSnLParserData::matrixidxattON
bool matrixidxattON
matrixidxattON is set to true if the idx attribute has been parsed for an OSnLNodeVariable,...
Definition: OSnLParserData.h:200
OSnLParserData::ignoreDataAfterErrors
bool ignoreDataAfterErrors
two booleans to govern the behavior after an error has been encountered
Definition: OSnLParserData.h:217
osnl_empty_vectors
void osnl_empty_vectors(OSnLParserData *osnlData)
Definition: OSnLParserData.h:222
OSnLParserData::iOther
int iOther
Definition: OSnLParserData.h:68
OSnLParserData::nlNodeVec
std::vector< ExprNode * > nlNodeVec
nlNodeVec holds a vector of pointers to OSnLNodes and OSnLMNodes In order to build the expression tre...
Definition: OSnLParserData.h:146
OSnLParserData::objTypeAttribute
std::string objTypeAttribute
Definition: OSnLParserData.h:41
OSnLParserData::matrixSumVec
std::vector< ExprNode * > matrixSumVec
the OSnLMNodeMatrixSum node can have any number of children, including other children with an indeter...
Definition: OSnLParserData.h:182
OSnLParserData::matrixProductVec
std::vector< ExprNode * > matrixProductVec
the OSnLMNodeProduct node can have any number of children, including other children with an indetermi...
Definition: OSnLParserData.h:188
OSnLParserData::nlnodenumber
int nlnodenumber
nlnodenumber is the number of nl nodes in the instance
Definition: OSnLParserData.h:104
OSnLParserData::~OSnLParserData
~OSnLParserData()
the OSnLParserData class destructor
OSnLParserData::OSnLParserData
OSnLParserData()
the OSnLParserData class constructor
OSnLParserData::nlMNodeMatrixObj
OSnLMNodeMatrixObj * nlMNodeMatrixObj
a pointer to an OSnLMNode object that is a matrixObj reference
Definition: OSnLParserData.h:98
OSnLParserData::conTypeAttributePresent
bool conTypeAttributePresent
Definition: OSnLParserData.h:42
OSnLParserData::nameAttributePresent
bool nameAttributePresent
Definition: OSnLParserData.h:46
OSnLNodeVariable
The OSnLNodeVariable Class.
Definition: OSnLNode.h:1479
OSnLParserData::valueAttributePresent
bool valueAttributePresent
Definition: OSnLParserData.h:48
OSnLParserData::solverAttribute
std::string solverAttribute
Definition: OSnLParserData.h:57
OSnLParserData::numbervalueattON
bool numbervalueattON
numbervalueattON is set to true if the value attribute has been parsed for an OSnLNodeNumber object,...
Definition: OSnLParserData.h:121
OSnLParserData::lbValueAttributePresent
bool lbValueAttributePresent
Definition: OSnLParserData.h:50
OSnLParserData::descriptionAttribute
std::string descriptionAttribute
Definition: OSnLParserData.h:55
OSnLMNodeMatrixReference
Definition: OSnLNode.h:2461
OSnLParserData::kounter
int kounter
Definition: OSnLParserData.h:67
OSnLParserData::typeAttributePresent
bool typeAttributePresent
Definition: OSnLParserData.h:36
OSnLParserData::includeDiagonalAttribute
bool includeDiagonalAttribute
Definition: OSnLParserData.h:204
OSnLParserData::numbertypeattON
bool numbertypeattON
numbertypeattON is set to true if the type attribute has been parsed for an OSnLNodeNumber object,...
Definition: OSnLParserData.h:115
OSnLParserData::tempVal
double tempVal
Definition: OSnLParserData.h:70
OSnLParserData::varTypeAttribute
std::string varTypeAttribute
Definition: OSnLParserData.h:39
OSnLParserData::minVec
std::vector< ExprNode * > minVec
the OSnLNodeMin node can have any number of children, including other children with an indeterminate ...
Definition: OSnLParserData.h:176
OSnLParserData::nlMNodeMatrixCon
OSnLMNodeMatrixCon * nlMNodeMatrixCon
a pointer to an OSnLMNode object that is a matrixCon reference
Definition: OSnLParserData.h:101
OSnLParserData::variableidxattON
bool variableidxattON
variableidxattON is set to true if the idx attribute has been parsed for an OSnLNodeVariable,...
Definition: OSnLParserData.h:133
OSnLParserData::numberOf
int numberOf
Definition: OSnLParserData.h:66
OSnLParserData::maxVec
std::vector< ExprNode * > maxVec
the OSnLNodeMax node can have any number of children, including other children with an indeterminate ...
Definition: OSnLParserData.h:170
OSnLParserData::numberidattON
bool numberidattON
numberidattON is set to true if the id attribute has been parsed for an OSnLNodeNumber object,...
Definition: OSnLParserData.h:127
OSnLParserData::errorText
char * errorText
if the parser finds invalid text it is held here and we delete if the file was not valid
Definition: OSnLParserData.h:209
OSnLParserData::tempStr
std::string tempStr
Definition: OSnLParserData.h:71
OSnLMNodeMatrixCon
Definition: OSnLNode.h:2674
OSnLMNodeMatrixObj
Definition: OSnLNode.h:2603
OSnLParserData::lbValueAttribute
std::string lbValueAttribute
Definition: OSnLParserData.h:51
OSnLParserData::shapeAttributePresent
bool shapeAttributePresent
Definition: OSnLParserData.h:62
OSnLParserData::nameAttribute
std::string nameAttribute
Definition: OSnLParserData.h:47
OSnLParserData::allDiffVec
std::vector< ExprNode * > allDiffVec
the OSnLNodeallDiff node can have any number of children, including other children with an indetermin...
Definition: OSnLParserData.h:158
OSnLParserData::ubValueAttributePresent
bool ubValueAttributePresent
Definition: OSnLParserData.h:52
OSnLNode.h
This file defines the OSnLNode class along with its derived classes.