MLBookProc 1.0.1
 
Loading...
Searching...
No Matches
RemoveBook.h
1/*
2 * Copyright (C) 2024-2025 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
17#ifndef REMOVEBOOK_H
18#define REMOVEBOOK_H
19
20#include <AuxFunc.h>
21#include <BookBaseEntry.h>
22#include <BookMarks.h>
23#include <SelfRemovingPath.h>
24#include <filesystem>
25#include <memory>
26#include <string>
27
34{
35public:
43 RemoveBook(const std::shared_ptr<AuxFunc> &af, const BookBaseEntry &bbe,
44 const std::string &col_name,
45 const std::shared_ptr<BookMarks> &bookmarks);
46
52 void
54
55private:
56 std::filesystem::path
57 archive_remove(const SelfRemovingPath &out_dir);
58
59 std::shared_ptr<AuxFunc> af;
60 BookBaseEntry bbe;
61 std::string col_name;
62 std::shared_ptr<BookMarks> bookmarks;
63
64 SelfRemovingPath keep_path;
65};
66
67#endif // REMOVEBOOK_H
The BookBaseEntry class.
Definition BookBaseEntry.h:30
RemoveBook(const std::shared_ptr< AuxFunc > &af, const BookBaseEntry &bbe, const std::string &col_name, const std::shared_ptr< BookMarks > &bookmarks)
RemoveBook constructor.
void removeBook()
Removes book.
The SelfRemovingPath class.
Definition SelfRemovingPath.h:35