Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
AbstractProgress.hpp
Go to the documentation of this file.
1#ifndef LIBS_CORE_ABSTRACTPROGRESS_HPP_
2#define LIBS_CORE_ABSTRACTPROGRESS_HPP_
3
4#include <cstdint>
5#include <string>
6
8{
9public:
11 AbstractProgress(const AbstractProgress &other) = delete;
14
17
18 virtual void begin() = 0;
19 virtual void end() = 0;
20 void incrElements(uint64_t incrElements, const std::string &extraInfo = "");
21 void incrElement(const std::string &extraInfo = "");
22
23 void setHeader(const std::string &header);
24 void setHeaderWithNumberElements(const std::string &header, uint64_t numElements);
25 void setMessage(const std::string &txtMsg);
26 void setMessageDestroying(const std::string &txtMsg);
27
28 virtual bool isCancelling() = 0;
29
30protected:
31 virtual void resetProgress() = 0;
32 virtual void visibleProgress(bool isVisible) = 0;
33 virtual void writeCurrentElements(const std::string &header, uint64_t currentElements,
34 const std::string &extraInfo) = 0;
35 virtual void writeMessage(const std::string &header) = 0;
36 virtual void writeWithNumElements(const std::string &header, uint64_t currentElements, uint64_t numElements,
37 const std::string &extraInfo) = 0;
38
39private:
40 void prvResetCounter(const std::string &header);
41
43 uint64_t m_numElements;
45
46 std::string m_header;
47};
48
49#endif /* LIBS_CORE_ABSTRACTPROGRESS_HPP_ */
Definition AbstractProgress.hpp:8
void setHeader(const std::string &header)
Definition AbstractProgress.cpp:32
virtual void resetProgress()=0
AbstractProgress()
Definition AbstractProgress.cpp:3
virtual void writeWithNumElements(const std::string &header, uint64_t currentElements, uint64_t numElements, const std::string &extraInfo)=0
virtual void visibleProgress(bool isVisible)=0
AbstractProgress(AbstractProgress &&other)=delete
void setMessageDestroying(const std::string &txtMsg)
Definition AbstractProgress.cpp:59
AbstractProgress(const AbstractProgress &other)=delete
virtual ~AbstractProgress()
virtual void writeCurrentElements(const std::string &header, uint64_t currentElements, const std::string &extraInfo)=0
virtual void writeMessage(const std::string &header)=0
AbstractProgress & operator=(AbstractProgress &&other)=delete
AbstractProgress & operator=(const AbstractProgress &other)=delete
void incrElements(uint64_t incrElements, const std::string &extraInfo="")
Definition AbstractProgress.cpp:13
std::string m_header
Definition AbstractProgress.hpp:46
uint64_t m_currentElements
Definition AbstractProgress.hpp:44
bool m_withElements
Definition AbstractProgress.hpp:42
uint64_t m_numElements
Definition AbstractProgress.hpp:43
virtual bool isCancelling()=0
void incrElement(const std::string &extraInfo="")
Definition AbstractProgress.cpp:27
void setMessage(const std::string &txtMsg)
Definition AbstractProgress.cpp:51
void prvResetCounter(const std::string &header)
Definition AbstractProgress.cpp:67
void setHeaderWithNumberElements(const std::string &header, uint64_t numElements)
Definition AbstractProgress.cpp:41
virtual void end()=0
virtual void begin()=0