PictureDao.h 589 B

1234567891011121314151617181920212223242526272829
  1. #ifndef PICTUREDAO_H
  2. #define PICTUREDAO_H
  3. #include <QSqlDatabase>
  4. #include <QVector>
  5. #include "Picture.h"
  6. class QSqlDatabase;
  7. class Picture;
  8. class PictureDao {
  9. public:
  10. PictureDao(QSqlDatabase& database);
  11. void init() const;
  12. void addPictureInAlbum(int albumId, Picture& picture) const;
  13. void removePicture(int id) const;
  14. void removePictureForAlbum(int albumId) const;
  15. std::unique_ptr<std::vector<std::unique_ptr<Picture>>> picturesForAlbum(
  16. int albumId) const;
  17. private:
  18. QSqlDatabase& mDatabase;
  19. const QString mTableName = "pictures";
  20. };
  21. #endif // PICTUREDAO_H