| 42 | |
| 43 | template <typename T> |
| 44 | T filter(const T& data, const std::vector<bool>& mask) { |
| 45 | const size_t num_rows = data.rows(); |
| 46 | size_t valid_rows = 0; |
| 47 | for (auto itr : mask) { |
| 48 | if (!itr) valid_rows++; |
| 49 | } |
| 50 | |
| 51 | T result(valid_rows, data.cols()); |
| 52 | size_t count = 0; |
| 53 | for (size_t i=0; i<num_rows; i++) { |
| 54 | if (mask[i]) continue; |
| 55 | result.row(count) = data.row(i); |
| 56 | count++; |
| 57 | } |
| 58 | |
| 59 | return result; |
| 60 | } |
| 61 | } |
| 62 | |
| 63 | using namespace TilerEngineHelper; |
no outgoing calls