2012-12-19 09:30:18 +00:00
|
|
|
/****************************************************************************
|
|
|
|
* *
|
|
|
|
* Project 64 - A Nintendo 64 emulator. *
|
|
|
|
* http://www.pj64-emu.com/ *
|
|
|
|
* Copyright (C) 2012 Project64. All rights reserved. *
|
|
|
|
* *
|
|
|
|
* License: *
|
|
|
|
* GNU/GPLv2 http://www.gnu.org/licenses/gpl-2.0.html *
|
|
|
|
* *
|
|
|
|
****************************************************************************/
|
|
|
|
#pragma once
|
|
|
|
|
2008-09-18 03:15:49 +00:00
|
|
|
class CDelaySlotFunctionMap
|
|
|
|
{
|
2010-05-25 09:15:19 +00:00
|
|
|
typedef std::map<DWORD,CCompiledFunc *> FUNCTION_MAP;
|
2008-09-18 03:15:49 +00:00
|
|
|
|
|
|
|
FUNCTION_MAP FunctionMap;
|
|
|
|
|
|
|
|
public:
|
2015-04-28 22:19:02 +00:00
|
|
|
CDelaySlotFunctionMap();
|
|
|
|
~CDelaySlotFunctionMap();
|
2008-09-18 03:15:49 +00:00
|
|
|
|
2015-04-28 22:19:02 +00:00
|
|
|
CCompiledFunc* AddFunctionInfo(DWORD vAddr, DWORD pAddr);
|
|
|
|
CCompiledFunc* FindFunction(DWORD vAddr, int Length);
|
|
|
|
CCompiledFunc* FindFunction(DWORD vAddr) const;
|
2008-09-18 03:15:49 +00:00
|
|
|
|
2015-04-28 22:19:02 +00:00
|
|
|
void Remove(CCompiledFunc* info);
|
|
|
|
void Reset();
|
2008-09-18 03:15:49 +00:00
|
|
|
};
|