mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-02-27 14:10:47 +00:00
Add auxiliary functions to the taglist library.
This commit is contained in:
parent
c0b4090924
commit
944716c45a
2 changed files with 47 additions and 0 deletions
|
@ -8,6 +8,47 @@ void Tag_Add (taglist_t* list, const mtag_t tag)
|
|||
list->tags[list->count++] = tag;
|
||||
}
|
||||
|
||||
/// Sets the first tag entry in a taglist.
|
||||
void Tag_FSet (taglist_t* list, const mtag_t tag)
|
||||
{
|
||||
if (!list->count)
|
||||
{
|
||||
Tag_Add(list, tag);
|
||||
return;
|
||||
}
|
||||
|
||||
list->tags[0] = tag;
|
||||
}
|
||||
|
||||
/// Gets the first tag entry in a taglist.
|
||||
mtag_t Tag_FGet (const taglist_t* list)
|
||||
{
|
||||
if (list->count)
|
||||
return list->tags[0];
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
boolean Tag_Find (const taglist_t* list, const mtag_t tag)
|
||||
{
|
||||
size_t i;
|
||||
for (i = 0; i < list->count; i++)
|
||||
if (list->tags[i] == tag)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
boolean Tag_Share (const taglist_t* list1, const taglist_t* list2)
|
||||
{
|
||||
size_t i;
|
||||
for (i = 0; i < list1->count; i++)
|
||||
if (Tag_Find(list2, list1->tags[i]))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
boolean Tag_Compare (const taglist_t* list1, const taglist_t* list2)
|
||||
{
|
||||
size_t i;
|
||||
|
|
|
@ -15,6 +15,12 @@ typedef struct
|
|||
} taglist_t;
|
||||
|
||||
void Tag_Add (taglist_t* list, const mtag_t tag);
|
||||
|
||||
void Tag_FSet (taglist_t* list, const mtag_t tag);
|
||||
mtag_t Tag_FGet (const taglist_t* list);
|
||||
boolean Tag_Find (const taglist_t* list, const mtag_t tag);
|
||||
boolean Tag_Share (const taglist_t* list1, const taglist_t* list2);
|
||||
|
||||
boolean Tag_Compare (const taglist_t* list1, const taglist_t* list2);
|
||||
|
||||
typedef struct
|
||||
|
|
Loading…
Reference in a new issue