aboutsummaryrefslogtreecommitdiffstats
path: root/src/strset.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/strset.h (renamed from src/tagTracker.h)33
1 files changed, 25 insertions, 8 deletions
diff --git a/src/tagTracker.h b/src/strset.h
index 2edb5aad0..41ef0e1bd 100644
--- a/src/tagTracker.h
+++ b/src/strset.h
@@ -1,5 +1,5 @@
/* the Music Player Daemon (MPD)
- * Copyright (C) 2003-2007 by Warren Dukes (warren.dukes@gmail.com)
+ * Copyright (C) 2008 Max Kellermann <max@duempel.org>
* This project's homepage is: http://www.musicpd.org
*
* This program is free software; you can redistribute it and/or modify
@@ -16,17 +16,34 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-#ifndef TAG_TRACKER_H
-#define TAG_TRACKER_H
+/**
+ * "struct strset" is a hashed string set: you can add strings to this
+ * library, and it stores them as a set of unique strings. You can
+ * get the size of the set, and you can enumerate through all values.
+ *
+ * It is important to note that the strset does not copy the string
+ * values - it stores the exact pointers it was given in strset_add().
+ */
+
+#ifndef STRSET_H
+#define STRSET_H
+
+#include "gcc.h"
+
+struct strset;
+
+mpd_malloc struct strset *strset_new(void);
+
+void strset_free(struct strset *set);
-int getNumberOfTagItems(int type);
+void strset_add(struct strset *set, const char *value);
-void printMemorySavedByTagTracker(void);
+int strset_get(const struct strset *set, const char *value);
-void resetVisitedFlagsInTagTracker(int type);
+unsigned strset_size(const struct strset *set);
-void visitInTagTracker(int type, const char *str);
+void strset_rewind(struct strset *set);
-void printVisitedInTagTracker(int fd, int type);
+const char *strset_next(struct strset *set);
#endif