9 #ifndef MPD_UTIL_MPD_WRITER_H_
10 #define MPD_UTIL_MPD_WRITER_H_
17 #include "packager/base/macros.h"
18 #include "packager/mpd/base/mpd_notifier.h"
19 #include "packager/mpd/base/mpd_options.h"
37 virtual std::unique_ptr<MpdNotifier> Create(
38 DashProfile dash_profile,
40 const std::vector<std::string>& base_urls,
41 const std::string& output_path) = 0;
61 bool AddFile(
const std::string& media_info_path,
62 const std::string& mpd_path);
66 void AddBaseUrl(
const std::string& base_url);
75 bool WriteMpdToFile(
const char* file_name);
78 friend class MpdWriterTest;
80 void SetMpdNotifierFactoryForTest(
81 std::unique_ptr<MpdNotifierFactory> factory);
83 std::list<MediaInfo> media_infos_;
84 std::vector<std::string> base_urls_;
86 std::unique_ptr<MpdNotifierFactory> notifier_factory_;
93 #endif // MPD_UTIL_MPD_WRITER_H_