30 lines
750 B
C++
30 lines
750 B
C++
/***
|
|
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;
|
|
};
|
|
} |