X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=core%2Fproducer%2Fmedia_info%2Fmedia_info_repository.h;h=c01fec67cb3da1733646eae4456ea08b27961e42;hb=4abe37aece37ac56037f2c00cb3c4f1e2c2a9cee;hp=c9b93df1eaf7ed68c151c585d0c4a1fb2be785e1;hpb=ae9046a81c650f0f0565fc16021b019f37420822;p=casparcg diff --git a/core/producer/media_info/media_info_repository.h b/core/producer/media_info/media_info_repository.h index c9b93df1e..c01fec67c 100644 --- a/core/producer/media_info/media_info_repository.h +++ b/core/producer/media_info/media_info_repository.h @@ -22,18 +22,19 @@ #pragma once #include +#include namespace caspar { namespace core { struct media_info; +typedef std::function media_info_extractor; struct media_info_repository { virtual ~media_info_repository() { } - virtual void store(std::wstring media_file, media_info info) = 0; - virtual bool try_load( - const std::wstring& media_file, media_info& info) const = 0; - virtual void remove(const std::wstring& media_file) = 0; + virtual void register_extractor(media_info_extractor extractor) = 0; + virtual media_info get(const std::wstring& file) = 0; + virtual void remove(const std::wstring& file) = 0; }; }}