@@ -10,16 +10,16 @@ template <class T> class Grid: public std::vector<T> {
10
10
11
11
public:
12
12
Grid () {}
13
- Grid (size_t rows , size_t cols , const T &zero) {
13
+ Grid (size_t cols , size_t rows , const T &zero) {
14
14
_rows = rows;
15
15
_cols = cols;
16
16
_zero = zero;
17
17
this ->resize (rows*cols, _zero);
18
18
}
19
19
size_t rows () const { return _rows; }
20
20
size_t cols () const { return _cols; }
21
- T &at (size_t row, size_t col) { return (*this )[row + col*_rows ]; }
22
- const T &at (size_t row, size_t col) const { return (*this )[row + col*_rows ]; }
21
+ T &at (size_t row, size_t col) { return (*this )[row + col*_cols ]; }
22
+ const T &at (size_t row, size_t col) const { return (*this )[row + col*_cols ]; }
23
23
void fill (T t) {
24
24
for (T &v: *this )
25
25
v = t;
@@ -54,8 +54,8 @@ template <class T> class Grid: public std::vector<T> {
54
54
Grid result (_rows, _cols, _zero);
55
55
56
56
if (alongRows) {
57
- for (int i = 0 ; i < _rows; ++i) {
58
- for (int j = 0 ; j < _cols; ++j) {
57
+ for (int i = 0 ; i < int ( _rows) ; ++i) {
58
+ for (int j = 0 ; j < int ( _cols) ; ++j) {
59
59
T sum = _zero;
60
60
for (int k = -radius; k <= radius; ++k) {
61
61
int idx = j + k;
@@ -67,12 +67,12 @@ template <class T> class Grid: public std::vector<T> {
67
67
}
68
68
}
69
69
} else {
70
- for (int j = 0 ; j < _cols; ++j) {
71
- for (int i = 0 ; i < _rows; ++i) {
70
+ for (int j = 0 ; j < int ( _cols) ; ++j) {
71
+ for (int i = 0 ; i < int ( _rows) ; ++i) {
72
72
T sum = _zero;
73
73
for (int k = -radius; k <= radius; ++k) {
74
74
int idx = i + k;
75
- if (idx >= 0 && idx < _rows) {
75
+ if (idx >= 0 && idx < int ( _rows) ) {
76
76
sum += at (idx, j) * kernel[k + radius];
77
77
}
78
78
}
0 commit comments