Merge pull request #6384 from lioncash/virtual
kernel: Add missing override specifiers
This commit is contained in:
commit
c7c4ef9d43
|
@ -22,7 +22,7 @@ class KClientPort final : public KSynchronizationObject {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit KClientPort(KernelCore& kernel_);
|
explicit KClientPort(KernelCore& kernel_);
|
||||||
virtual ~KClientPort() override;
|
~KClientPort() override;
|
||||||
|
|
||||||
void Initialize(KPort* parent_, s32 max_sessions_, std::string&& name_);
|
void Initialize(KPort* parent_, s32 max_sessions_, std::string&& name_);
|
||||||
void OnSessionFinalized();
|
void OnSessionFinalized();
|
||||||
|
@ -49,8 +49,8 @@ public:
|
||||||
bool IsServerClosed() const;
|
bool IsServerClosed() const;
|
||||||
|
|
||||||
// Overridden virtual functions.
|
// Overridden virtual functions.
|
||||||
virtual void Destroy() override;
|
void Destroy() override;
|
||||||
virtual bool IsSignaled() const override;
|
bool IsSignaled() const override;
|
||||||
|
|
||||||
ResultCode CreateSession(KClientSession** out);
|
ResultCode CreateSession(KClientSession** out);
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,7 @@ class KClientSession final
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit KClientSession(KernelCore& kernel_);
|
explicit KClientSession(KernelCore& kernel_);
|
||||||
virtual ~KClientSession();
|
~KClientSession() override;
|
||||||
|
|
||||||
void Initialize(KSession* parent_, std::string&& name_) {
|
void Initialize(KSession* parent_, std::string&& name_) {
|
||||||
// Set member variables.
|
// Set member variables.
|
||||||
|
@ -42,7 +42,7 @@ public:
|
||||||
name = std::move(name_);
|
name = std::move(name_);
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void Destroy() override;
|
void Destroy() override;
|
||||||
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
||||||
|
|
||||||
KSession* GetParent() const {
|
KSession* GetParent() const {
|
||||||
|
|
|
@ -20,23 +20,21 @@ class KEvent final : public KAutoObjectWithSlabHeapAndContainer<KEvent, KAutoObj
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit KEvent(KernelCore& kernel_);
|
explicit KEvent(KernelCore& kernel_);
|
||||||
virtual ~KEvent();
|
~KEvent() override;
|
||||||
|
|
||||||
void Initialize(std::string&& name);
|
void Initialize(std::string&& name);
|
||||||
|
|
||||||
virtual void Finalize() override;
|
void Finalize() override;
|
||||||
|
|
||||||
virtual bool IsInitialized() const override {
|
bool IsInitialized() const override {
|
||||||
return initialized;
|
return initialized;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual uintptr_t GetPostDestroyArgument() const override {
|
uintptr_t GetPostDestroyArgument() const override {
|
||||||
return reinterpret_cast<uintptr_t>(owner);
|
return reinterpret_cast<uintptr_t>(owner);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void PostDestroy(uintptr_t arg);
|
KProcess* GetOwner() const override {
|
||||||
|
|
||||||
virtual KProcess* GetOwner() const override {
|
|
||||||
return owner;
|
return owner;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,6 +46,8 @@ public:
|
||||||
return writable_event;
|
return writable_event;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void PostDestroy(uintptr_t arg);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
KReadableEvent readable_event;
|
KReadableEvent readable_event;
|
||||||
KWritableEvent writable_event;
|
KWritableEvent writable_event;
|
||||||
|
|
|
@ -22,7 +22,7 @@ class KPort final : public KAutoObjectWithSlabHeapAndContainer<KPort, KAutoObjec
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit KPort(KernelCore& kernel_);
|
explicit KPort(KernelCore& kernel_);
|
||||||
virtual ~KPort();
|
~KPort() override;
|
||||||
|
|
||||||
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
||||||
|
|
||||||
|
@ -59,7 +59,6 @@ private:
|
||||||
ServerClosed = 3,
|
ServerClosed = 3,
|
||||||
};
|
};
|
||||||
|
|
||||||
private:
|
|
||||||
KServerPort server;
|
KServerPort server;
|
||||||
KClientPort client;
|
KClientPort client;
|
||||||
State state{State::Invalid};
|
State state{State::Invalid};
|
||||||
|
|
|
@ -331,19 +331,19 @@ public:
|
||||||
|
|
||||||
void LoadModule(CodeSet code_set, VAddr base_addr);
|
void LoadModule(CodeSet code_set, VAddr base_addr);
|
||||||
|
|
||||||
virtual bool IsInitialized() const override {
|
bool IsInitialized() const override {
|
||||||
return is_initialized;
|
return is_initialized;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
||||||
|
|
||||||
virtual void Finalize();
|
void Finalize() override;
|
||||||
|
|
||||||
virtual u64 GetId() const override final {
|
u64 GetId() const override {
|
||||||
return GetProcessID();
|
return GetProcessID();
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual bool IsSignaled() const override;
|
bool IsSignaled() const override;
|
||||||
|
|
||||||
void PinCurrentThread();
|
void PinCurrentThread();
|
||||||
void UnpinCurrentThread();
|
void UnpinCurrentThread();
|
||||||
|
|
|
@ -31,8 +31,8 @@ public:
|
||||||
return parent;
|
return parent;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual bool IsSignaled() const override;
|
bool IsSignaled() const override;
|
||||||
virtual void Destroy() override;
|
void Destroy() override;
|
||||||
|
|
||||||
ResultCode Signal();
|
ResultCode Signal();
|
||||||
ResultCode Clear();
|
ResultCode Clear();
|
||||||
|
|
|
@ -37,10 +37,10 @@ class KResourceLimit final
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit KResourceLimit(KernelCore& kernel_);
|
explicit KResourceLimit(KernelCore& kernel_);
|
||||||
virtual ~KResourceLimit();
|
~KResourceLimit() override;
|
||||||
|
|
||||||
void Initialize(const Core::Timing::CoreTiming* core_timing_);
|
void Initialize(const Core::Timing::CoreTiming* core_timing_);
|
||||||
virtual void Finalize() override;
|
void Finalize() override;
|
||||||
|
|
||||||
s64 GetLimitValue(LimitableResource which) const;
|
s64 GetLimitValue(LimitableResource which) const;
|
||||||
s64 GetCurrentValue(LimitableResource which) const;
|
s64 GetCurrentValue(LimitableResource which) const;
|
||||||
|
|
|
@ -25,12 +25,9 @@ class SessionRequestHandler;
|
||||||
class KServerPort final : public KSynchronizationObject {
|
class KServerPort final : public KSynchronizationObject {
|
||||||
KERNEL_AUTOOBJECT_TRAITS(KServerPort, KSynchronizationObject);
|
KERNEL_AUTOOBJECT_TRAITS(KServerPort, KSynchronizationObject);
|
||||||
|
|
||||||
private:
|
|
||||||
using SessionList = boost::intrusive::list<KServerSession>;
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit KServerPort(KernelCore& kernel_);
|
explicit KServerPort(KernelCore& kernel_);
|
||||||
virtual ~KServerPort() override;
|
~KServerPort() override;
|
||||||
|
|
||||||
void Initialize(KPort* parent_, std::string&& name_);
|
void Initialize(KPort* parent_, std::string&& name_);
|
||||||
|
|
||||||
|
@ -63,13 +60,14 @@ public:
|
||||||
bool IsLight() const;
|
bool IsLight() const;
|
||||||
|
|
||||||
// Overridden virtual functions.
|
// Overridden virtual functions.
|
||||||
virtual void Destroy() override;
|
void Destroy() override;
|
||||||
virtual bool IsSignaled() const override;
|
bool IsSignaled() const override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
using SessionList = boost::intrusive::list<KServerSession>;
|
||||||
|
|
||||||
void CleanupSessions();
|
void CleanupSessions();
|
||||||
|
|
||||||
private:
|
|
||||||
SessionList session_list;
|
SessionList session_list;
|
||||||
SessionRequestHandlerPtr session_handler;
|
SessionRequestHandlerPtr session_handler;
|
||||||
KPort* parent{};
|
KPort* parent{};
|
||||||
|
|
|
@ -42,9 +42,9 @@ class KServerSession final : public KSynchronizationObject,
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit KServerSession(KernelCore& kernel_);
|
explicit KServerSession(KernelCore& kernel_);
|
||||||
virtual ~KServerSession() override;
|
~KServerSession() override;
|
||||||
|
|
||||||
virtual void Destroy() override;
|
void Destroy() override;
|
||||||
|
|
||||||
void Initialize(KSession* parent_, std::string&& name_);
|
void Initialize(KSession* parent_, std::string&& name_);
|
||||||
|
|
||||||
|
@ -56,7 +56,7 @@ public:
|
||||||
return parent;
|
return parent;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual bool IsSignaled() const override;
|
bool IsSignaled() const override;
|
||||||
|
|
||||||
void OnClientClosed();
|
void OnClientClosed();
|
||||||
|
|
||||||
|
|
|
@ -18,17 +18,17 @@ class KSession final : public KAutoObjectWithSlabHeapAndContainer<KSession, KAut
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit KSession(KernelCore& kernel_);
|
explicit KSession(KernelCore& kernel_);
|
||||||
virtual ~KSession() override;
|
~KSession() override;
|
||||||
|
|
||||||
void Initialize(KClientPort* port_, const std::string& name_);
|
void Initialize(KClientPort* port_, const std::string& name_);
|
||||||
|
|
||||||
virtual void Finalize() override;
|
void Finalize() override;
|
||||||
|
|
||||||
virtual bool IsInitialized() const override {
|
bool IsInitialized() const override {
|
||||||
return initialized;
|
return initialized;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual uintptr_t GetPostDestroyArgument() const override {
|
uintptr_t GetPostDestroyArgument() const override {
|
||||||
return reinterpret_cast<uintptr_t>(process);
|
return reinterpret_cast<uintptr_t>(process);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,7 +78,6 @@ private:
|
||||||
ServerClosed = 3,
|
ServerClosed = 3,
|
||||||
};
|
};
|
||||||
|
|
||||||
private:
|
|
||||||
void SetState(State state) {
|
void SetState(State state) {
|
||||||
atomic_state = static_cast<u8>(state);
|
atomic_state = static_cast<u8>(state);
|
||||||
}
|
}
|
||||||
|
@ -87,7 +86,6 @@ private:
|
||||||
return static_cast<State>(atomic_state.load(std::memory_order_relaxed));
|
return static_cast<State>(atomic_state.load(std::memory_order_relaxed));
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
|
||||||
KServerSession server;
|
KServerSession server;
|
||||||
KClientSession client;
|
KClientSession client;
|
||||||
std::atomic<std::underlying_type_t<State>> atomic_state{
|
std::atomic<std::underlying_type_t<State>> atomic_state{
|
||||||
|
|
|
@ -68,9 +68,9 @@ public:
|
||||||
return device_memory->GetPointer(physical_address + offset);
|
return device_memory->GetPointer(physical_address + offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void Finalize() override;
|
void Finalize() override;
|
||||||
|
|
||||||
virtual bool IsInitialized() const override {
|
bool IsInitialized() const override {
|
||||||
return is_initialized;
|
return is_initialized;
|
||||||
}
|
}
|
||||||
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
||||||
|
|
|
@ -29,7 +29,7 @@ public:
|
||||||
KSynchronizationObject** objects, const s32 num_objects,
|
KSynchronizationObject** objects, const s32 num_objects,
|
||||||
s64 timeout);
|
s64 timeout);
|
||||||
|
|
||||||
virtual void Finalize() override;
|
void Finalize() override;
|
||||||
|
|
||||||
[[nodiscard]] virtual bool IsSignaled() const = 0;
|
[[nodiscard]] virtual bool IsSignaled() const = 0;
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ public:
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
explicit KSynchronizationObject(KernelCore& kernel);
|
explicit KSynchronizationObject(KernelCore& kernel);
|
||||||
virtual ~KSynchronizationObject();
|
~KSynchronizationObject() override;
|
||||||
|
|
||||||
virtual void OnFinalizeSynchronizationObject() {}
|
virtual void OnFinalizeSynchronizationObject() {}
|
||||||
|
|
||||||
|
|
|
@ -358,21 +358,21 @@ public:
|
||||||
return termination_requested || GetRawState() == ThreadState::Terminated;
|
return termination_requested || GetRawState() == ThreadState::Terminated;
|
||||||
}
|
}
|
||||||
|
|
||||||
[[nodiscard]] virtual u64 GetId() const override final {
|
[[nodiscard]] u64 GetId() const override {
|
||||||
return this->GetThreadID();
|
return this->GetThreadID();
|
||||||
}
|
}
|
||||||
|
|
||||||
[[nodiscard]] virtual bool IsInitialized() const override {
|
[[nodiscard]] bool IsInitialized() const override {
|
||||||
return initialized;
|
return initialized;
|
||||||
}
|
}
|
||||||
|
|
||||||
[[nodiscard]] virtual uintptr_t GetPostDestroyArgument() const override {
|
[[nodiscard]] uintptr_t GetPostDestroyArgument() const override {
|
||||||
return reinterpret_cast<uintptr_t>(parent) | (resource_limit_release_hint ? 1 : 0);
|
return reinterpret_cast<uintptr_t>(parent) | (resource_limit_release_hint ? 1 : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void Finalize() override;
|
void Finalize() override;
|
||||||
|
|
||||||
[[nodiscard]] virtual bool IsSignaled() const override;
|
[[nodiscard]] bool IsSignaled() const override;
|
||||||
|
|
||||||
static void PostDestroy(uintptr_t arg);
|
static void PostDestroy(uintptr_t arg);
|
||||||
|
|
||||||
|
|
|
@ -27,23 +27,23 @@ class KTransferMemory final
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit KTransferMemory(KernelCore& kernel_);
|
explicit KTransferMemory(KernelCore& kernel_);
|
||||||
virtual ~KTransferMemory() override;
|
~KTransferMemory() override;
|
||||||
|
|
||||||
ResultCode Initialize(VAddr address_, std::size_t size_, Svc::MemoryPermission owner_perm_);
|
ResultCode Initialize(VAddr address_, std::size_t size_, Svc::MemoryPermission owner_perm_);
|
||||||
|
|
||||||
virtual void Finalize() override;
|
void Finalize() override;
|
||||||
|
|
||||||
virtual bool IsInitialized() const override {
|
bool IsInitialized() const override {
|
||||||
return is_initialized;
|
return is_initialized;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual uintptr_t GetPostDestroyArgument() const override {
|
uintptr_t GetPostDestroyArgument() const override {
|
||||||
return reinterpret_cast<uintptr_t>(owner);
|
return reinterpret_cast<uintptr_t>(owner);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void PostDestroy(uintptr_t arg);
|
static void PostDestroy(uintptr_t arg);
|
||||||
|
|
||||||
KProcess* GetOwner() const {
|
KProcess* GetOwner() const override {
|
||||||
return owner;
|
return owner;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ public:
|
||||||
explicit KWritableEvent(KernelCore& kernel_);
|
explicit KWritableEvent(KernelCore& kernel_);
|
||||||
~KWritableEvent() override;
|
~KWritableEvent() override;
|
||||||
|
|
||||||
virtual void Destroy() override;
|
void Destroy() override;
|
||||||
|
|
||||||
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
static void PostDestroy([[maybe_unused]] uintptr_t arg) {}
|
||||||
|
|
||||||
|
|
Reference in New Issue