OSiLParserData Class Reference

The OSiLParserData Class, used to store parser data. More...

#include <OSiLParserData.h>

Collaboration diagram for OSiLParserData:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 OSiLParserData ()
 the OSiLParserData class constructor
 ~OSiLParserData ()
 the OSiLParserData class destructor

Public Attributes

void * scanner
 scanner is used to store data in a reentrant lexer we use this to pass an OSiLParserData object to the parser
int osillineno
 if there is a parser error, osillineno holds the line number in the OSiL file where the error occured.
int qtermcount
 These variables are used for processing the <quadraticCoefficients> element.
bool qtermidxOneattON
 qtermidxOneattON is true if we have found the first index of the quadratic term
bool qtermidxTwoattON
 qtermidxTwoattON is true if we have found the second index of the quadratic term
bool qtermidxattON
 qtermidxattON is true if we have found the row index of the of a quadratic term
bool qtermidattON
 qtermidattON is true if we have found the id of the quadratic term
bool qtermcoefattON
 qtermcoefattON is true if we have found the coefficient of the quadratic term
bool timeDomainStages
 These variables are used to parse the <timeDomain> element.
bool timeDomainInterval
int stagecount
 store the number of stages
bool stagenameON
 stagenameON is true if the current stage was given a name
std::string stagename
 store the name of the current stage
bool stageVariablesON
 for each stage we need to track whether the <variables>, <constraints>, <objectives> elements are present.
bool stageConstraintsON
bool stageObjectivesON
bool stageVariablesOrdered
 ...we need to track whether the variables, constraints, objectives are given in temporal order.
bool stageConstraintsOrdered
bool stageObjectivesOrdered
int stageVariableStartIdx
 ...we need to track the first variable, constraint, objective.
int stageConstraintStartIdx
int stageObjectiveStartIdx
int stagevarcount
 ...and we need to track the number of variables we have seen
int stageconcount
int stageobjcount
int nvarcovered
 these two integers track how many variables and constraints have been assigned to a stage; this is used for consistency checks.
int nconcovered
int * m_miVarStageInfo
 m_miVarStageInfo is an array that for each variable gives the stage to which it belongs.
int * m_miConStageInfo
 m_miConStageInfo is an array that for each constraint gives the stage to which it belongs.
int * m_miObjStageInfo
 m_miObjStageInfo is an array that for each objective gives the stage to which it belongs.
bool intervalhorizonON
 intervalhorizonON is true if we have found a horizon for the time interval
double intervalhorizon
 intervalhorizon holds the value of the end of the planning horizon
bool intervalstartON
 intervalstartON is true if we have found a start time for the time interval
double intervalstart
 intervalstart holds the value for the start of the planning horizon
bool numberOfMatricesPresent
 some elements to hold matrices and cones
int numberOfMatrices
bool numberOfConesPresent
int numberOfCones
int coneCounter
bool numberOfRowsPresent
int numberOfRows
bool numberOfColumnsPresent
int numberOfColumns
int numberOfEl
int numberOf
int elCounter
bool namePresent
std::string name
bool referenceMatrixIdxPresent
int referenceMatrixIdx
bool normScaleFactorPresent
double normScaleFactor
bool distortionMatrixPresent
int distortionMatrix
bool axisDirectionPresent
int axisDirection
bool firstAxisDirectionPresent
int firstAxisDirection
bool secondAxisDirectionPresent
int secondAxisDirection
bool semidefinitenessPresent
std::string semidefiniteness
int numberOfMatrixVar
int numberOfMatrixObj
int numberOfMatrixCon
int numberOfMatrixTerms
int numberOfMatrixExpr
bool numberOfMatrixTermsPresent
bool matrixIdxPresent
bool lbMatrixIdxPresent
bool lbConeIdxPresent
bool ubMatrixIdxPresent
bool ubConeIdxPresent
bool orderConeIdxPresent
bool templateMatrixIdxPresent
bool constantMatrixIdxPresent
bool varReferenceMatrixIdxPresent
bool objReferenceMatrixIdxPresent
bool conReferenceMatrixIdxPresent
bool varTypePresent
int matrixIdx
int lbMatrixIdx
int lbConeIdx
int ubMatrixIdx
int ubConeIdx
int orderConeIdx
int templateMatrixIdx
int constantMatrixIdx
int varReferenceMatrixIdx
int objReferenceMatrixIdx
int conReferenceMatrixIdx
char varType
bool shapePresent
std::string shape
bool matrixTermInObj
int kounter
int kount2
double tempVal
bool ignoreDataAfterErrors
 if the parser finds invalid text it is held here and we delete if the file was not valid
bool suppressFurtherErrorMessages
char * errorText
std::string parser_errors
 used to accumulate error message so the parser does not die on the first error encountered

Detailed Description

The OSiLParserData Class, used to store parser data.

Author:
Robert Fourer, Jun Ma, Kipp Martin
Version:
1.0, 03/14/2004
Since:
OS 1.0
Remarks:
The OSiLParserData class is used to hold the nonlinear part of the problem when an OSiL instance is parsed. We do this so we can have a reentrant parser. We do not have to store the linear part because we do not use flex/bison to parse the linear part of the problem.

Definition at line 34 of file OSiLParserData.h.


Constructor & Destructor Documentation

OSiLParserData::OSiLParserData (  ) 

the OSiLParserData class constructor

Definition at line 44 of file OSiLParserData.cpp.

OSiLParserData::~OSiLParserData (  ) 

the OSiLParserData class destructor

Definition at line 20 of file OSiLParserData.cpp.


Member Data Documentation

scanner is used to store data in a reentrant lexer we use this to pass an OSiLParserData object to the parser

Definition at line 45 of file OSiLParserData.h.

if there is a parser error, osillineno holds the line number in the OSiL file where the error occured.

Definition at line 50 of file OSiLParserData.h.

These variables are used for processing the <quadraticCoefficients> element.

store the number of quadratic terms

Definition at line 55 of file OSiLParserData.h.

qtermidxOneattON is true if we have found the first index of the quadratic term

Definition at line 59 of file OSiLParserData.h.

qtermidxTwoattON is true if we have found the second index of the quadratic term

Definition at line 63 of file OSiLParserData.h.

qtermidxattON is true if we have found the row index of the of a quadratic term

Definition at line 67 of file OSiLParserData.h.

qtermidattON is true if we have found the id of the quadratic term

Definition at line 70 of file OSiLParserData.h.

qtermcoefattON is true if we have found the coefficient of the quadratic term

Definition at line 75 of file OSiLParserData.h.

These variables are used to parse the <timeDomain> element.

store the type of <timeDomain> (extend as needed)

Definition at line 82 of file OSiLParserData.h.

Definition at line 83 of file OSiLParserData.h.

store the number of stages

Definition at line 86 of file OSiLParserData.h.

stagenameON is true if the current stage was given a name

Definition at line 89 of file OSiLParserData.h.

store the name of the current stage

Definition at line 92 of file OSiLParserData.h.

for each stage we need to track whether the <variables>, <constraints>, <objectives> elements are present.

..

Definition at line 96 of file OSiLParserData.h.

Definition at line 97 of file OSiLParserData.h.

Definition at line 98 of file OSiLParserData.h.

...we need to track whether the variables, constraints, objectives are given in temporal order.

..

Definition at line 102 of file OSiLParserData.h.

Definition at line 103 of file OSiLParserData.h.

Definition at line 104 of file OSiLParserData.h.

...we need to track the first variable, constraint, objective.

..

Definition at line 107 of file OSiLParserData.h.

Definition at line 108 of file OSiLParserData.h.

Definition at line 109 of file OSiLParserData.h.

...and we need to track the number of variables we have seen

Definition at line 112 of file OSiLParserData.h.

Definition at line 113 of file OSiLParserData.h.

Definition at line 114 of file OSiLParserData.h.

these two integers track how many variables and constraints have been assigned to a stage; this is used for consistency checks.

Definition at line 118 of file OSiLParserData.h.

Definition at line 119 of file OSiLParserData.h.

m_miVarStageInfo is an array that for each variable gives the stage to which it belongs.

Definition at line 124 of file OSiLParserData.h.

m_miConStageInfo is an array that for each constraint gives the stage to which it belongs.

Definition at line 129 of file OSiLParserData.h.

m_miObjStageInfo is an array that for each objective gives the stage to which it belongs.

Definition at line 134 of file OSiLParserData.h.

intervalhorizonON is true if we have found a horizon for the time interval

Definition at line 138 of file OSiLParserData.h.

intervalhorizon holds the value of the end of the planning horizon

Definition at line 141 of file OSiLParserData.h.

intervalstartON is true if we have found a start time for the time interval

Definition at line 145 of file OSiLParserData.h.

intervalstart holds the value for the start of the planning horizon

Definition at line 148 of file OSiLParserData.h.

some elements to hold matrices and cones

Definition at line 151 of file OSiLParserData.h.

Definition at line 152 of file OSiLParserData.h.

Definition at line 153 of file OSiLParserData.h.

Definition at line 154 of file OSiLParserData.h.

Definition at line 155 of file OSiLParserData.h.

Definition at line 156 of file OSiLParserData.h.

Definition at line 157 of file OSiLParserData.h.

Definition at line 158 of file OSiLParserData.h.

Definition at line 159 of file OSiLParserData.h.

Definition at line 161 of file OSiLParserData.h.

Definition at line 162 of file OSiLParserData.h.

Definition at line 163 of file OSiLParserData.h.

Definition at line 165 of file OSiLParserData.h.

std::string OSiLParserData::name

Definition at line 166 of file OSiLParserData.h.

Definition at line 168 of file OSiLParserData.h.

Definition at line 169 of file OSiLParserData.h.

Definition at line 171 of file OSiLParserData.h.

Definition at line 172 of file OSiLParserData.h.

Definition at line 173 of file OSiLParserData.h.

Definition at line 174 of file OSiLParserData.h.

Definition at line 175 of file OSiLParserData.h.

Definition at line 176 of file OSiLParserData.h.

Definition at line 177 of file OSiLParserData.h.

Definition at line 178 of file OSiLParserData.h.

Definition at line 179 of file OSiLParserData.h.

Definition at line 180 of file OSiLParserData.h.

Definition at line 181 of file OSiLParserData.h.

Definition at line 182 of file OSiLParserData.h.

Definition at line 185 of file OSiLParserData.h.

Definition at line 186 of file OSiLParserData.h.

Definition at line 187 of file OSiLParserData.h.

Definition at line 188 of file OSiLParserData.h.

Definition at line 189 of file OSiLParserData.h.

Definition at line 191 of file OSiLParserData.h.

Definition at line 193 of file OSiLParserData.h.

Definition at line 194 of file OSiLParserData.h.

Definition at line 195 of file OSiLParserData.h.

Definition at line 196 of file OSiLParserData.h.

Definition at line 197 of file OSiLParserData.h.

Definition at line 198 of file OSiLParserData.h.

Definition at line 199 of file OSiLParserData.h.

Definition at line 200 of file OSiLParserData.h.

Definition at line 201 of file OSiLParserData.h.

Definition at line 202 of file OSiLParserData.h.

Definition at line 203 of file OSiLParserData.h.

Definition at line 204 of file OSiLParserData.h.

Definition at line 206 of file OSiLParserData.h.

Definition at line 207 of file OSiLParserData.h.

Definition at line 208 of file OSiLParserData.h.

Definition at line 209 of file OSiLParserData.h.

Definition at line 210 of file OSiLParserData.h.

Definition at line 211 of file OSiLParserData.h.

Definition at line 212 of file OSiLParserData.h.

Definition at line 213 of file OSiLParserData.h.

Definition at line 214 of file OSiLParserData.h.

Definition at line 215 of file OSiLParserData.h.

Definition at line 216 of file OSiLParserData.h.

Definition at line 217 of file OSiLParserData.h.

Definition at line 219 of file OSiLParserData.h.

std::string OSiLParserData::shape

Definition at line 220 of file OSiLParserData.h.

Definition at line 222 of file OSiLParserData.h.

Definition at line 224 of file OSiLParserData.h.

Definition at line 225 of file OSiLParserData.h.

Definition at line 226 of file OSiLParserData.h.

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

Definition at line 231 of file OSiLParserData.h.

Definition at line 232 of file OSiLParserData.h.

Definition at line 233 of file OSiLParserData.h.

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

Definition at line 238 of file OSiLParserData.h.


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

Generated on 5 Jul 2015 by  doxygen 1.6.1