23 #ifndef INCLUDED_GR_RUNTIME_TAG_CHECKER_H
24 #define INCLUDED_GR_RUNTIME_TAG_CHECKER_H
34 std::vector<tag_t> d_tags;
37 unsigned int d_next_tag_index;
40 tag_checker(std::vector<tag_t>& tags) : d_has_next_tag(false), d_next_tag_index(0)
44 if (!d_tags.empty()) {
45 d_has_next_tag =
true;
52 void get_tags(std::vector<tag_t>& tag_list,
unsigned int offset)
54 while (d_has_next_tag && (offset >= d_next_tag.
offset)) {
55 if (offset == d_next_tag.
offset) {
56 tag_list.push_back(d_next_tag);
58 d_next_tag_index += 1;
59 if (d_next_tag_index >= d_tags.size()) {
60 d_has_next_tag =
false;
62 d_next_tag = d_tags[d_next_tag_index];