00001 /* $Id: OSrLParserData.h 3815 2010-11-03 23:46:16Z Gassmann $ */ 00016 #ifndef OSRLPARSERDATA_H 00017 #define OSRLPARSERDATA_H 00018 00019 #include "OSnLNode.h" 00020 #include "OSGeneral.h" 00021 00022 #include <vector> 00023 #include <sstream> 00024 00025 00026 00031 struct OtherVariableResultStruct{ 00035 std::string name; 00036 00040 std::string description; 00041 00045 std::string value; 00046 00050 int numberOfVar; 00051 00058 std::string *otherVarText; 00059 00060 00067 int *otherVarIndex; 00068 00069 }; 00070 00071 00084 class OSrLParserData{ 00085 public: 00086 00088 OSrLParserData( ); 00089 00090 //** the OSrLParserData class destructor */ 00091 ~OSrLParserData() ; 00092 00093 00095 std::string statusType; 00096 00098 std::string statusDescription; 00099 00102 double timeValue; 00103 std::string timeType; 00104 std::string timeCategory; 00105 std::string timeUnit; 00106 std::string timeDescription; 00107 00110 int numberOfTimes; 00111 00113 std::string tmpOtherValue; 00114 std::string tmpOtherName; 00115 std::string tmpOtherDescription; 00116 00118 std::string itemContent; 00119 00122 void* scanner; 00123 00125 unsigned int numberOfSolutions; 00126 00128 int numberOfVariables; 00129 00131 int numberOfConstraints; 00132 00134 int numberOfObjectives; 00135 00139 int numberOfIdx; 00140 00144 int numberOfVar; 00145 00149 int numberOfVarIdx; 00150 00154 int numberOfCon; 00155 00156 int numberOfEnumerations; 00157 00161 int numberOfObj; 00162 00164 int numberOf; 00165 00167 int kounter; 00168 00170 int iOther; 00171 00173 int ivar; 00174 00176 int idx; 00177 00179 double tempVal; 00180 00182 int tempInt; 00183 00185 std::string tempStr; 00186 00188 std::ostringstream outStr; 00189 00193 int numberOfOtherVariableResults; 00194 00198 int numberOfOtherObjectiveResults; 00199 00203 int numberOfOtherConstraintResults; 00204 00206 unsigned int solutionIdx; 00207 00209 int mult; 00210 00212 int incr; 00213 00220 bool numberAttributePresent; 00221 bool incrPresent; 00222 bool multPresent; 00223 bool idxAttributePresent; 00224 bool categoryAttributePresent; 00225 bool descriptionAttributePresent; 00226 bool nameAttributePresent; 00227 bool numberOfVarAttributePresent; 00228 bool numberOfVarIdxAttributePresent; 00229 bool numberOfObjAttributePresent; 00230 bool numberOfObjIdxAttributePresent; 00231 bool numberOfConAttributePresent; 00232 bool numberOfConIdxAttributePresent; 00233 bool numberOfEnumerationsAttributePresent; 00234 bool typeAttributePresent; 00235 bool unitAttributePresent; 00236 bool valueAttributePresent; 00237 bool weightedObjAttributePresent; 00238 00244 std::string categoryAttribute; 00245 std::string descriptionAttribute; 00246 std::string nameAttribute; 00247 std::string typeAttribute; 00248 std::string unitAttribute; 00249 std::string valueAttribute; 00250 00251 00252 bool nVarPresent; 00253 bool nObjPresent; 00254 bool nConPresent; 00255 00259 bool generalStatusPresent; 00260 bool generalMessagePresent; 00261 bool generalServiceURIPresent; 00262 bool generalServiceNamePresent; 00263 bool generalInstanceNamePresent; 00264 bool generalJobIDPresent; 00265 bool generalSolverInvokedPresent; 00266 bool generalTimeStampPresent; 00267 bool generalOtherResultsPresent; 00268 00272 bool systemInformationPresent; 00273 bool systemAvailableDiskSpacePresent; 00274 bool systemAvailableMemoryPresent; 00275 bool systemAvailableCPUSpeedPresent; 00276 bool systemAvailableCPUNumberPresent; 00277 bool systemOtherResultsPresent; 00278 00282 bool serviceCurrentStatePresent; 00283 bool serviceCurrentJobCountPresent; 00284 bool serviceTotalJobsSoFarPresent; 00285 bool timeServiceStartedPresent; 00286 bool serviceUtilizationPresent; 00287 bool serviceOtherResultsPresent; 00288 00292 bool jobStatusPresent; 00293 bool jobSubmitTimePresent; 00294 bool scheduledStartTimePresent; 00295 bool actualStartTimePresent; 00296 bool jobEndTimePresent; 00297 bool jobTimingInformationPresent; 00298 bool jobUsedDiskSpacePresent; 00299 bool jobUsedMemoryPresent; 00300 bool jobUsedCPUSpeedPresent; 00301 bool jobUsedCPUNumberPresent; 00302 bool jobOtherResultsPresent; 00303 00304 bool numberOfItemsPresent; 00305 int numberOfItems; 00306 00307 00310 struct IndexValuePair *primalValPair; 00311 std::vector<IndexValuePair*> primalVals; 00312 00313 00316 struct IndexValuePair *objValPair; 00317 std::vector<IndexValuePair*> objVals; 00318 00319 00322 struct IndexValuePair *dualValPair; 00323 std::vector<IndexValuePair*> dualVals; 00324 00325 00327 struct OtherVariableResultStruct *otherVarStruct; 00328 00330 std::vector<OtherVariableResultStruct*> otherVarVec; 00331 00335 char *errorText; 00336 }; 00337 00338 #endif /*OSRLPARSERDATA_H_*/