| 90 | |
| 91 | template <typename T> |
| 92 | IC static void load_data(T& data, M& stream, const P& p) |
| 93 | { |
| 94 | if (p.can_clear()) |
| 95 | data.clear(); |
| 96 | u32 count = stream.r_u32(); |
| 97 | for (u32 i = 0; i < count; ++i) |
| 98 | { |
| 99 | typename T::value_type temp; |
| 100 | CLoader<M, P>::load_data(temp, stream, p); |
| 101 | if (p(data, temp)) |
| 102 | add(data, temp); |
| 103 | } |
| 104 | } |
| 105 | }; |
| 106 | |
| 107 | template <typename T> |