gravatar
kpeter (Peter Kovacs)
kpeter@inf.elte.hu
Clarify type names in NetworkSimplex (#353) This patch clarifies the misleading effects of the renamings in [f3bc4e9b5f3a].
0 1 0
default
1 file changed with 11 insertions and 7 deletions:
↑ Collapse diff ↑
Show white space 16 line context
... ...
@@ -165,22 +165,26 @@
165 165

	
166 166
    typedef std::vector<int> IntVector;
167 167
    typedef std::vector<Value> ValueVector;
168 168
    typedef std::vector<Cost> CostVector;
169 169
    typedef std::vector<char> BoolVector;
170 170
    // Note: vector<char> is used instead of vector<bool> for efficiency reasons
171 171

	
172 172
    // State constants for arcs
173
    enum ArcStateEnum {
173
    enum ArcState {
174 174
      STATE_UPPER = -1,
175 175
      STATE_TREE  =  0,
176 176
      STATE_LOWER =  1
177 177
    };
178 178

	
179
    typedef std::vector<signed char> StateVector;
180
    // Note: vector<signed char> is used instead of vector<ArcState> for
181
    // efficiency reasons
182

	
179 183
  private:
180 184

	
181 185
    // Data related to the underlying digraph
182 186
    const GR &_graph;
183 187
    int _node_num;
184 188
    int _arc_num;
185 189
    int _all_arc_num;
186 190
    int _search_arc_num;
... ...
@@ -210,17 +214,17 @@
210 214
    IntVector _parent;
211 215
    IntVector _pred;
212 216
    IntVector _thread;
213 217
    IntVector _rev_thread;
214 218
    IntVector _succ_num;
215 219
    IntVector _last_succ;
216 220
    IntVector _dirty_revs;
217 221
    BoolVector _forward;
218
    BoolVector _state;
222
    StateVector _state;
219 223
    int _root;
220 224

	
221 225
    // Temporary data used in the current pivot iteration
222 226
    int in_arc, join, u_in, v_in, u_out, v_out;
223 227
    int first, second, right, last;
224 228
    int stem, par_stem, new_stem;
225 229
    Value delta;
226 230
    
... ...
@@ -241,17 +245,17 @@
241 245
    class FirstEligiblePivotRule
242 246
    {
243 247
    private:
244 248

	
245 249
      // References to the NetworkSimplex class
246 250
      const IntVector  &_source;
247 251
      const IntVector  &_target;
248 252
      const CostVector &_cost;
249
      const BoolVector &_state;
253
      const StateVector &_state;
250 254
      const CostVector &_pi;
251 255
      int &_in_arc;
252 256
      int _search_arc_num;
253 257

	
254 258
      // Pivot rule data
255 259
      int _next_arc;
256 260

	
257 261
    public:
... ...
@@ -293,17 +297,17 @@
293 297
    class BestEligiblePivotRule
294 298
    {
295 299
    private:
296 300

	
297 301
      // References to the NetworkSimplex class
298 302
      const IntVector  &_source;
299 303
      const IntVector  &_target;
300 304
      const CostVector &_cost;
301
      const BoolVector &_state;
305
      const StateVector &_state;
302 306
      const CostVector &_pi;
303 307
      int &_in_arc;
304 308
      int _search_arc_num;
305 309

	
306 310
    public:
307 311

	
308 312
      // Constructor
309 313
      BestEligiblePivotRule(NetworkSimplex &ns) :
... ...
@@ -332,17 +336,17 @@
332 336
    class BlockSearchPivotRule
333 337
    {
334 338
    private:
335 339

	
336 340
      // References to the NetworkSimplex class
337 341
      const IntVector  &_source;
338 342
      const IntVector  &_target;
339 343
      const CostVector &_cost;
340
      const BoolVector &_state;
344
      const StateVector &_state;
341 345
      const CostVector &_pi;
342 346
      int &_in_arc;
343 347
      int _search_arc_num;
344 348

	
345 349
      // Pivot rule data
346 350
      int _block_size;
347 351
      int _next_arc;
348 352

	
... ...
@@ -405,17 +409,17 @@
405 409
    class CandidateListPivotRule
406 410
    {
407 411
    private:
408 412

	
409 413
      // References to the NetworkSimplex class
410 414
      const IntVector  &_source;
411 415
      const IntVector  &_target;
412 416
      const CostVector &_cost;
413
      const BoolVector &_state;
417
      const StateVector &_state;
414 418
      const CostVector &_pi;
415 419
      int &_in_arc;
416 420
      int _search_arc_num;
417 421

	
418 422
      // Pivot rule data
419 423
      IntVector _candidates;
420 424
      int _list_length, _minor_limit;
421 425
      int _curr_length, _minor_count;
... ...
@@ -508,17 +512,17 @@
508 512
    class AlteringListPivotRule
509 513
    {
510 514
    private:
511 515

	
512 516
      // References to the NetworkSimplex class
513 517
      const IntVector  &_source;
514 518
      const IntVector  &_target;
515 519
      const CostVector &_cost;
516
      const BoolVector &_state;
520
      const StateVector &_state;
517 521
      const CostVector &_pi;
518 522
      int &_in_arc;
519 523
      int _search_arc_num;
520 524

	
521 525
      // Pivot rule data
522 526
      int _block_size, _head_length, _curr_length;
523 527
      int _next_arc;
524 528
      IntVector _candidates;
0 comments (0 inline)