initial commit
This commit is contained in:
56
third_party/libhv/evpp/Status.h
vendored
Executable file
56
third_party/libhv/evpp/Status.h
vendored
Executable file
@@ -0,0 +1,56 @@
|
||||
#ifndef HV_STATUS_HPP_
|
||||
#define HV_STATUS_HPP_
|
||||
|
||||
#include <atomic>
|
||||
|
||||
namespace hv {
|
||||
|
||||
class Status {
|
||||
public:
|
||||
enum KStatus {
|
||||
kNull = 0,
|
||||
kInitializing = 1,
|
||||
kInitialized = 2,
|
||||
kStarting = 3,
|
||||
kStarted = 4,
|
||||
kRunning = 5,
|
||||
kPause = 6,
|
||||
kStopping = 7,
|
||||
kStopped = 8,
|
||||
kDestroyed = 9,
|
||||
};
|
||||
|
||||
Status() {
|
||||
status_ = kNull;
|
||||
}
|
||||
~Status() {
|
||||
status_ = kDestroyed;
|
||||
}
|
||||
|
||||
KStatus status() {
|
||||
return status_;
|
||||
}
|
||||
|
||||
void setStatus(KStatus status) {
|
||||
status_ = status;
|
||||
}
|
||||
|
||||
bool isRunning() {
|
||||
return status_ == kRunning;
|
||||
}
|
||||
|
||||
bool isPause() {
|
||||
return status_ == kPause;
|
||||
}
|
||||
|
||||
bool isStopped() {
|
||||
return status_ == kStopped;
|
||||
}
|
||||
|
||||
private:
|
||||
std::atomic<KStatus> status_;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif // HV_STATUS_HPP_
|
||||
Reference in New Issue
Block a user