/* Automatically generated header! Do not edit! */

#ifndef __INC_POS_PINLINE_LAYER_H
#define __INC_POS_PINLINE_LAYER_H

#ifndef __INC_POS_PINLINE_MACROS_H
#include <pInline/macros.h>
#endif /* !__INC_POS_PINLINE_MACROS_H */

#ifndef __LAYER_BASE_NAME
#define __LAYER_BASE_NAME gb_LayerBase
#endif /* !__LAYER_BASE_NAME */

#ifndef __LAYER_LIB_NAME
#define __LAYER_LIB_NAME gb_LayerBase
#endif /* !__LAYER_LIB_NAME */

#define pOS_AddLayerHook(par1, par2, drawMode) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x21c, VOID, pOS_AddLayerHook, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, struct pOS_Callback*, par2, __INLINE_REG_A1, ULONG, drawMode, __INLINE_REG_D0)

#define pOS_AddLayerInfoHook(par1, par2, drawMode) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x330, VOID, pOS_AddLayerInfoHook, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0, struct pOS_Callback*, par2, __INLINE_REG_A1, ULONG, drawMode, __INLINE_REG_D0)

#define pOS_AndRectRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x114, BOOL, pOS_AndRectRegion, \
	struct pOS_Region*, par1, __INLINE_REG_A0, const struct pOS_Rectangle*, par2, __INLINE_REG_A1)

#define pOS_AndRegionRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x108, BOOL, pOS_AndRegionRegion, \
	const struct pOS_Region*, par1, __INLINE_REG_A0, struct pOS_Region*, par2, __INLINE_REG_A1)

#define pOS_AndRegionRegionLst(par1, par2, par3, par4) \
	__INLINE_FUN_4(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0xb4, BOOL, pOS_AndRegionRegionLst, \
	const struct pOS_List*, par1, __INLINE_REG_A0, const struct pOS_List*, par2, __INLINE_REG_A1, struct pOS_List*, par3, __INLINE_REG_A2, struct pOS_MemPool*, par4, __INLINE_REG_A3)

#define pOS_BeginLayerUpdate(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x204, BOOL, pOS_BeginLayerUpdate, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, const struct pOS_List*, par2, __INLINE_REG_A1)

#define pOS_BehindLayer(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x234, BOOL, pOS_BehindLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0)

#define pOS_CheckVisibleRect(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x174, BOOL, pOS_CheckVisibleRect, \
	const struct pOS_Layer*, par1, __INLINE_REG_A0, const struct pOS_Rectangle*, par2, __INLINE_REG_A1)

#define pOS_ClearRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0xc0, VOID, pOS_ClearRegion, \
	struct pOS_Region*, par1, __INLINE_REG_A0, struct pOS_List*, par2, __INLINE_REG_A1)

#define pOS_CloneRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x90, BOOL, pOS_CloneRegion, \
	const struct pOS_List*, par1, __INLINE_REG_A0, struct pOS_Region*, par2, __INLINE_REG_A1)

#define pOS_ConstructLayer(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x2e8, VOID, pOS_ConstructLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0)

#define pOS_ConstructLayerInfo(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x318, VOID, pOS_ConstructLayerInfo, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0)

#define pOS_ConstructRegion(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x168, VOID, pOS_ConstructRegion, \
	struct pOS_Region*, par1, __INLINE_REG_A0)

#define pOS_CopyLayerToSup(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x198, VOID, pOS_CopyLayerToSup, \
	struct pOS_Layer*, par1, __INLINE_REG_A0)

#define pOS_CopySupToLayer(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x1a4, VOID, pOS_CopySupToLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0)

#define pOS_CreateBehindLayer(par1, par2, par3, par4, superGfx) \
	__INLINE_FUN_5(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x2d0, __ARID__ struct pOS_Layer*, pOS_CreateBehindLayer, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0, struct pOS_GfxMap*, par2, __INLINE_REG_A1, const struct pOS_Rectangle*, par3, __INLINE_REG_A2, ULONG, par4, __INLINE_REG_D0, struct pOS_GfxMap*, superGfx, __INLINE_REG_A3)

#define pOS_CreateChildLayer(par1, par2, flags, par4, superGfx) \
	__INLINE_FUN_5(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x1c8, __ARID__ struct pOS_Layer*, pOS_CreateChildLayer, \
	struct pOS_GfxMap*, par1, __INLINE_REG_A0, const struct pOS_Rectangle*, par2, __INLINE_REG_A1, ULONG, flags, __INLINE_REG_D0, struct pOS_Layer*, par4, __INLINE_REG_A2, struct pOS_GfxMap*, superGfx, __INLINE_REG_A3)

#define pOS_CreateLayerInfo() \
	__INLINE_FUN_0(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x300, __ARID__ struct pOS_LayerInfo*, pOS_CreateLayerInfo)

#define pOS_CreateRegion() \
	__INLINE_FUN_0(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x150, __ARID__ struct pOS_Region*, pOS_CreateRegion)

#define pOS_CreateUpfrontLayer(par1, par2, par3, par4, superGfx) \
	__INLINE_FUN_5(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x2c4, __ARID__ struct pOS_Layer*, pOS_CreateUpfrontLayer, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0, struct pOS_GfxMap*, par2, __INLINE_REG_A1, const struct pOS_Rectangle*, par3, __INLINE_REG_A2, ULONG, par4, __INLINE_REG_D0, struct pOS_GfxMap*, superGfx, __INLINE_REG_A3)

#define pOS_CreateViClipListFrom(par1, firstLy, breakMode, refRect) \
	__INLINE_FUN_4(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x1ec, BOOL, pOS_CreateViClipListFrom, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0, const struct pOS_Layer *, firstLy, __INLINE_REG_A1, BOOL, breakMode, __INLINE_REG_D0, const struct pOS_Rectangle*, refRect, __INLINE_REG_A2)

#define pOS_DamageLayerInfo(par1, par2, lyFirst, lyLast) \
	__INLINE_FUN_4(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x27c, BOOL, pOS_DamageLayerInfo, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0, const struct pOS_Rectangle*, par2, __INLINE_REG_A1, const struct pOS_Layer*, lyFirst, __INLINE_REG_A2, const struct pOS_Layer*, lyLast, __INLINE_REG_A3)

#define pOS_DamageLayerInfoList(par1, par2, lyFirst, lyLast) \
	__INLINE_FUN_4(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x270, BOOL, pOS_DamageLayerInfoList, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0, const struct pOS_List*, par2, __INLINE_REG_A1, const struct pOS_Layer*, lyFirst, __INLINE_REG_A2, const struct pOS_Layer*, lyLast, __INLINE_REG_A3)

#define pOS_DeleteLayer(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x2b8, BOOL, pOS_DeleteLayer, \
	__ARID__ struct pOS_Layer*, par1, __INLINE_REG_A0)

#define pOS_DeleteLayerInfo(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x2f4, VOID, pOS_DeleteLayerInfo, \
	__ARID__ struct pOS_LayerInfo*, par1, __INLINE_REG_A0)

#define pOS_DeleteRegion(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x144, VOID, pOS_DeleteRegion, \
	__ARID__ struct pOS_Region*, par1, __INLINE_REG_A0)

#define pOS_DeleteViClipList(par1, firstLy, breakMode) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x1e0, VOID, pOS_DeleteViClipList, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0, const struct pOS_Layer *, firstLy, __INLINE_REG_A1, BOOL, breakMode, __INLINE_REG_D0)

#define pOS_DestructLayer(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x2dc, VOID, pOS_DestructLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0)

#define pOS_DestructLayerInfo(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x30c, VOID, pOS_DestructLayerInfo, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0)

#define pOS_DestructRegion(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x15c, VOID, pOS_DestructRegion, \
	struct pOS_Region*, par1, __INLINE_REG_A0)

#define pOS_EndLayerUpdate(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x1f8, BOOL, pOS_EndLayerUpdate, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, ULONG, par2, __INLINE_REG_D0)

#define pOS_EraseLayerRect(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x360, VOID, pOS_EraseLayerRect, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, const struct pOS_Rectangle*, par2, __INLINE_REG_A1)

#define pOS_GetVisibleRect(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x354, BOOL, pOS_GetVisibleRect, \
	const struct pOS_Layer*, par1, __INLINE_REG_A0, struct pOS_Rectangle*, par2, __INLINE_REG_A1)

#define pOS_InstallClipRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x1d4, struct pOS_Region *, pOS_InstallClipRegion, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, const struct pOS_Region*, par2, __INLINE_REG_A1)

#define pOS_LockClipLayer(par1, par2, par3, mode) \
	__INLINE_FUN_4(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x348, BOOL, pOS_LockClipLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, struct pOS_LayerClip*, par2, __INLINE_REG_A1, const struct pOS_List*, par3, __INLINE_REG_A2, ULONG, mode, __INLINE_REG_D0)

#define pOS_LockHideLayer(par1, par2, par3) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x18c, BOOL, pOS_LockHideLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, struct pOS_LayerHide*, par2, __INLINE_REG_A1, ULONG, par3, __INLINE_REG_D0)

#define pOS_LockLayer(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x2ac, VOID, pOS_LockLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0)

#define pOS_LockLayerInfo(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x294, VOID, pOS_LockLayerInfo, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0)

#define pOS_LockLayers(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x24c, VOID, pOS_LockLayers, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0)

#define pOS_MoveLayerBehindOf(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x1bc, BOOL, pOS_MoveLayerBehindOf, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, const struct pOS_Layer*, par2, __INLINE_REG_A1)

#define pOS_MoveRegion(par1, dx, dy) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0xf0, VOID, pOS_MoveRegion, \
	struct pOS_Region*, par1, __INLINE_REG_A0, SLONG, dx, __INLINE_REG_D0, SLONG, dy, __INLINE_REG_D1)

#define pOS_MoveRegionLst(par1, dx, dy) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0xe4, VOID, pOS_MoveRegionLst, \
	struct pOS_List*, par1, __INLINE_REG_A0, SLONG, dx, __INLINE_REG_D0, SLONG, dy, __INLINE_REG_D1)

#define pOS_MoveSizeLayer(par1, dx, dy, dw, dh) \
	__INLINE_FUN_5(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x264, BOOL, pOS_MoveSizeLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, SLONG, dx, __INLINE_REG_D0, SLONG, dy, __INLINE_REG_D1, SLONG, dw, __INLINE_REG_D2, SLONG, dh, __INLINE_REG_D3)

#define pOS_NAndRectRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0xfc, BOOL, pOS_NAndRectRegion, \
	struct pOS_Region*, par1, __INLINE_REG_A0, const struct pOS_Rectangle*, par2, __INLINE_REG_A1)

#define pOS_NAndRegionRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0xd8, BOOL, pOS_NAndRegionRegion, \
	const struct pOS_Region*, par1, __INLINE_REG_A0, struct pOS_Region*, par2, __INLINE_REG_A1)

#define pOS_NewSizeRegion(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0xa8, VOID, pOS_NewSizeRegion, \
	struct pOS_Region*, par1, __INLINE_REG_A0)

#define pOS_OrRectRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x12c, BOOL, pOS_OrRectRegion, \
	struct pOS_Region*, par1, __INLINE_REG_A0, const struct pOS_Rectangle*, par2, __INLINE_REG_A1)

#define pOS_OrRectRegionILst(par1, par2, hpList) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x138, BOOL, pOS_OrRectRegionILst, \
	struct pOS_Region*, par1, __INLINE_REG_A0, const struct pOS_Rectangle*, par2, __INLINE_REG_A1, struct pOS_List*, hpList, __INLINE_REG_A2)

#define pOS_OrRegionRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x120, BOOL, pOS_OrRegionRegion, \
	const struct pOS_Region*, par1, __INLINE_REG_A0, struct pOS_Region*, par2, __INLINE_REG_A1)

#define pOS_RemLayerHook(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x210, VOID, pOS_RemLayerHook, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, struct pOS_Callback*, par2, __INLINE_REG_A1)

#define pOS_RemLayerInfoHook(par1, par2, drawMode) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x324, VOID, pOS_RemLayerInfoHook, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0, struct pOS_Callback*, par2, __INLINE_REG_A1, ULONG, drawMode, __INLINE_REG_D0)

#define pOS_ScrollLayer(par1, dx, dy) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x1b0, VOID, pOS_ScrollLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, SLONG, dx, __INLINE_REG_D0, SLONG, dy, __INLINE_REG_D1)

#define pOS_SortRegionLst(par1, dx, dy) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x9c, VOID, pOS_SortRegionLst, \
	struct pOS_List*, par1, __INLINE_REG_A0, SLONG, dx, __INLINE_REG_D0, SLONG, dy, __INLINE_REG_D1)

#define pOS_UnlockClipLayer(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x33c, VOID, pOS_UnlockClipLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, struct pOS_LayerClip*, par2, __INLINE_REG_A1)

#define pOS_UnlockHideLayer(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x180, VOID, pOS_UnlockHideLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0, struct pOS_LayerHide*, par2, __INLINE_REG_A1)

#define pOS_UnlockLayer(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x2a0, VOID, pOS_UnlockLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0)

#define pOS_UnlockLayerInfo(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x288, VOID, pOS_UnlockLayerInfo, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0)

#define pOS_UnlockLayers(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x240, VOID, pOS_UnlockLayers, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0)

#define pOS_UpfrontLayer(par1) \
	__INLINE_FUN_1(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x228, BOOL, pOS_UpfrontLayer, \
	struct pOS_Layer*, par1, __INLINE_REG_A0)

#define pOS_WhichLayer(par1, x, y) \
	__INLINE_FUN_3(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0x258, struct pOS_Layer*, pOS_WhichLayer, \
	struct pOS_LayerInfo*, par1, __INLINE_REG_A0, SLONG, x, __INLINE_REG_D0, SLONG, y, __INLINE_REG_D1)

#define pOS_XOrRectRegion(par1, par2) \
	__INLINE_FUN_2(__LAYER_BASE_NAME, __LAYER_LIB_NAME, 0xcc, BOOL, pOS_XOrRectRegion, \
	struct pOS_Region*, par1, __INLINE_REG_A0, const struct pOS_Rectangle*, par2, __INLINE_REG_A1)

#endif /* !__INC_POS_PINLINE_LAYER_H */
