Files
EHS/src/system/BaseSemaphore.cpp
karutoh 1a4a1ecd9c
Some checks failed
Build & Release / Linux-x86_64-Build (push) Successful in 40s
Build & Release / Linux-AARCH64-Build (push) Has been cancelled
First commit.
2024-01-31 22:28:19 -08:00

61 lines
1018 B
C++

#include "ehs/system/BaseSemaphore.h"
namespace ehs
{
BaseSemaphore::BaseSemaphore()
: initial(0)
{
}
BaseSemaphore::BaseSemaphore(Str_8 name, const UInt_32 initial)
: name(std::move(name)), initial(initial)
{
}
BaseSemaphore::BaseSemaphore(const UInt_32 initial)
: initial(initial)
{
}
BaseSemaphore::BaseSemaphore(BaseSemaphore&& sem) noexcept
: name(std::move(sem.name)), initial(sem.initial)
{
}
BaseSemaphore::BaseSemaphore(const BaseSemaphore& sem)
: name(sem.name), initial(sem.initial)
{
}
BaseSemaphore& BaseSemaphore::operator=(const BaseSemaphore& sem)
{
if (this == &sem)
return *this;
name = sem.name;
initial = sem.initial;
return *this;
}
BaseSemaphore& BaseSemaphore::operator=(BaseSemaphore&& sem) noexcept
{
if (this == &sem)
return *this;
name = std::move(sem.name);
initial = sem.initial;
return *this;
}
Str_8 BaseSemaphore::GetName() const
{
return name;
}
UInt_32 BaseSemaphore::GetInitial() const
{
return initial;
}
}