11 #ifndef INCLUDED_GR_RUNTIME_TAG_CHECKER_H
12 #define INCLUDED_GR_RUNTIME_TAG_CHECKER_H
23 std::vector<tag_t> d_tags;
26 unsigned int d_next_tag_index;
29 tag_checker(std::vector<tag_t>& tags) : d_has_next_tag(false), d_next_tag_index(0)
33 if (!d_tags.empty()) {
34 d_has_next_tag =
true;
41 void get_tags(std::vector<tag_t>& tag_list,
unsigned int offset)
43 while (d_has_next_tag && (offset >= d_next_tag.
offset)) {
44 if (offset == d_next_tag.
offset) {
45 tag_list.push_back(d_next_tag);
47 d_next_tag_index += 1;
48 if (d_next_tag_index >= d_tags.size()) {
49 d_has_next_tag =
false;
51 d_next_tag = d_tags[d_next_tag_index];