17 std::vector<unsigned int> interleave_map;
20 std::vector<unsigned char> data_interleaved(data.size());
21 for(
int x = 0; x < data.size(); x += interleave_map.size())
22 for(
int y = 0; y < interleave_map.size(); y++)
23 data_interleaved[x + interleave_map[y]] = data[x + y];
24 return data_interleaved;
30 std::vector<unsigned int> deinterleave_map;
33 std::vector<unsigned char>data_deinterleaved(data.size());
34 for(
int s = 0; s < data.size(); s += deinterleave_map.size())
35 for(
int t = 0; t < deinterleave_map.size(); t++)
36 data_deinterleaved[s + deinterleave_map[t]] = data[s + t];
37 return data_deinterleaved;