* \brief Which values to select for branching first * * \ingroup TaskModelIntBranch */
| 5034 | * \ingroup TaskModelIntBranch |
| 5035 | */ |
| 5036 | class BoolValBranch : public ValBranch<BoolVar> { |
| 5037 | public: |
| 5038 | /// Which value selection |
| 5039 | enum Select { |
| 5040 | SEL_MIN, ///< Select smallest value |
| 5041 | SEL_MAX, ///< Select largest value |
| 5042 | SEL_RND, ///< Select random value |
| 5043 | SEL_VAL_COMMIT ///< Select value according to user-defined functions |
| 5044 | }; |
| 5045 | protected: |
| 5046 | /// Which value to select |
| 5047 | Select s; |
| 5048 | public: |
| 5049 | /// Initialize with selection strategy \a s |
| 5050 | BoolValBranch(Select s = SEL_MIN); |
| 5051 | /// Initialize with random number generator \a r |
| 5052 | BoolValBranch(Rnd r); |
| 5053 | /// Initialize with value function \a f and commit function \a c |
| 5054 | BoolValBranch(BoolBranchVal v, BoolBranchCommit c); |
| 5055 | /// Return selection strategy |
| 5056 | Select select(void) const; |
| 5057 | }; |
| 5058 | |
| 5059 | /** |
| 5060 | * \defgroup TaskModelIntBranchVal Value selection for integer and Boolean variables |
no outgoing calls
no test coverage detected