My Project
OSiLParserData Class Reference

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

#include <OSiLParserData.h>

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::OSiLParserData ( )

the OSiLParserData class constructor

Definition at line 44 of file OSiLParserData.cpp.

◆ ~OSiLParserData()

OSiLParserData::~OSiLParserData ( )

the OSiLParserData class destructor

Definition at line 20 of file OSiLParserData.cpp.

Member Data Documentation

◆ scanner

void* OSiLParserData::scanner

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.

◆ osillineno

int OSiLParserData::osillineno

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.

◆ qtermcount

int OSiLParserData::qtermcount

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

store the number of quadratic terms

Definition at line 55 of file OSiLParserData.h.

◆ qtermidxOneattON

bool OSiLParserData::qtermidxOneattON

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

Definition at line 59 of file OSiLParserData.h.

◆ qtermidxTwoattON

bool OSiLParserData::qtermidxTwoattON

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

Definition at line 63 of file OSiLParserData.h.

◆ qtermidxattON

bool OSiLParserData::qtermidxattON

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

bool OSiLParserData::qtermidattON

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

Definition at line 70 of file OSiLParserData.h.

◆ qtermcoefattON

bool OSiLParserData::qtermcoefattON

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

Definition at line 75 of file OSiLParserData.h.

◆ timeDomainStages

bool OSiLParserData::timeDomainStages

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.

◆ timeDomainInterval

bool OSiLParserData::timeDomainInterval

Definition at line 83 of file OSiLParserData.h.

◆ stagecount

int OSiLParserData::stagecount

store the number of stages

Definition at line 86 of file OSiLParserData.h.

◆ stagenameON

bool OSiLParserData::stagenameON

stagenameON is true if the current stage was given a name

Definition at line 89 of file OSiLParserData.h.

◆ stagename

std::string OSiLParserData::stagename

store the name of the current stage

Definition at line 92 of file OSiLParserData.h.

◆ stageVariablesON

bool OSiLParserData::stageVariablesON

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

Definition at line 96 of file OSiLParserData.h.

◆ stageConstraintsON

bool OSiLParserData::stageConstraintsON

Definition at line 97 of file OSiLParserData.h.

◆ stageObjectivesON

bool OSiLParserData::stageObjectivesON

Definition at line 98 of file OSiLParserData.h.

◆ stageVariablesOrdered

bool OSiLParserData::stageVariablesOrdered

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

Definition at line 102 of file OSiLParserData.h.

◆ stageConstraintsOrdered

bool OSiLParserData::stageConstraintsOrdered

Definition at line 103 of file OSiLParserData.h.

◆ stageObjectivesOrdered

bool OSiLParserData::stageObjectivesOrdered

Definition at line 104 of file OSiLParserData.h.

◆ stageVariableStartIdx

int OSiLParserData::stageVariableStartIdx

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

Definition at line 107 of file OSiLParserData.h.

◆ stageConstraintStartIdx

int OSiLParserData::stageConstraintStartIdx

Definition at line 108 of file OSiLParserData.h.

◆ stageObjectiveStartIdx

int OSiLParserData::stageObjectiveStartIdx

Definition at line 109 of file OSiLParserData.h.

◆ stagevarcount

int OSiLParserData::stagevarcount

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

Definition at line 112 of file OSiLParserData.h.

◆ stageconcount

int OSiLParserData::stageconcount

Definition at line 113 of file OSiLParserData.h.

◆ stageobjcount

int OSiLParserData::stageobjcount

Definition at line 114 of file OSiLParserData.h.

◆ nvarcovered

int OSiLParserData::nvarcovered

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.

◆ nconcovered

int OSiLParserData::nconcovered

Definition at line 119 of file OSiLParserData.h.

◆ m_miVarStageInfo

int* OSiLParserData::m_miVarStageInfo

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

int* OSiLParserData::m_miConStageInfo

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

int* OSiLParserData::m_miObjStageInfo

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

bool OSiLParserData::intervalhorizonON

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

Definition at line 138 of file OSiLParserData.h.

◆ intervalhorizon

double OSiLParserData::intervalhorizon

intervalhorizon holds the value of the end of the planning horizon

Definition at line 141 of file OSiLParserData.h.

◆ intervalstartON

bool OSiLParserData::intervalstartON

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

Definition at line 145 of file OSiLParserData.h.

◆ intervalstart

double OSiLParserData::intervalstart

intervalstart holds the value for the start of the planning horizon

Definition at line 148 of file OSiLParserData.h.

◆ numberOfMatricesPresent

bool OSiLParserData::numberOfMatricesPresent

some elements to hold matrices and cones

Definition at line 151 of file OSiLParserData.h.

◆ numberOfMatrices

int OSiLParserData::numberOfMatrices

Definition at line 152 of file OSiLParserData.h.

◆ numberOfConesPresent

bool OSiLParserData::numberOfConesPresent

Definition at line 153 of file OSiLParserData.h.

◆ numberOfCones

int OSiLParserData::numberOfCones

Definition at line 154 of file OSiLParserData.h.

◆ coneCounter

int OSiLParserData::coneCounter

Definition at line 155 of file OSiLParserData.h.

◆ numberOfRowsPresent

bool OSiLParserData::numberOfRowsPresent

Definition at line 156 of file OSiLParserData.h.

◆ numberOfRows

int OSiLParserData::numberOfRows

Definition at line 157 of file OSiLParserData.h.

◆ numberOfColumnsPresent

bool OSiLParserData::numberOfColumnsPresent

Definition at line 158 of file OSiLParserData.h.

◆ numberOfColumns

int OSiLParserData::numberOfColumns

Definition at line 159 of file OSiLParserData.h.

◆ numberOfEl

int OSiLParserData::numberOfEl

Definition at line 161 of file OSiLParserData.h.

◆ numberOf

int OSiLParserData::numberOf

Definition at line 162 of file OSiLParserData.h.

◆ elCounter

int OSiLParserData::elCounter

Definition at line 163 of file OSiLParserData.h.

◆ namePresent

bool OSiLParserData::namePresent

Definition at line 165 of file OSiLParserData.h.

◆ name

std::string OSiLParserData::name

Definition at line 166 of file OSiLParserData.h.

◆ referenceMatrixIdxPresent

bool OSiLParserData::referenceMatrixIdxPresent

Definition at line 168 of file OSiLParserData.h.

◆ referenceMatrixIdx

int OSiLParserData::referenceMatrixIdx

Definition at line 169 of file OSiLParserData.h.

◆ normScaleFactorPresent

bool OSiLParserData::normScaleFactorPresent

Definition at line 171 of file OSiLParserData.h.

◆ normScaleFactor

double OSiLParserData::normScaleFactor

Definition at line 172 of file OSiLParserData.h.

◆ distortionMatrixPresent

bool OSiLParserData::distortionMatrixPresent

Definition at line 173 of file OSiLParserData.h.

◆ distortionMatrix

int OSiLParserData::distortionMatrix

Definition at line 174 of file OSiLParserData.h.

◆ axisDirectionPresent

bool OSiLParserData::axisDirectionPresent

Definition at line 175 of file OSiLParserData.h.

◆ axisDirection

int OSiLParserData::axisDirection

Definition at line 176 of file OSiLParserData.h.

◆ firstAxisDirectionPresent

bool OSiLParserData::firstAxisDirectionPresent

Definition at line 177 of file OSiLParserData.h.

◆ firstAxisDirection

int OSiLParserData::firstAxisDirection

Definition at line 178 of file OSiLParserData.h.

◆ secondAxisDirectionPresent

bool OSiLParserData::secondAxisDirectionPresent

Definition at line 179 of file OSiLParserData.h.

◆ secondAxisDirection

int OSiLParserData::secondAxisDirection

Definition at line 180 of file OSiLParserData.h.

◆ semidefinitenessPresent

bool OSiLParserData::semidefinitenessPresent

Definition at line 181 of file OSiLParserData.h.

◆ semidefiniteness

std::string OSiLParserData::semidefiniteness

Definition at line 182 of file OSiLParserData.h.

◆ numberOfMatrixVar

int OSiLParserData::numberOfMatrixVar

Definition at line 185 of file OSiLParserData.h.

◆ numberOfMatrixObj

int OSiLParserData::numberOfMatrixObj

Definition at line 186 of file OSiLParserData.h.

◆ numberOfMatrixCon

int OSiLParserData::numberOfMatrixCon

Definition at line 187 of file OSiLParserData.h.

◆ numberOfMatrixTerms

int OSiLParserData::numberOfMatrixTerms

Definition at line 188 of file OSiLParserData.h.

◆ numberOfMatrixExpr

int OSiLParserData::numberOfMatrixExpr

Definition at line 189 of file OSiLParserData.h.

◆ numberOfMatrixTermsPresent

bool OSiLParserData::numberOfMatrixTermsPresent

Definition at line 191 of file OSiLParserData.h.

◆ matrixIdxPresent

bool OSiLParserData::matrixIdxPresent

Definition at line 193 of file OSiLParserData.h.

◆ lbMatrixIdxPresent

bool OSiLParserData::lbMatrixIdxPresent

Definition at line 194 of file OSiLParserData.h.

◆ lbConeIdxPresent

bool OSiLParserData::lbConeIdxPresent

Definition at line 195 of file OSiLParserData.h.

◆ ubMatrixIdxPresent

bool OSiLParserData::ubMatrixIdxPresent

Definition at line 196 of file OSiLParserData.h.

◆ ubConeIdxPresent

bool OSiLParserData::ubConeIdxPresent

Definition at line 197 of file OSiLParserData.h.

◆ orderConeIdxPresent

bool OSiLParserData::orderConeIdxPresent

Definition at line 198 of file OSiLParserData.h.

◆ templateMatrixIdxPresent

bool OSiLParserData::templateMatrixIdxPresent

Definition at line 199 of file OSiLParserData.h.

◆ constantMatrixIdxPresent

bool OSiLParserData::constantMatrixIdxPresent

Definition at line 200 of file OSiLParserData.h.

◆ varReferenceMatrixIdxPresent

bool OSiLParserData::varReferenceMatrixIdxPresent

Definition at line 201 of file OSiLParserData.h.

◆ objReferenceMatrixIdxPresent

bool OSiLParserData::objReferenceMatrixIdxPresent

Definition at line 202 of file OSiLParserData.h.

◆ conReferenceMatrixIdxPresent

bool OSiLParserData::conReferenceMatrixIdxPresent

Definition at line 203 of file OSiLParserData.h.

◆ varTypePresent

bool OSiLParserData::varTypePresent

Definition at line 204 of file OSiLParserData.h.

◆ matrixIdx

int OSiLParserData::matrixIdx

Definition at line 206 of file OSiLParserData.h.

◆ lbMatrixIdx

int OSiLParserData::lbMatrixIdx

Definition at line 207 of file OSiLParserData.h.

◆ lbConeIdx

int OSiLParserData::lbConeIdx

Definition at line 208 of file OSiLParserData.h.

◆ ubMatrixIdx

int OSiLParserData::ubMatrixIdx

Definition at line 209 of file OSiLParserData.h.

◆ ubConeIdx

int OSiLParserData::ubConeIdx

Definition at line 210 of file OSiLParserData.h.

◆ orderConeIdx

int OSiLParserData::orderConeIdx

Definition at line 211 of file OSiLParserData.h.

◆ templateMatrixIdx

int OSiLParserData::templateMatrixIdx

Definition at line 212 of file OSiLParserData.h.

◆ constantMatrixIdx

int OSiLParserData::constantMatrixIdx

Definition at line 213 of file OSiLParserData.h.

◆ varReferenceMatrixIdx

int OSiLParserData::varReferenceMatrixIdx

Definition at line 214 of file OSiLParserData.h.

◆ objReferenceMatrixIdx

int OSiLParserData::objReferenceMatrixIdx

Definition at line 215 of file OSiLParserData.h.

◆ conReferenceMatrixIdx

int OSiLParserData::conReferenceMatrixIdx

Definition at line 216 of file OSiLParserData.h.

◆ varType

char OSiLParserData::varType

Definition at line 217 of file OSiLParserData.h.

◆ shapePresent

bool OSiLParserData::shapePresent

Definition at line 219 of file OSiLParserData.h.

◆ shape

std::string OSiLParserData::shape

Definition at line 220 of file OSiLParserData.h.

◆ matrixTermInObj

bool OSiLParserData::matrixTermInObj

Definition at line 222 of file OSiLParserData.h.

◆ kounter

int OSiLParserData::kounter

Definition at line 224 of file OSiLParserData.h.

◆ kount2

int OSiLParserData::kount2

Definition at line 225 of file OSiLParserData.h.

◆ tempVal

double OSiLParserData::tempVal

Definition at line 226 of file OSiLParserData.h.

◆ ignoreDataAfterErrors

bool OSiLParserData::ignoreDataAfterErrors

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.

◆ suppressFurtherErrorMessages

bool OSiLParserData::suppressFurtherErrorMessages

Definition at line 232 of file OSiLParserData.h.

◆ errorText

char* OSiLParserData::errorText

Definition at line 233 of file OSiLParserData.h.

◆ parser_errors

std::string OSiLParserData::parser_errors

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: