[vlc-commits] demux: adaptative: add tokenizer helper
Francois Cartegnie
git at videolan.org
Thu Aug 6 17:30:19 CEST 2015
vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Sun Aug 2 16:22:59 2015 +0200| [cf3b1cf58452b0343803c57c4aad96bc49541af5] | committer: Francois Cartegnie
demux: adaptative: add tokenizer helper
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cf3b1cf58452b0343803c57c4aad96bc49541af5
---
modules/demux/adaptative/tools/Helper.cpp | 16 ++++++++++++++++
modules/demux/adaptative/tools/Helper.h | 2 ++
2 files changed, 18 insertions(+)
diff --git a/modules/demux/adaptative/tools/Helper.cpp b/modules/demux/adaptative/tools/Helper.cpp
index 40e10c6..435df4c 100644
--- a/modules/demux/adaptative/tools/Helper.cpp
+++ b/modules/demux/adaptative/tools/Helper.cpp
@@ -60,3 +60,19 @@ bool Helper::ifind(std::string haystack, std::string needle)
transform(needle.begin(), needle.end(), needle.begin(), toupper);
return haystack.find(needle) != std::string::npos;
}
+
+std::list<std::string> Helper::tokenize(const std::string &str, char c)
+{
+ std::list<std::string> ret;
+ std::size_t prev = 0;
+ std::size_t cur = str.find_first_of(c, 0);
+ while(cur != std::string::npos)
+ {
+ ret.push_back(str.substr(prev, cur - prev));
+ prev = cur + 1;
+ cur = str.find_first_of(c, cur + 1);
+ }
+
+ ret.push_back(str.substr(prev));
+ return ret;
+}
diff --git a/modules/demux/adaptative/tools/Helper.h b/modules/demux/adaptative/tools/Helper.h
index 20357b2..24a6e92 100644
--- a/modules/demux/adaptative/tools/Helper.h
+++ b/modules/demux/adaptative/tools/Helper.h
@@ -26,6 +26,7 @@
#define HELPER_H_
#include <string>
+#include <list>
namespace adaptative
{
@@ -35,6 +36,7 @@ namespace adaptative
static std::string combinePaths (const std::string &path1, const std::string &path2);
static std::string getDirectoryPath (const std::string &path);
static bool ifind (std::string haystack, std::string needle);
+ static std::list<std::string> tokenize(const std::string &, char);
};
}
More information about the vlc-commits
mailing list