42 lines
1 KiB
C++
42 lines
1 KiB
C++
#ifndef MEDIALIBRARY_H
|
|
#define MEDIALIBRARY_H
|
|
|
|
#include <QDir>
|
|
|
|
#include "settings.h"
|
|
#include "defines.h"
|
|
|
|
// Media Information for MELIn packages. v1.0
|
|
struct MediaFile {
|
|
quint8 Number; // 0-based contiguous index of the media.
|
|
QString MediaName;// Media name.
|
|
quint32 MediaLength;// Media length (in frames).
|
|
};
|
|
|
|
// Media Library for ELin packages v1.0
|
|
struct MediaFolder {
|
|
quint8 m_Id; // Library id.
|
|
QString m_Name;// Library name.
|
|
quint8 m_ElementCount;// Number of elements in the library.
|
|
QList<MediaFile> m_MediaInformation; // Pointer to the Medias Information List of this Library
|
|
};
|
|
|
|
class MediaLibrary : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
MediaLibrary(QObject *parent = 0);
|
|
QString requestNewFile(int folder, int layer);
|
|
void initMediaLibrary();
|
|
inline uint getMediaFolderCount(int folder) {
|
|
return m_media->at(folder).m_ElementCount;
|
|
}
|
|
|
|
private:
|
|
QList<MediaFolder> *m_media;
|
|
QList<MediaFile> getMediaInformation(QDir dir);
|
|
|
|
};
|
|
|
|
#endif // MEDIALIBRARY_H
|