/home/coin/SVN-release/OS-2.4.0/OS/src/OSCommonInterfaces/OSResult.h

Go to the documentation of this file.
00001 /* $Id: OSResult.h 4292 2011-09-21 05:47:18Z kmartin $ */
00016 #ifndef OSRESULT_H
00017 #define OSRESULT_H
00018 #include <string>
00019 #include <vector>
00020 #include "OSGeneral.h"
00021 
00022 //#define DEBUG
00023 
00024 
00029 struct IndexStringPair
00030 {
00034     int idx;
00035 
00038     std::string value;
00039 
00040 };
00041 
00042 
00054 class GeneralSubstatus
00055 {
00056 
00057 public:
00058 
00060     std::string name;
00061 
00063     std::string description;
00064 
00069     GeneralSubstatus();
00074     ~GeneralSubstatus();
00075 
00080     bool IsEqual(GeneralSubstatus *that);
00081 
00089     bool setRandom(double density, bool conformant);
00090 
00091 };//GeneralSubstatus
00092 
00093 
00105 class GeneralStatus
00106 {
00107 
00108 public:
00109 
00111     int numberOfSubstatuses;
00112 
00114     std::string type;
00115 
00117     std::string description;
00118 
00120     GeneralSubstatus **substatus;
00121 
00126     GeneralStatus();
00131     ~GeneralStatus();
00132 
00137     bool IsEqual(GeneralStatus *that);
00138 
00146     bool setRandom(double density, bool conformant);
00147 
00148 };//GeneralStatus
00149 
00150 
00162 class OtherResult
00163 {
00164 
00165 public:
00166 
00168     std::string name;
00169 
00171     std::string value;
00172 
00174     std::string description;
00175 
00180     OtherResult();
00185     ~OtherResult();
00186 
00191     bool IsEqual(OtherResult *that);
00192 
00200     bool setRandom(double density, bool conformant);
00201 
00202 };//OtherResult
00203 
00204 
00216 class OtherResults
00217 {
00218 
00219 public:
00220 
00222     int numberOfOtherResults;
00223 
00225     OtherResult** other;
00226 
00231     OtherResults();
00236     ~OtherResults();
00237 
00242     bool IsEqual(OtherResults *that);
00243 
00251     bool setRandom(double density, bool conformant);
00252 
00253 };//OtherResults
00254 
00266 class GeneralResult
00267 {
00268 public:
00269 
00272     GeneralStatus *generalStatus;
00273 
00276     std::string message;
00277 
00281     std::string serviceURI;
00282 
00286     std::string serviceName;
00287 
00290     std::string instanceName;
00291 
00295     std::string jobID;
00296 
00299     std::string solverInvoked;
00300 
00303     std::string timeStamp;
00304 
00307     OtherResults *otherResults;
00308 
00309 
00314     GeneralResult();
00319     ~GeneralResult();
00320 
00325     bool IsEqual(GeneralResult *that);
00326 
00334     bool setRandom(double density, bool conformant);
00335 };//class GeneralResult
00336 
00337 
00349 class SystemResult
00350 {
00351 public:
00352 
00354     std::string systemInformation;
00355 
00358     StorageCapacity *availableDiskSpace;
00359 
00362     StorageCapacity *availableMemory;
00363 
00366     CPUSpeed *availableCPUSpeed;
00367 
00370     CPUNumber *availableCPUNumber;
00371 
00374     OtherResults *otherResults;
00375 
00380     SystemResult();
00385     ~SystemResult();
00386 
00391     bool IsEqual(SystemResult *that);
00392 
00400     bool setRandom(double density, bool conformant);
00401 };//class SystemResult
00402 
00403 
00415 class ServiceResult
00416 {
00417 public:
00418 
00420     std::string currentState;
00421 
00423     int currentJobCount;
00424 
00426     int totalJobsSoFar;
00427 
00429     std::string timeServiceStarted;
00430 
00432     double serviceUtilization;
00433 
00436     OtherResults *otherResults;
00437 
00442     ServiceResult();
00447     ~ServiceResult();
00448 
00453     bool IsEqual(ServiceResult *that);
00454 
00462     bool setRandom(double density, bool conformant);
00463 };//class ServiceResult
00464 
00465 #if 0
00466 
00478 class Time
00479 {
00480 public:
00481 
00485     std::string type;
00486 
00490     std::string category;
00491 
00495     std::string unit;
00496 
00500     std::string description;
00501 
00505     double value;
00506 
00511     Time();
00516     ~Time();
00517 
00522     bool IsEqual(Time *that);
00523 
00531     bool setRandom(double density, bool conformant);
00532 };//class Time
00533 #endif
00534 
00546 class TimeMeasurement : public TimeSpan
00547 {
00548 public:
00549 
00553     std::string type;
00554 
00558     std::string category;
00559 
00563     std::string description;
00564 
00569     TimeMeasurement();
00574     ~TimeMeasurement();
00575 
00580     bool IsEqual(TimeMeasurement *that);
00581 
00589     bool setRandom(double density, bool conformant);
00590 };//class TimeMeasurement
00591 
00592 
00604 class TimingInformation
00605 {
00606 public:
00607 
00612     int numberOfTimes;
00613 
00618     TimeMeasurement** time;
00619 
00624     TimingInformation();
00629     ~TimingInformation();
00630 
00635     bool IsEqual(TimingInformation *that);
00636 
00644     bool setRandom(double density, bool conformant);
00645 };//class TimingInformation
00646 
00647 
00659 class JobResult
00660 {
00661 public:
00662 
00664     std::string status;
00665 
00667     std::string submitTime;
00668 
00670     std::string scheduledStartTime;
00671 
00673     std::string actualStartTime;
00674 
00676     std::string endTime;
00677 
00679     TimingInformation* timingInformation;
00680 
00683     StorageCapacity *usedDiskSpace;
00684 
00687     StorageCapacity *usedMemory;
00688 
00691     CPUSpeed *usedCPUSpeed;
00692 
00695     CPUNumber *usedCPUNumber;
00696 
00699     OtherResults *otherResults;
00700 
00705     JobResult();
00710     ~JobResult();
00711 
00716     bool IsEqual(JobResult *that);
00717 
00725     bool setRandom(double density, bool conformant);
00726 };//class JobResult
00727 
00728 
00729 
00730 
00742 class OptimizationSolutionSubstatus
00743 {
00744 public:
00745 
00747     std::string type;
00748 
00750     std::string description;
00751 
00755     OptimizationSolutionSubstatus();
00760     ~OptimizationSolutionSubstatus();
00761 
00766     bool IsEqual(OptimizationSolutionSubstatus *that);
00767 
00775     bool setRandom(double density, bool conformant);
00776 
00777 };//OptimizationSolutionSubstatus
00778 
00779 
00791 class OptimizationSolutionStatus
00792 {
00793 public:
00794 
00796     int numberOfSubstatuses;
00797 
00799     std::string type;
00800 
00802     std::string description;
00803 
00805     OptimizationSolutionSubstatus** substatus;
00806 
00810     OptimizationSolutionStatus();
00815     ~OptimizationSolutionStatus();
00816 
00821     bool IsEqual(OptimizationSolutionStatus *that);
00822 
00830     bool setRandom(double density, bool conformant);
00831 
00832 };//OptimizationSolutionStatus
00833 
00834 
00846 class VarValue
00847 {
00848 public:
00849 
00851     int idx;
00852 
00854     std::string name;
00855 
00856     /* value is the value of the variable indexed by idx
00857      * in the solution
00858      */
00859     double value;
00860 
00865     VarValue();
00870     ~VarValue();
00871 
00876     bool IsEqual(VarValue *that);
00877 
00885     bool setRandom(double density, bool conformant);
00886 
00887 };// class VarValue
00888 
00889 
00900 class VariableValues
00901 {
00902 public:
00903 
00906     int numberOfVar;
00907 
00911     VarValue** var;
00912 
00913 
00918     VariableValues();
00919 
00924     ~VariableValues();
00925 
00930     bool IsEqual(VariableValues *that);
00931 
00939     bool setRandom(double density, bool conformant);
00940 
00941 };// class VariableValues
00942 
00943 
00955 class VarValueString
00956 {
00957 public:
00958 
00960     int idx;
00961 
00963     std::string name;
00964 
00965     /* value is the value of the variable indexed by idx
00966      * in the solution
00967      */
00968     std::string value;
00969 
00974     VarValueString();
00975 
00980     ~VarValueString();
00981 
00986     bool IsEqual(VarValueString *that);
00987 
00995     bool setRandom(double density, bool conformant);
00996 
00997 };// class VarValueString
00998 
00999 
01010 class VariableValuesString
01011 {
01012 public:
01013 
01016     int numberOfVar;
01017 
01021     VarValueString** var;
01022 
01023 
01028     VariableValuesString();
01029 
01034     ~VariableValuesString();
01035 
01040     bool IsEqual(VariableValuesString *that);
01041 
01049     bool setRandom(double density, bool conformant);
01050 
01051 };// class VariableValuesString
01052 
01053 
01064 class OtherVarResult
01065 {
01066 public:
01067 
01069     int idx;
01070 
01072     std::string name;
01073 
01080     std::string value;
01081 
01086     OtherVarResult();
01091     ~OtherVarResult();
01092 
01097     bool IsEqual(OtherVarResult *that);
01098 
01106     bool setRandom(double density, bool conformant);
01107 
01108 };//OtherVarResult
01109 
01110 
01111 
01123 class OtherVariableResult
01124 {
01125 public:
01126 
01130     int numberOfVar;
01131 
01135     int numberOfEnumerations;
01136 
01138     std::string name;
01139 
01143     std::string value;
01144 
01146     std::string description;
01147 
01148     /* a pointer to OtherVarResult objects that will
01149      * give for each variable the index and value for
01150      * this user defined variable result
01151      */
01152     OtherVarResult** var;
01153 
01154     /* a pointer to OtherOptionEnumeration objects that will
01155      * give for each distinct value the set of indices for
01156      * this user defined variable result
01157      */
01158     OtherOptionEnumeration** enumeration;
01159 
01164     OtherVariableResult();
01165 
01170     ~OtherVariableResult();
01171 
01176     bool IsEqual(OtherVariableResult *that);
01177 
01185     bool setRandom(double density, bool conformant);
01186 
01187 };//OtherVariableResult
01188 
01189 
01201 class VariableSolution
01202 {
01203 public:
01204 
01208     int numberOfOtherVariableResults;
01209 
01211     VariableValues *values;
01212 
01214     VariableValuesString *valuesString;
01215 
01217     BasisStatus *basisStatus;
01218 
01222     OtherVariableResult** other;
01223 
01228     VariableSolution();
01229 
01234     ~VariableSolution();
01235 
01240     bool IsEqual(VariableSolution *that);
01241 
01249     bool setRandom(double density, bool conformant);
01250 
01251 };// class VariableSolution
01252 
01253 
01265 class ObjValue
01266 {
01267 public:
01268 
01270     int idx;
01271 
01273     std::string name;
01274 
01276     double value;
01277 
01282     ObjValue();
01283 
01288     ~ObjValue();
01289 
01294     bool IsEqual(ObjValue *that);
01295 
01303     bool setRandom(double density, bool conformant);
01304 };//ObjValue
01305 
01316 class ObjectiveValues
01317 {
01318 public:
01319 
01322     int numberOfObj;
01323 
01328     ObjValue** obj;
01329 
01334     ObjectiveValues();
01335 
01340     ~ObjectiveValues();
01341 
01346     bool IsEqual(ObjectiveValues *that);
01347 
01355     bool setRandom(double density, bool conformant);
01356 
01357 };//ObjectiveValues
01358 
01359 
01371 class OtherObjResult
01372 {
01373 public:
01374 
01376     int idx;
01377 
01379     std::string name;
01380 
01384     std::string value;
01385 
01390     OtherObjResult();
01391 
01396     ~OtherObjResult();
01397 
01402     bool IsEqual(OtherObjResult *that);
01403 
01411     bool setRandom(double density, bool conformant);
01412 
01413 };//OtherObjResult
01414 
01415 
01427 class OtherObjectiveResult
01428 {
01429 public:
01430 
01434     int numberOfObj;
01435 
01439     int numberOfEnumerations;
01440 
01442     std::string name;
01443 
01447     std::string value;
01448 
01450     std::string description;
01451 
01452     /* a pointer to OtherObjResult objects that will
01453      * give for each objective function the index and
01454      * value for this user defined objective function result
01455      */
01456     OtherObjResult** obj;
01457 
01458     /* a pointer to OtherOptionEnumeration objects that will
01459      * give for each distinct value the set of indices for
01460      * this user defined variable result
01461      */
01462     OtherOptionEnumeration** enumeration;
01463 
01468     OtherObjectiveResult();
01469 
01474     ~OtherObjectiveResult();
01475 
01480     bool IsEqual(OtherObjectiveResult *that);
01481 
01489     bool setRandom(double density, bool conformant);
01490 
01491 };//OtherObjectiveResult
01492 
01493 
01494 
01506 class ObjectiveSolution
01507 {
01508 public:
01509 
01513     int numberOfOtherObjectiveResults;
01514 
01516     ObjectiveValues *values;
01517 
01519     BasisStatus *basisStatus;
01520 
01524     OtherObjectiveResult** other;
01525 
01530     ObjectiveSolution();
01531 
01536     ~ObjectiveSolution();
01537 
01542     bool IsEqual(ObjectiveSolution *that);
01543 
01551     bool setRandom(double density, bool conformant);
01552 
01553 };//ObjectiveSolution
01554 
01555 
01556 
01567 class DualVarValue
01568 {
01569 public:
01570 
01572     int idx;
01573 
01575     std::string name;
01576 
01580     double value;
01581 
01586     DualVarValue();
01587 
01592     ~DualVarValue();
01593 
01598     bool IsEqual(DualVarValue *that);
01599 
01607     bool setRandom(double density, bool conformant);
01608 
01609 };//DualVarValue
01610 
01611 
01612 
01623 class DualVariableValues
01624 {
01625 public:
01626 
01629     int numberOfCon;
01630 
01635     DualVarValue** con;
01636 
01641     DualVariableValues();
01642 
01647     ~DualVariableValues();
01648 
01653     bool IsEqual(DualVariableValues *that);
01654 
01662     bool setRandom(double density, bool conformant);
01663 
01664 };//DualVariableValues
01665 
01666 
01678 class OtherConResult
01679 {
01680 public:
01681 
01683     int idx;
01684 
01686     std::string name;
01687 
01693     std::string value;
01694 
01699     OtherConResult();
01700 
01705     ~OtherConResult();
01706 
01711     bool IsEqual(OtherConResult *that);
01712 
01720     bool setRandom(double density, bool conformant);
01721 
01722 };//OtherConResult
01723 
01724 
01736 class OtherConstraintResult
01737 {
01738 public:
01739 
01743     int numberOfCon;
01744 
01748     int numberOfEnumerations;
01749 
01751     std::string name;
01752 
01756     std::string value;
01757 
01759     std::string description;
01760 
01761 
01762     /* a vector of OtherConResult objects that will
01763      * give for each constraint the index and
01764      * value for this user defined objective function result
01765      */
01766     OtherConResult** con;
01767 
01768     /* a pointer to OtherOptionEnumeration objects that will
01769      * give for each distinct value the set of indices for
01770      * this user defined variable result
01771      */
01772     OtherOptionEnumeration** enumeration;
01773 
01778     OtherConstraintResult();
01779 
01784     ~OtherConstraintResult();
01785 
01790     bool IsEqual(OtherConstraintResult *that);
01791 
01799     bool setRandom(double density, bool conformant);
01800 
01801 };//OtherConstraintResult
01802 
01803 
01815 class ConstraintSolution
01816 {
01817 
01818 public:
01819 
01823     int numberOfOtherConstraintResults;
01824 
01826     DualVariableValues *dualValues;
01827 
01829     BasisStatus *basisStatus;
01830 
01834     OtherConstraintResult** other;
01835 
01840     ConstraintSolution();
01841 
01846     ~ConstraintSolution();
01847 
01852     bool IsEqual(ConstraintSolution *that);
01853 
01861     bool setRandom(double density, bool conformant);
01862 
01863 };//ConstraintSolution
01864 
01865 
01866 
01867 
01879 class OtherSolutionResult
01880 {
01881 public:
01882 
01884     std::string name;
01885 
01889     std::string category;
01890 
01892     std::string description;
01893 
01896     int numberOfItems;
01897 
01900     std::string *item;
01901 
01906     OtherSolutionResult();
01907 
01912     ~OtherSolutionResult();
01913 
01918     bool IsEqual(OtherSolutionResult *that);
01919 
01927     bool setRandom(double density, bool conformant);
01928 
01929 };//OtherSolutionResult
01930 
01931 
01932 
01933 
01945 class OtherSolutionResults
01946 {
01947 public:
01948 
01950     int numberOfOtherSolutionResults;
01951 
01955     OtherSolutionResult **otherSolutionResult;
01956 
01961     OtherSolutionResults();
01962 
01967     ~OtherSolutionResults();
01968 
01973     bool IsEqual(OtherSolutionResults *that);
01974 
01982     bool setRandom(double density, bool conformant);
01983 
01984 };//OtherSolutionResults
01985 
01986 
01987 
01999 class OptimizationSolution
02000 {
02001 public:
02002 
02006     int targetObjectiveIdx;
02007 
02011     std::string targetObjectiveName;
02012 
02014     bool weightedObjectives;
02015 
02019     OptimizationSolutionStatus *status;
02020 
02022     std::string message;
02023 
02027     VariableSolution *variables;
02028 
02032     ObjectiveSolution *objectives;
02033 
02037     ConstraintSolution *constraints;
02038 
02042     OtherSolutionResults *otherSolutionResults;
02043 
02048     OptimizationSolution();
02049 
02054     ~OptimizationSolution();
02055 
02060     bool IsEqual(OptimizationSolution *that);
02061 
02069     bool setRandom(double density, bool conformant);
02070 
02071 };// class OptimizationSolution
02072 
02073 
02085 class SolverOutput
02086 {
02087 public:
02088 
02090     std::string name;
02091 
02095     std::string category;
02096 
02098     std::string description;
02099 
02102     int numberOfItems;
02103 
02106     std::string *item;
02107 
02112     SolverOutput();
02113 
02118     ~SolverOutput();
02119 
02124     bool IsEqual(SolverOutput *that);
02125 
02133     bool setRandom(double density, bool conformant);
02134 
02135 };//SolverOutput
02136 
02137 
02138 
02150 class OtherSolverOutput
02151 {
02152 public:
02153 
02156     int numberOfSolverOutputs;
02157 
02160     SolverOutput **solverOutput;
02161 
02166     OtherSolverOutput();
02167 
02172     ~OtherSolverOutput();
02173 
02178     bool IsEqual(OtherSolverOutput *that);
02179 
02187     bool setRandom(double density, bool conformant);
02188 
02189 };//OtherSolverOutput
02190 
02191 
02192 
02204 class OptimizationResult
02205 {
02206 public:
02207 
02211     int numberOfSolutions;
02212 
02216     int numberOfVariables;
02217 
02221     int numberOfObjectives;
02222 
02226     int numberOfConstraints;
02227 
02231     OptimizationSolution **solution;
02232 
02236     OtherSolverOutput *otherSolverOutput;
02237 
02242     OptimizationResult();
02243 
02248     ~OptimizationResult();
02249 
02254     bool IsEqual(OptimizationResult *that);
02255 
02263     bool setRandom(double density, bool conformant);
02264 
02265 };// class OptimizationResult
02266 
02267 
02268 
02279 class OSResult
02280 {
02281 
02282 public:
02283 
02287     GeneralFileHeader *resultHeader;
02288 
02292     GeneralResult *general;
02293 
02297     SystemResult *system;
02298 
02302     ServiceResult *service;
02303 
02307     JobResult *job;
02308 
02312     OptimizationResult *optimization;
02313 
02318     OSResult();
02319 
02324     ~OSResult();
02325 
02326 
02336     bool setResultHeader(std::string name, std::string source,
02337                          std::string fileCreator, std::string description, std::string licence);
02338 
02339 public:
02340 
02344     int m_iVariableNumber;
02345 
02349     int m_iObjectiveNumber;
02350 
02354     int m_iConstraintNumber;
02355 
02359     int m_iNumberOfOtherVariableResults;
02360 
02364     double *m_mdPrimalValues;
02365 
02369     double *m_mdDualValues;
02370 
02371 
02372     std::vector<IndexValuePair*>  primalVals;
02373 
02374     std::vector<IndexValuePair*>  dualVals;
02375 
02376 
02377 public:
02382     bool IsEqual(OSResult *that);
02383 
02384 
02392     bool setRandom(double density, bool conformant);
02393 
02394 
02395 
02396 public:
02397 
02403     GeneralStatus* getGeneralStatus();
02404 
02411     std::string getGeneralStatusType();
02412 
02418     std::string getGeneralStatusDescription();
02419 
02425     int getNumberOfGeneralSubstatuses();
02426 
02433     std::string getGeneralSubstatusName(int i);
02434 
02441     std::string getGeneralSubstatusDescription(int i);
02442 
02448     std::string getGeneralMessage();
02449 
02455     std::string getServiceName();
02456 
02462     std::string getServiceURI();
02463 
02469     std::string getInstanceName();
02470 
02476     std::string getJobID();
02477 
02483     std::string getSolverInvoked();
02484 
02490     std::string getTimeStamp();
02491 
02497     int getNumberOfOtherGeneralResults();
02498 
02505     std::string getOtherGeneralResultName(int idx);
02506 
02507     /* */
02508     std::string getOtherGeneralResultValue(int idx);
02509     /* */
02510     std::string getOtherGeneralResultDescription(int idx);
02511     /* */
02512     std::string getSystemInformation();
02513     /* */
02514     std::string getAvailableDiskSpaceUnit();
02515     /* */
02516     std::string getAvailableDiskSpaceDescription();
02517     /* */
02518     double getAvailableDiskSpaceValue();
02519     /* */
02520     std::string getAvailableMemoryUnit();
02521     /* */
02522     std::string getAvailableMemoryDescription();
02523     /* */
02524     double getAvailableMemoryValue();
02525     /* */
02526     std::string getAvailableCPUSpeedUnit();
02527     /* */
02528     std::string getAvailableCPUSpeedDescription();
02529     /* */
02530     double getAvailableCPUSpeedValue();
02531     /* */
02532     std::string getAvailableCPUNumberDescription();
02533     /* */
02534     int getAvailableCPUNumberValue();
02535     /* */
02536     int getNumberOfOtherSystemResults();
02537     /* */
02538     std::string getOtherSystemResultName(int idx);
02539     /* */
02540     std::string getOtherSystemResultValue(int idx);
02541     /* */
02542     std::string getOtherSystemResultDescription(int idx);
02543     /* */
02544     std::string getCurrentState();
02545     /* */
02546     int getCurrentJobCount();
02547     /* */
02548     int getTotalJobsSoFar();
02549     /* */
02550     std::string getTimeServiceStarted();
02551     /* */
02552     double getServiceUtilization();
02553     /* */
02554     int getNumberOfOtherServiceResults();
02555     /* */
02556     std::string getOtherServiceResultName(int idx);
02557     /* */
02558     std::string getOtherServiceResultValue(int idx);
02559     /* */
02560     std::string getOtherServiceResultDescription(int idx);
02561     /* */
02562     std::string getJobStatus();
02563     /* */
02564     std::string getJobSubmitTime();
02565     /* */
02566     std::string getScheduledStartTime();
02567     /* */
02568     std::string getActualStartTime();
02569     /* */
02570     std::string getJobEndTime();
02571 
02577     int getTimeNumber();
02578 
02585     double getTimeValue();
02586 
02587     /* */
02588     int getNumberOfTimes();
02589     /* */
02590     std::string getTimingInfoUnit(int idx);
02591     /* */
02592     std::string getTimingInfoType(int idx);
02593     /* */
02594     std::string getTimingInfoCategory(int idx);
02595     /* */
02596     std::string getTimingInfoDescription(int idx);
02597     /* */
02598     double getTimingInfoValue(int idx);
02599     /* */
02600     std::string getUsedDiskSpaceUnit();
02601     /* */
02602     std::string getUsedDiskSpaceDescription();
02603     /* */
02604     double getUsedDiskSpaceValue();
02605     /* */
02606     std::string getUsedMemoryUnit();
02607     /* */
02608     std::string getUsedMemoryDescription();
02609     /* */
02610     double getUsedMemoryValue();
02611     /* */
02612     std::string getUsedCPUSpeedUnit();
02613     /* */
02614     std::string getUsedCPUSpeedDescription();
02615     /* */
02616     double getUsedCPUSpeedValue();
02617     /* */
02618     std::string getUsedCPUNumberDescription();
02619     /* */
02620     int getUsedCPUNumberValue();
02621     /* */
02622     int getNumberOfOtherJobResults();
02623     /* */
02624     std::string getOtherJobResultName(int idx);
02625     /* */
02626     std::string getOtherJobResultValue(int idx);
02627     /* */
02628     std::string getOtherJobResultDescription(int idx);
02629 
02635     int getVariableNumber();
02636 
02642     int getObjectiveNumber();
02643 
02649     int getConstraintNumber();
02650 
02656     int getSolutionNumber();
02657 
02658 
02667     OptimizationSolutionStatus* getSolutionStatus( int solIdx);
02668 
02678     std::string getSolutionStatusType(int solIdx);
02679 
02686     std::string getSolutionStatusDescription(int solIdx);
02687 
02688     /* */
02689     int getNumberOfSolutionSubstatuses(int solIdx);
02690     /* */
02691     std::string getSolutionSubstatusType(int solIdx, int substatusIdx);
02692     /* */
02693     std::string getSolutionSubstatusDescription(int solIdx, int substatusIdx);
02694     /* */
02695     int getSolutionTargetObjectiveIdx(int solIdx);
02696     /* */
02697     std::string getSolutionTargetObjectiveName(int solIdx);
02698 
02705     bool getSolutionWeightedObjectives(int solIdx);
02706 
02713     std::string getSolutionMessage(int solIdx);
02714 
02715     /* */
02716     int getNumberOfPrimalVariableValues(int solIdx);
02717     /* */
02718     int getNumberOfVarValues(int solIdx);
02719     /* */
02720     int getVarValueIdx(int solIdx, int varIdx);
02721     /* */
02722     std::string getVarValueName(int solIdx, int varIdx);
02723     /* */
02724     double getVarValue(int solIdx, int varIdx);
02725 
02732     std::vector<IndexValuePair*> getOptimalPrimalVariableValues(int solIdx);
02733 
02734     /* */
02735     int getNumberOfVarValuesString(int solIdx);
02736     /* */
02737     int getVarValueStringIdx(int solIdx, int varIdx);
02738     /* */
02739     std::string getVarValueStringName(int solIdx, int varIdx);
02740     /* */
02741     std::string getVarValueString(int solIdx, int varIdx);
02742 
02751     int getBasisStatusNumberOfEl(int solIdx, int object, int status);
02752 
02762     int getBasisStatusEl(int solIdx, int object, int status, int j);
02763 
02769     int getNumberOfOtherVariableResults( int solIdx);
02770 
02776     int getAnOtherVariableResultNumberOfVar(int solIdx, int iOther);
02777 
02778     /* */
02779     std::string getOtherVariableResultName(int solIdx, int otherIdx);
02780     /* */
02781     std::string getOtherVariableResultValue(int solIdx, int otherIdx);
02782     /* */
02783     std::string getOtherVariableResultDescription(int solIdx, int otherIdx);
02784     /* */
02785     int getOtherVariableResultNumberOfVar(int solIdx, int otherIdx);
02786     /* */
02787     int getOtherVariableResultNumberOfEnumerations(int solIdx, int otherIdx);
02788     /* */
02789     int getOtherVariableResultVarIdx(int solIdx, int otherIdx, int varIdx);
02790     /* */
02791     std::string getOtherVariableResultVar(int solIdx, int otherIdx, int varIdx);
02792 
02800     std::string getOtherVariableResultEnumerationValue(int solIdx,int otherIdx, int enumIdx);
02801 
02809     std::string getOtherVariableResultEnumerationDescription(int solIdx,int otherIdx, int enumIdx);
02810 
02818     int  getOtherVariableResultEnumerationNumberOfEl(int solIdx,int otherIdx, int enumIdx);
02819 
02828     int getOtherVariableResultEnumerationEl(int solIdx,int otherIdx, int enumIdx, int j);
02829 
02830     /* */
02831     int getNumberOfObjValues(int solIdx);
02832     /* */
02833     int getObjValueIdx(int solIdx, int objIdx);
02834     /* */
02835     std::string getObjValueName(int solIdx, int objIdx);
02836     /* */
02837     double getObjValue(int solIdx, int objIdx);
02838 
02846     double getOptimalObjValue(int objIdx, int solIdx);
02847 
02848     /* */
02849     int getNumberOfOtherObjectiveResults(int solIdx);
02850     /* */
02851     std::string getOtherObjectiveResultName(int solIdx, int otherIdx);
02852     /* */
02853     std::string getOtherObjectiveResultValue(int solIdx, int otherIdx);
02854     /* */
02855     std::string getOtherObjectiveResultDescription(int solIdx, int otherIdx);
02856     /* */
02857     int getOtherObjectiveResultNumberOfObj(int solIdx, int otherIdx);
02858     /* */
02859     int getOtherObjectiveResultNumberOfEnumerations(int solIdx, int otherIdx);
02860     /* */
02861     int getOtherObjectiveResultObjIdx(int solIdx, int otherIdx, int objIdx);
02862     /* */
02863     std::string getOtherObjectiveResultObj(int solIdx, int otherIdx, int objIdx);
02864 
02872     std::string getOtherObjectiveResultEnumerationValue(int solIdx,int otherIdx, int enumIdx);
02873 
02881     std::string getOtherObjectiveResultEnumerationDescription(int solIdx,int otherIdx, int enumIdx);
02882 
02890     int  getOtherObjectiveResultEnumerationNumberOfEl(int solIdx,int otherIdx, int enumIdx);
02891 
02900     int getOtherObjectiveResultEnumerationEl(int solIdx,int otherIdx, int enumIdx, int j);
02901 
02902 
02903     /* */
02904     int getNumberOfDualValues(int solIdx);
02905     /* */
02906     int getDualValueIdx(int solIdx, int conIdx);
02907     /* */
02908     std::string getDualValueName(int solIdx, int objIdx);
02909     /* */
02910     double getDualValue(int solIdx, int conIdx);
02911 
02918     std::vector<IndexValuePair*> getOptimalDualVariableValues(int solIdx);
02919 
02920     /* */
02921     int getNumberOfOtherConstraintResults(int solIdx);
02922     /* */
02923     std::string getOtherConstraintResultName(int solIdx, int otherIdx);
02924     /* */
02925     std::string getOtherConstraintResultValue(int solIdx, int otherIdx);
02926     /* */
02927     std::string getOtherConstraintResultDescription(int solIdx, int otherIdx);
02928     /* */
02929     int getOtherConstraintResultNumberOfCon(int solIdx, int otherIdx);
02930     /* */
02931     int getOtherConstraintResultNumberOfEnumerations(int solIdx, int otherIdx);
02932     /* */
02933     int getOtherConstraintResultConIdx(int solIdx, int otherIdx, int conIdx);
02934     /* */
02935     std::string getOtherConstraintResultCon(int solIdx, int otherIdx, int conIdx);
02936 
02937 
02945     std::string getOtherConstraintResultEnumerationValue(int solIdx,int otherIdx, int enumIdx);
02946 
02954     std::string getOtherConstraintResultEnumerationDescription(int solIdx,int otherIdx, int enumIdx);
02955 
02963     int  getOtherConstraintResultEnumerationNumberOfEl(int solIdx,int otherIdx, int enumIdx);
02964 
02973     int getOtherConstraintResultEnumerationEl(int solIdx,int otherIdx, int enumIdx, int j);
02974 
02975 
02976 
02977     /* */
02978     int getNumberOfOtherSolutionResults(int solIdx);
02979     /* */
02980     std::string getOtherSolutionResultName(int solIdx, int otherIdx);
02981     /* */
02982     std::string getOtherSolutionResultCategory(int solIdx, int otherIdx);
02983     /* */
02984     std::string getOtherSolutionResultDescription(int solIdx, int otherIdx);
02985     /* */
02986     int getOtherSolutionResultNumberOfItems(int solIdx, int otherIdx);
02987     /* */
02988     std::string getOtherSolutionResultItem(int solIdx, int otherIdx, int itemIdx);
02989     /* */
02990     int getNumberOfSolverOutputs();
02991     /* */
02992     std::string getSolverOutputName(int otherIdx);
02993     /* */
02994     std::string getSolverOutputCategory(int otherIdx);
02995     /* */
02996     std::string getSolverOutputDescription(int otherIdx);
02997     /* */
02998     int getSolverOutputNumberOfItems(int otherIdx);
02999     /* */
03000     std::string getSolverOutputItem(int otherIdx, int itemIdx);
03001 
03002     // set() methods
03003     //
03004 
03011     bool setGeneralStatus(GeneralStatus *status);
03012 
03020     bool setGeneralStatusType(std::string type);
03021 
03028     bool setNumberOfGeneralSubstatuses(int num);
03029 
03036     bool setGeneralStatusDescription(std::string description);
03037 
03045     bool setGeneralSubstatusName(int idx, std::string name);
03046 
03054     bool setGeneralSubstatusDescription(int idx, std::string description);
03055 
03062     bool setGeneralMessage(std::string message);
03063 
03070     bool setServiceName(std::string serviceName);
03071 
03078     bool setServiceURI(std::string serviceURI);
03079 
03086     bool setInstanceName(std::string instanceName);
03087 
03094     bool setJobID(std::string jobID);
03095 
03102     bool setSolverInvoked(std::string solverInvoked);
03103 
03110     bool setTimeStamp(std::string timeStamp);
03111 
03118     bool setNumberOfOtherGeneralResults(int num);
03119 
03127     bool setOtherGeneralResultName(int idx, std::string name);
03128 
03136     bool setOtherGeneralResultValue(int idx, std::string value);
03137 
03145     bool setOtherGeneralResultDescription(int idx, std::string description);
03146 
03153     bool setSystemInformation(std::string systemInformation);
03154 
03161     bool setAvailableDiskSpaceUnit(std::string unit);
03162 
03169     bool setAvailableDiskSpaceDescription(std::string description);
03170 
03177     bool setAvailableDiskSpaceValue(double value);
03178 
03185     bool setAvailableMemoryUnit(std::string unit);
03186 
03193     bool setAvailableMemoryDescription(std::string description);
03194 
03201     bool setAvailableMemoryValue(double value);
03202 
03209     bool setAvailableCPUSpeedUnit(std::string unit);
03210 
03217     bool setAvailableCPUSpeedDescription(std::string description);
03218 
03225     bool setAvailableCPUSpeedValue(double value);
03226 
03233     bool setAvailableCPUNumberDescription(std::string description);
03234 
03241     bool setAvailableCPUNumberValue(int value);
03242 
03249     bool setNumberOfOtherSystemResults(int num);
03250 
03258     bool setOtherSystemResultName(int idx, std::string name);
03259 
03267     bool setOtherSystemResultValue(int idx, std::string value);
03268 
03276     bool setOtherSystemResultDescription(int idx, std::string description);
03277 
03284     bool setCurrentState(std::string currentState);
03285 
03292     bool setCurrentJobCount(int jobCount);
03293 
03300     bool setTotalJobsSoFar(int number);
03301 
03308     bool setTimeServiceStarted(std::string startTime);
03309 
03316     bool setServiceUtilization(double value);
03317 
03318 
03325     bool setNumberOfOtherServiceResults(int num);
03326 
03334     bool setOtherServiceResultName(int idx, std::string name);
03335 
03343     bool setOtherServiceResultValue(int idx, std::string value);
03344 
03352     bool setOtherServiceResultDescription(int idx, std::string description);
03353 
03354 
03361     bool setJobStatus(std::string status);
03362 
03369     bool setJobSubmitTime(std::string submitTime);
03370 
03377     bool setScheduledStartTime(std::string scheduledStartTime);
03378 
03385     bool setActualStartTime(std::string actualStartTime);
03386 
03393     bool setJobEndTime(std::string endTime);
03394 
03395 
03402     bool setTime(double time);
03403 
03414     bool addTimingInformation(std::string type, std::string category,
03415                               std::string unit, std::string description, double value);
03416 
03429     bool setTimingInformation(int idx, std::string type, std::string category,
03430                               std::string unit, std::string description, double value);
03431 
03438     bool setNumberOfTimes(int numberOfTimes);
03439 
03446     bool setTimeNumber(int timeNumber);
03447 
03454     bool setUsedDiskSpaceUnit(std::string unit);
03455 
03462     bool setUsedDiskSpaceDescription(std::string description);
03463 
03470     bool setUsedDiskSpaceValue(double value);
03471 
03478     bool setUsedMemoryUnit(std::string unit);
03479 
03486     bool setUsedMemoryDescription(std::string description);
03487 
03494     bool setUsedMemoryValue(double value);
03495 
03502     bool setUsedCPUSpeedUnit(std::string unit);
03503 
03510     bool setUsedCPUSpeedDescription(std::string description);
03511 
03518     bool setUsedCPUSpeedValue(double value);
03519 
03526     bool setUsedCPUNumberDescription(std::string description);
03527 
03534     bool setUsedCPUNumberValue(int value);
03535 
03542     bool setNumberOfOtherJobResults(int num);
03543 
03551     bool setOtherJobResultName(int idx, std::string name);
03552 
03560     bool setOtherJobResultValue(int idx, std::string value);
03561 
03569     bool setOtherJobResultDescription(int idx, std::string description);
03570 
03571 
03578     bool setVariableNumber(int variableNumber);
03579 
03586     bool setObjectiveNumber(int objectiveNumber);
03587 
03594     bool setConstraintNumber(int constraintNumber);
03595 
03608     bool setSolutionNumber(int number);
03609 
03610 
03623     bool setSolutionStatus(int solIdx, std::string type, std::string description);
03624 
03632     bool setSolutionStatusType(int solIdx, std::string type);
03633 
03641     bool setNumberOfSolutionSubstatuses(int solIdx, int num);
03642 
03650     bool setSolutionStatusDescription(int solIdx, std::string description);
03651 
03660     bool setSolutionSubstatusType(int solIdx, int substatusIdx, std::string type);
03661 
03670     bool setSolutionSubstatusDescription(int solIdx, int substatusIdx, std::string description);
03671 
03672 
03685     bool setSolutionTargetObjectiveIdx(int solIdx, int objectiveIdx);
03686 
03698     bool setSolutionTargetObjectiveName(int solIdx, std::string objectiveName);
03699 
03709     bool setSolutionWeightedObjectives(int solIdx, bool weightedObjectives);
03710 
03722     bool setSolutionMessage(int solIdx, std::string msg);
03723 
03733     bool setNumberOfPrimalVariableValues(int solIdx, int n);
03734 
03745     bool setPrimalVariableValuesSparse(int solIdx, std::vector<IndexValuePair*> x);
03746 
03756     bool setPrimalVariableValuesDense(int solIdx, double *x);
03757 
03767     bool setNumberOfVarValues(int solIdx, int numberOfVar);
03768 
03781     bool setVarValue(int solIdx, int number, int idx, std::string name, double val);
03782 
03792     bool setNumberOfVarValuesString(int solIdx, int numberOfVar);
03793 
03806     bool setVarValueString(int solIdx, int number, int idx, std::string name, std::string str);
03807 
03808 
03823     bool setBasisStatus(int solIdx, int object, int status, int *i, int ni);
03824 
03841     bool setNumberOfOtherVariableResults(int solIdx, int numberOfOtherVariableResults);
03842 
03860     bool setAnOtherVariableResultSparse(int solIdx, int otherIdx, std::string name, std::string value, std::string description, int *idx,  std::string *s, int n);
03861 
03877     bool setAnOtherVariableResultDense(int solIdx, int otherIdx, std::string name, std::string value, std::string description, std::string *s);
03878 
03892     bool setOtherVariableResultNumberOfVar(int solIdx, int otherIdx, int numberOfVar);
03893 
03907     bool setOtherVariableResultNumberOfEnumerations(int solIdx, int otherIdx, int numberOfEnumerations);
03908 
03922     bool setOtherVariableResultName(int solIdx, int otherIdx, std::string name);
03923 
03937     bool setOtherVariableResultValue(int solIdx, int otherIdx, std::string value);
03938 
03952     bool setOtherVariableResultDescription(int solIdx, int otherIdx, std::string description);
03953 
03968     bool setOtherVariableResultVarIdx(int solIdx, int otherIdx, int varIdx, int idx);
03969 
03984     bool setOtherVariableResultVarName(int solIdx, int otherIdx, int varIdx, std::string name);
03985 
04000     bool setOtherVariableResultVar(int solIdx, int otherIdx, int varIdx, std::string value);
04001 
04021     bool setOtherOptionEnumeration(int solIdx, int otherIdx, int object, int enumIdx, std::string value, std::string description, int *i, int ni);
04022 
04039     bool setNumberOfOtherObjectiveResults(int solIdx, int numberOfOtherObjectiveResults);
04040 
04050     bool setNumberOfObjValues(int solIdx, int numberOfObj);
04051 
04061     bool setNumberOfObjectiveValues(int solIdx, int n);
04062 
04063 
04079     bool setObjectiveValuesSparse(int solIdx, std::vector<IndexValuePair*> x);
04080 
04095     bool setObjectiveValuesDense(int solIdx, double *objectiveValues);
04096 
04109     bool setObjValue(int solIdx, int number, int idx, std::string name, double val);
04110 
04124     bool setOtherObjectiveResultNumberOfObj(int solIdx, int otherIdx, int numberOfObj);
04125 
04139     bool setOtherObjectiveResultNumberOfEnumerations(int solIdx, int otherIdx, int numberOfObj);
04140 
04154     bool setOtherObjectiveResultName(int solIdx, int otherIdx, std::string name);
04155 
04169     bool setOtherObjectiveResultValue(int solIdx, int otherIdx, std::string value);
04170 
04184     bool setOtherObjectiveResultDescription(int solIdx, int otherIdx, std::string description);
04185 
04200     bool setOtherObjectiveResultObjIdx(int solIdx, int otherIdx, int objIdx, int idx);
04201 
04216     bool setOtherObjectiveResultObjName(int solIdx, int otherIdx, int objIdx, std::string name);
04217 
04232     bool setOtherObjectiveResultObj(int solIdx, int otherIdx, int objIdx, std::string value);
04233 
04250     bool setNumberOfOtherConstraintResults(int solIdx, int numberOfOtherConstraintResults);
04251 
04261     bool setNumberOfDualValues(int solIdx, int numberOfCon);
04262 
04263 
04273     bool setNumberOfDualVariableValues(int solIdx, int n);
04274 
04275 
04286     bool setDualVariableValuesSparse(int solIdx, std::vector<IndexValuePair*> x);
04287 
04288 
04297     bool setDualVariableValuesDense(int solIdx, double *y);
04298 
04308     bool setConstraintValuesDense(int solIdx, double *constraintValues);
04309 
04310 
04311 
04324     bool setDualValue(int solIdx, int number, int idx, std::string name, double val);
04325 
04339     bool setOtherConstraintResultNumberOfCon(int solIdx, int otherIdx, int numberOfCon);
04340 
04354     bool setOtherConstraintResultNumberOfEnumerations(int solIdx, int otherIdx, int numberOfCon);
04355 
04369     bool setOtherConstraintResultName(int solIdx, int otherIdx, std::string name);
04370 
04384     bool setOtherConstraintResultValue(int solIdx, int otherIdx, std::string value);
04385 
04399     bool setOtherConstraintResultDescription(int solIdx, int otherIdx, std::string description);
04400 
04415     bool setOtherConstraintResultConIdx(int solIdx, int otherIdx, int conIdx, int idx);
04416 
04431     bool setOtherConstraintResultConName(int solIdx, int otherIdx, int conIdx, std::string name);
04432 
04447     bool setOtherConstraintResultCon(int solIdx, int otherIdx, int conIdx, std::string value);
04448 
04466     bool setNumberOfOtherSolutionResults(int solIdx, int numberOfOtherSolutionResults);
04467 
04477     bool setOtherSolutionResultName(int solIdx, int otherIdx, std::string name);
04478 
04488     bool setOtherSolutionResultCategory(int solIdx, int otherIdx, std::string category);
04489 
04499     bool setOtherSolutionResultDescription(int solIdx, int otherIdx, std::string description);
04500 
04510     bool setOtherSolutionResultNumberOfItems(int solIdx, int otherIdx, int numberOfItems);
04511 
04522     bool setOtherSolutionResultItem(int solIdx, int otherIdx, int itemIdx, std::string item);
04523 
04532     bool setNumberOfSolverOutputs(int numberOfSolverOutputs);
04533 
04541     bool setSolverOutputName(int otherIdx, std::string name);
04542 
04550     bool setSolverOutputCategory(int otherIdx, std::string category);
04551 
04559     bool setSolverOutputDescription(int otherIdx, std::string description);
04560 
04569     bool setSolverOutputNumberOfItems(int otherIdx, int numberOfItems);
04570 
04579     bool setSolverOutputItem(int otherIdx, int itemIdx, std::string item);
04580 
04581 
04582 };
04583 #endif
04584 

Generated on Thu Sep 22 03:06:02 2011 by  doxygen 1.4.7