1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-22 22:13:35 +02:00
vcmi/lib/LoadProgress.h
2022-08-31 01:24:12 +04:00

32 lines
468 B
C++

#ifndef LOADPROGRESS_H
#define LOADPROGRESS_H
#include "StdInc.h"
#include <atomic>
namespace Load
{
using Type = unsigned char;
class DLL_LINKAGE Progress
{
public:
Progress();
virtual ~Progress() = default;
Type get() const;
bool finished() const;
void set(Type);
void reset(int s = 100);
void finish();
void steps(int);
void stepsTill(int, Type);
void step(int count = 1);
private:
std::atomic<Type> _progress, _step;
};
}
#endif // LOADPROGRESS_H