MLBookProc 2.1
Loading...
Searching...
No Matches
RemoveBook.h
1/*
2 * Copyright (C) 2026 Yury Bobylev <bobilev_yury@mail.ru>
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the Free
6 * Software Foundation, version 3.
7 *
8 * This program is distributed in the hope that it will be useful, but WITHOUT
9 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
11 * more details.
12 *
13 * You should have received a copy of the GNU General Public License along with
14 * this program. If not, see <https://www.gnu.org/licenses/>.
15 */
16#ifndef REMOVEBOOK_H
17#define REMOVEBOOK_H
18
19#include <BaseID.h>
20#include <LibArchive.h>
21#include <UDBElement.h>
22#include <functional>
23
29class RemoveBook : public LibArchive
30{
31public:
36 RemoveBook(const std::shared_ptr<MLBookProc> &mlbp);
37
47 void
48 removeBook(const std::filesystem::path &base_path,
49 const UDBElement &book_search_result);
50
55 std::function<void(double processed, double total)> signal_parsing_progress;
56
57private:
58 size_t
59 removeFromArchive(const UDBElement &path,
60 const std::filesystem::path &archive_path);
61
62 BaseID bid;
63};
64
65#endif // REMOVEBOOK_H
The BaseID class.
Definition BaseID.h:28
std::shared_ptr< MLBookProc > mlbp
Definition LibArchive.h:499
LibArchive(const std::shared_ptr< MLBookProc > &mlbp)
LibArchive constructor.
std::function< void(double processed, double total)> signal_parsing_progress
Definition RemoveBook.h:55
void removeBook(const std::filesystem::path &base_path, const UDBElement &book_search_result)
RemoveBook(const std::shared_ptr< MLBookProc > &mlbp)
RemoveBook constructor.