IMediaLibrary.h 535 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11
#ifndef IMEDIALIBRARY_H
#define IMEDIALIBRARY_H

#include <vector>
#include <string>

#include "IFile.h"

class IMediaLibrary
{
    public:
12 13
        virtual ~IMediaLibrary() {}
        virtual bool initialize( const std::string& dbPath ) = 0;
Hugo Beauzée-Luyssen's avatar
Hugo Beauzée-Luyssen committed
14
        virtual IFile* addFile( const std::string& path ) = 0;
15
        virtual IFile* file( const std::string& path ) = 0;
16 17 18
        virtual const std::vector<IFile*>& files() = 0;
};

19 20 21 22 23 24
class MediaLibraryFactory
{
    public:
        static IMediaLibrary* create();
};

25
#endif // IMEDIALIBRARY_H