Adjusted workflow.
This commit is contained in:
43
include/ehs/system/BaseSemaphore.h
Normal file
43
include/ehs/system/BaseSemaphore.h
Normal file
@@ -0,0 +1,43 @@
|
||||
#pragma once
|
||||
|
||||
#include "ehs/EHS.h"
|
||||
#include "ehs/Str.h"
|
||||
|
||||
namespace ehs
|
||||
{
|
||||
class BaseSemaphore
|
||||
{
|
||||
private:
|
||||
Str_8 name;
|
||||
UInt_32 initial;
|
||||
|
||||
public:
|
||||
BaseSemaphore();
|
||||
|
||||
BaseSemaphore(Str_8 name, const UInt_32 initial);
|
||||
|
||||
BaseSemaphore(const UInt_32 initial);
|
||||
|
||||
BaseSemaphore(BaseSemaphore&& sem) noexcept;
|
||||
|
||||
BaseSemaphore(const BaseSemaphore& sem);
|
||||
|
||||
BaseSemaphore& operator=(BaseSemaphore&& sem) noexcept;
|
||||
|
||||
BaseSemaphore& operator=(const BaseSemaphore& sem);
|
||||
|
||||
virtual void Initialize() = 0;
|
||||
|
||||
virtual void Release() = 0;
|
||||
|
||||
virtual void Signal(const UInt_32 inc) = 0;
|
||||
|
||||
virtual bool Wait(const UInt_32 timeout) = 0;
|
||||
|
||||
Str_8 GetName() const;
|
||||
|
||||
UInt_32 GetInitial() const;
|
||||
|
||||
virtual bool IsValid() const = 0;
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user