summaryrefslogtreecommitdiff
path: root/test/FixedNumberRandomizer.h
blob: dacaad99715d7b1882924a369257a5f41913ac36 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#ifndef _D_FIXED_NUMBER_RANDOMIZER_H_
#define _D_FIXED_NUMBER_RANDOMIZER_H_

#include "Randomizer.h"
#include <cstdlib>

namespace aria2 {

class FixedNumberRandomizer : public Randomizer {
private:
  int32_t fixedNumber;
public:
  FixedNumberRandomizer():fixedNumber(0) {}

  virtual ~FixedNumberRandomizer() {}

  virtual long int getRandomNumber() {
    return fixedNumber;
  }

  virtual long int getMaxRandomNumber() {
    return RAND_MAX;
  }

  virtual long int getRandomNumber(long int to)
  {
    return getRandomNumber();
  }

  void setFixedNumber(int32_t num) {
    this->fixedNumber = num;
  }

  int32_t getFixedNumber() const {
    return fixedNumber;
  }
};

} // namespace aria2

#endif // _D_FIXED_NUMBER_RANDOMIZER_H_