AuroraRuntime/Include/Aurora/Process/IProcessSectionMapView.hpp

30 lines
750 B
C++
Raw Normal View History

/***
Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: IProcessSectionView.hpp
Date: 2022-08-09
Author: Reece
***/
#pragma once
namespace Aurora::Process
{
struct IProcessSectionMapView
{
virtual void Unmap() = 0;
virtual bool Flush(AuUInt uOffset, AuUInt uLength) = 0;
virtual AuUInt GetBaseAddress() = 0;
virtual AuUInt GetAddress(AuUInt uOffset) = 0;
virtual AuUInt8 *GetBasePointer() = 0;
virtual AuUInt8 *GetPointer(AuUInt uOffset) = 0;
virtual Memory::MemoryViewWrite ToWriteView() = 0;
virtual Memory::MemoryViewRead ToReadView() = 0;
virtual bool LockSwap() = 0;
virtual bool UnlockSwap() = 0;
};
}