OS  2.9.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Public Attributes | List of all members
OSnLParserData Class Reference

The OSnLParserData Class. More...

#include <OSnLParserData.h>

+ Collaboration diagram for OSnLParserData:

Public Member Functions

 OSnLParserData ()
 the OSnLParserData class constructor More...
 
 ~OSnLParserData ()
 the OSnLParserData class destructor More...
 

Public Attributes

bool categoryAttributePresent
 generic attributes More...
 
std::string categoryAttribute
 
bool typeAttributePresent
 
std::string typeAttribute
 
bool varTypeAttributePresent
 
std::string varTypeAttribute
 
bool objTypeAttributePresent
 
std::string objTypeAttribute
 
bool conTypeAttributePresent
 
std::string conTypeAttribute
 
bool enumTypeAttributePresent
 
std::string enumTypeAttribute
 
bool nameAttributePresent
 
std::string nameAttribute
 
bool valueAttributePresent
 
std::string valueAttribute
 
bool lbValueAttributePresent
 
std::string lbValueAttribute
 
bool ubValueAttributePresent
 
std::string ubValueAttribute
 
bool descriptionAttributePresent
 
std::string descriptionAttribute
 
bool solverAttributePresent
 
std::string solverAttribute
 
bool unitAttributePresent
 
std::string unitAttribute
 
bool idxAttributePresent
 
int idxAttribute
 
bool shapeAttributePresent
 
int tempInt
 some temporary items to facilitate code sharing More...
 
int numberOf
 
int kounter
 
int iOther
 
int iOption
 
double tempVal
 
std::string tempStr
 
ExprNodenlNodePoint
 These entities are used for parsing <nonlinearExpressions> More...
 
OSnLNodeVariablenlNodeVariablePoint
 a pointer to an OSnLNode object that is a variable More...
 
OSnLNodeNumbernlNodeNumberPoint
 a pointer to an OSnLNode object that is a number More...
 
OSnLMNodeMatrixReferencenlMNodeMatrixRef
 a pointer to an OSnLMNode object that is a simple matrix reference More...
 
int nlnodenumber
 nlnodenumber is the number of nl nodes in the instance More...
 
int tmpnlcount
 tmpnlcount counts the number of nl nodes actually found. More...
 
bool numbertypeattON
 numbertypeattON is set to true if the type attribute has been parsed for an OSnLNodeNumber object, an exception is thrown if there is more than one number attribute More...
 
bool numbervalueattON
 numbervalueattON is set to true if the value attribute has been parsed for an OSnLNodeNumber object, an exception is thrown if there is more than one value attribute More...
 
bool numberidattON
 numberidattON is set to true if the id attribute has been parsed for an OSnLNodeNumber object, an exception is thrown if there is more than one id attribute More...
 
bool variableidxattON
 variableidxattON is set to true if the idx attribute has been parsed for an OSnLNodeVariable, an exception is thrown if there is more than one idx attribute More...
 
bool variablecoefattON
 variablecoefattON is set to true if the coeff attribute has been parsed for an OSnLNodeVariable, an exception is thrown if there is more than one coeff attribute More...
 
std::vector< ExprNode * > nlNodeVec
 nlNodeVec holds a vector of pointers to OSnLNodes and OSnLMNodes In order to build the expression tree correctly from the prefix notation found in the OSiL file, we need to store both OSnLNodes and OSnLMNodes into the same vector of ExprNodes More...
 
std::vector< ExprNode * > sumVec
 the OSnLNodeSum node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children More...
 
std::vector< ExprNode * > allDiffVec
 the OSnLNodeallDiff node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children More...
 
std::vector< ExprNode * > productVec
 the OSnLNodeProduct node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children More...
 
std::vector< ExprNode * > maxVec
 the OSnLNodeMax node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children More...
 
std::vector< ExprNode * > minVec
 the OSnLNodeMin node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children More...
 
std::vector< ExprNode * > matrixSumVec
 the OSnLMNodeMatrixSum node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children More...
 
std::vector< ExprNode * > matrixProductVec
 the OSnLMNodeProduct node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children More...
 
bool matrixreftypeattON
 matrixreftypeattON is set to true if the type attribute has been parsed for an OSnLMNodeMatrixReference object, an exception is thrown if there is more than one matrixref attribute More...
 
bool matrixidxattON
 matrixidxattON is set to true if the idx attribute has been parsed for an OSnLNodeVariable, an exception is thrown if there is more than one idx attribute More...
 
bool includeDiagonalAttributePresent
 Attributes and other data items associated with parsing the OSnLMNodes. More...
 
bool includeDiagonalAttribute
 
char * errorText
 if the parser finds invalid text it is held here and we delete if the file was not valid More...
 
std::string parser_errors
 used to accumulate error message so the parser does not die on the first error encountered More...
 
bool ignoreDataAfterErrors
 two booleans to govern the behavior after an error has been encountered More...
 
bool suppressFurtherErrorMessages
 

Detailed Description

The OSnLParserData Class.

Remarks
The OSnLParserData class is used to temporarily hold data found in parsing the OSnL schema elements. We do this so we can have a reentrant parser.

Definition at line 29 of file OSnLParserData.h.

Constructor & Destructor Documentation

OSnLParserData::OSnLParserData ( )

the OSnLParserData class constructor

OSnLParserData::~OSnLParserData ( )

the OSnLParserData class destructor

Member Data Documentation

bool OSnLParserData::categoryAttributePresent

generic attributes

Definition at line 34 of file OSnLParserData.h.

std::string OSnLParserData::categoryAttribute

Definition at line 35 of file OSnLParserData.h.

bool OSnLParserData::typeAttributePresent

Definition at line 36 of file OSnLParserData.h.

std::string OSnLParserData::typeAttribute

Definition at line 37 of file OSnLParserData.h.

bool OSnLParserData::varTypeAttributePresent

Definition at line 38 of file OSnLParserData.h.

std::string OSnLParserData::varTypeAttribute

Definition at line 39 of file OSnLParserData.h.

bool OSnLParserData::objTypeAttributePresent

Definition at line 40 of file OSnLParserData.h.

std::string OSnLParserData::objTypeAttribute

Definition at line 41 of file OSnLParserData.h.

bool OSnLParserData::conTypeAttributePresent

Definition at line 42 of file OSnLParserData.h.

std::string OSnLParserData::conTypeAttribute

Definition at line 43 of file OSnLParserData.h.

bool OSnLParserData::enumTypeAttributePresent

Definition at line 44 of file OSnLParserData.h.

std::string OSnLParserData::enumTypeAttribute

Definition at line 45 of file OSnLParserData.h.

bool OSnLParserData::nameAttributePresent

Definition at line 46 of file OSnLParserData.h.

std::string OSnLParserData::nameAttribute

Definition at line 47 of file OSnLParserData.h.

bool OSnLParserData::valueAttributePresent

Definition at line 48 of file OSnLParserData.h.

std::string OSnLParserData::valueAttribute

Definition at line 49 of file OSnLParserData.h.

bool OSnLParserData::lbValueAttributePresent

Definition at line 50 of file OSnLParserData.h.

std::string OSnLParserData::lbValueAttribute

Definition at line 51 of file OSnLParserData.h.

bool OSnLParserData::ubValueAttributePresent

Definition at line 52 of file OSnLParserData.h.

std::string OSnLParserData::ubValueAttribute

Definition at line 53 of file OSnLParserData.h.

bool OSnLParserData::descriptionAttributePresent

Definition at line 54 of file OSnLParserData.h.

std::string OSnLParserData::descriptionAttribute

Definition at line 55 of file OSnLParserData.h.

bool OSnLParserData::solverAttributePresent

Definition at line 56 of file OSnLParserData.h.

std::string OSnLParserData::solverAttribute

Definition at line 57 of file OSnLParserData.h.

bool OSnLParserData::unitAttributePresent

Definition at line 58 of file OSnLParserData.h.

std::string OSnLParserData::unitAttribute

Definition at line 59 of file OSnLParserData.h.

bool OSnLParserData::idxAttributePresent

Definition at line 60 of file OSnLParserData.h.

int OSnLParserData::idxAttribute

Definition at line 61 of file OSnLParserData.h.

bool OSnLParserData::shapeAttributePresent

Definition at line 62 of file OSnLParserData.h.

int OSnLParserData::tempInt

some temporary items to facilitate code sharing

Definition at line 65 of file OSnLParserData.h.

int OSnLParserData::numberOf

Definition at line 66 of file OSnLParserData.h.

int OSnLParserData::kounter

Definition at line 67 of file OSnLParserData.h.

int OSnLParserData::iOther

Definition at line 68 of file OSnLParserData.h.

int OSnLParserData::iOption

Definition at line 69 of file OSnLParserData.h.

double OSnLParserData::tempVal

Definition at line 70 of file OSnLParserData.h.

std::string OSnLParserData::tempStr

Definition at line 71 of file OSnLParserData.h.

ExprNode* OSnLParserData::nlNodePoint

These entities are used for parsing <nonlinearExpressions>

a pointer to an OSnLNode object

Definition at line 83 of file OSnLParserData.h.

OSnLNodeVariable* OSnLParserData::nlNodeVariablePoint

a pointer to an OSnLNode object that is a variable

Definition at line 86 of file OSnLParserData.h.

OSnLNodeNumber* OSnLParserData::nlNodeNumberPoint

a pointer to an OSnLNode object that is a number

Definition at line 89 of file OSnLParserData.h.

OSnLMNodeMatrixReference* OSnLParserData::nlMNodeMatrixRef

a pointer to an OSnLMNode object that is a simple matrix reference

Definition at line 92 of file OSnLParserData.h.

int OSnLParserData::nlnodenumber

nlnodenumber is the number of nl nodes in the instance

Definition at line 95 of file OSnLParserData.h.

int OSnLParserData::tmpnlcount

tmpnlcount counts the number of nl nodes actually found.

If this number differs from nlnodenumber, then an exception is thrown

Definition at line 100 of file OSnLParserData.h.

bool OSnLParserData::numbertypeattON

numbertypeattON is set to true if the type attribute has been parsed for an OSnLNodeNumber object, an exception is thrown if there is more than one number attribute

Definition at line 106 of file OSnLParserData.h.

bool OSnLParserData::numbervalueattON

numbervalueattON is set to true if the value attribute has been parsed for an OSnLNodeNumber object, an exception is thrown if there is more than one value attribute

Definition at line 112 of file OSnLParserData.h.

bool OSnLParserData::numberidattON

numberidattON is set to true if the id attribute has been parsed for an OSnLNodeNumber object, an exception is thrown if there is more than one id attribute

Definition at line 118 of file OSnLParserData.h.

bool OSnLParserData::variableidxattON

variableidxattON is set to true if the idx attribute has been parsed for an OSnLNodeVariable, an exception is thrown if there is more than one idx attribute

Definition at line 124 of file OSnLParserData.h.

bool OSnLParserData::variablecoefattON

variablecoefattON is set to true if the coeff attribute has been parsed for an OSnLNodeVariable, an exception is thrown if there is more than one coeff attribute

Definition at line 130 of file OSnLParserData.h.

std::vector<ExprNode*> OSnLParserData::nlNodeVec

nlNodeVec holds a vector of pointers to OSnLNodes and OSnLMNodes In order to build the expression tree correctly from the prefix notation found in the OSiL file, we need to store both OSnLNodes and OSnLMNodes into the same vector of ExprNodes

Definition at line 137 of file OSnLParserData.h.

std::vector<ExprNode*> OSnLParserData::sumVec

the OSnLNodeSum node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children

Definition at line 143 of file OSnLParserData.h.

std::vector<ExprNode*> OSnLParserData::allDiffVec

the OSnLNodeallDiff node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children

Definition at line 149 of file OSnLParserData.h.

std::vector<ExprNode*> OSnLParserData::productVec

the OSnLNodeProduct node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children

Definition at line 155 of file OSnLParserData.h.

std::vector<ExprNode*> OSnLParserData::maxVec

the OSnLNodeMax node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children

Definition at line 161 of file OSnLParserData.h.

std::vector<ExprNode*> OSnLParserData::minVec

the OSnLNodeMin node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children

Definition at line 167 of file OSnLParserData.h.

std::vector<ExprNode*> OSnLParserData::matrixSumVec

the OSnLMNodeMatrixSum node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children

Definition at line 173 of file OSnLParserData.h.

std::vector<ExprNode*> OSnLParserData::matrixProductVec

the OSnLMNodeProduct node can have any number of children, including other children with an indeterminate number of children so when parsing we need to temporarily store all of its children

Definition at line 179 of file OSnLParserData.h.

bool OSnLParserData::matrixreftypeattON

matrixreftypeattON is set to true if the type attribute has been parsed for an OSnLMNodeMatrixReference object, an exception is thrown if there is more than one matrixref attribute

Definition at line 185 of file OSnLParserData.h.

bool OSnLParserData::matrixidxattON

matrixidxattON is set to true if the idx attribute has been parsed for an OSnLNodeVariable, an exception is thrown if there is more than one idx attribute

Definition at line 191 of file OSnLParserData.h.

bool OSnLParserData::includeDiagonalAttributePresent

Attributes and other data items associated with parsing the OSnLMNodes.

Definition at line 194 of file OSnLParserData.h.

bool OSnLParserData::includeDiagonalAttribute

Definition at line 195 of file OSnLParserData.h.

char* OSnLParserData::errorText

if the parser finds invalid text it is held here and we delete if the file was not valid

Definition at line 200 of file OSnLParserData.h.

std::string OSnLParserData::parser_errors

used to accumulate error message so the parser does not die on the first error encountered

Definition at line 205 of file OSnLParserData.h.

bool OSnLParserData::ignoreDataAfterErrors

two booleans to govern the behavior after an error has been encountered

Definition at line 208 of file OSnLParserData.h.

bool OSnLParserData::suppressFurtherErrorMessages

Definition at line 209 of file OSnLParserData.h.


The documentation for this class was generated from the following file: