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

#ifndef __INC_POS_PINLINE_SGOS_H
#define __INC_POS_PINLINE_SGOS_H

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

#ifndef __SGOS_BASE_NAME
#define __SGOS_BASE_NAME gb_SGOSBase
#endif /* !__SGOS_BASE_NAME */

#ifndef __SGOS_LIB_NAME
#define __SGOS_LIB_NAME gb_SGOSBase
#endif /* !__SGOS_LIB_NAME */

#define pOS_ActivateSGObjectA(par1, par2) \
	__INLINE_FUN_2(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0xe4, VOID, pOS_ActivateSGObjectA, \
	struct pOS_SGObject*, par1, __INLINE_REG_A0, const struct pOS_TagItem*, par2, __INLINE_REG_A1)

#ifndef __NO_INLINE_STDARG
#define pOS_ActivateSGObject(a0, tags...) \
	({ULONG _tags[] = { tags }; pOS_ActivateSGObjectA((a0), (const struct pOS_TagItem*)_tags);})
#endif /* !__NO_INLINE_STDARG */

#define pOS_CloneSGObjectA(par1, par2) \
	__INLINE_FUN_2(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0xb4, __ARID__ struct pOS_SGObject*, pOS_CloneSGObjectA, \
	struct pOS_SGObject*, par1, __INLINE_REG_A0, const struct pOS_TagItem*, par2, __INLINE_REG_A1)

#ifndef __NO_INLINE_STDARG
#define pOS_CloneSGObject(a0, tags...) \
	({ULONG _tags[] = { tags }; pOS_CloneSGObjectA((a0), (const struct pOS_TagItem*)_tags);})
#endif /* !__NO_INLINE_STDARG */

#define pOS_CreateSGOInfoA(par1, par2) \
	__INLINE_FUN_2(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0x90, __ARID__ struct pOS_SGOInfo*, pOS_CreateSGOInfoA, \
	struct pOS_Window*, par1, __INLINE_REG_A0, const struct pOS_TagItem*, par2, __INLINE_REG_A1)

#ifndef __NO_INLINE_STDARG
#define pOS_CreateSGOInfo(a0, tags...) \
	({ULONG _tags[] = { tags }; pOS_CreateSGOInfoA((a0), (const struct pOS_TagItem*)_tags);})
#endif /* !__NO_INLINE_STDARG */

#define pOS_CreateSGObjectA(par1, par2) \
	__INLINE_FUN_2(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0xa8, __ARID__ struct pOS_SGObject*, pOS_CreateSGObjectA, \
	struct pOS_SGOInfo*, par1, __INLINE_REG_A0, const struct pOS_TagItem*, par2, __INLINE_REG_A1)

#ifndef __NO_INLINE_STDARG
#define pOS_CreateSGObject(a0, tags...) \
	({ULONG _tags[] = { tags }; pOS_CreateSGObjectA((a0), (const struct pOS_TagItem*)_tags);})
#endif /* !__NO_INLINE_STDARG */

#define pOS_DeleteSGOInfo(par1) \
	__INLINE_FUN_1(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0x9c, VOID, pOS_DeleteSGOInfo, \
	__ARID__ struct pOS_SGOInfo*, par1, __INLINE_REG_A0)

#define pOS_DeleteSGObject(par1) \
	__INLINE_FUN_1(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0xc0, VOID, pOS_DeleteSGObject, \
	__ARID__ struct pOS_SGObject*, par1, __INLINE_REG_A0)

#define pOS_DrawSGOS(par1, par2) \
	__INLINE_FUN_2(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0xf0, VOID, pOS_DrawSGOS, \
	struct pOS_SGOInfo*, par1, __INLINE_REG_A0, ULONG, par2, __INLINE_REG_D0)

#define pOS_InactivateSGObject(par1) \
	__INLINE_FUN_1(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0xd8, VOID, pOS_InactivateSGObject, \
	struct pOS_SGObject*, par1, __INLINE_REG_A0)

#define pOS_LockSGOInfo(par1) \
	__INLINE_FUN_1(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0x114, VOID, pOS_LockSGOInfo, \
	struct pOS_SGOInfo*, par1, __INLINE_REG_A0)

#define pOS_RemoveSGObject(par1) \
	__INLINE_FUN_1(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0xcc, VOID, pOS_RemoveSGObject, \
	__ARID__ struct pOS_SGObject*, par1, __INLINE_REG_A0)

#define pOS_SetSGObjectGfxMap(par1, par2) \
	__INLINE_FUN_2(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0x12c, struct pOS_GfxMap*, pOS_SetSGObjectGfxMap, \
	struct pOS_SGObject*, par1, __INLINE_REG_A0, struct pOS_GfxMap*, par2, __INLINE_REG_A1)

#define pOS_SetSGObjectMask(par1, par2) \
	__INLINE_FUN_2(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0x138, struct pOS_GfxMap*, pOS_SetSGObjectMask, \
	struct pOS_SGObject*, par1, __INLINE_REG_A0, struct pOS_GfxMap*, par2, __INLINE_REG_A1)

#define pOS_StartSGOS(par1) \
	__INLINE_FUN_1(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0xfc, BOOL, pOS_StartSGOS, \
	struct pOS_SGOInfo*, par1, __INLINE_REG_A0)

#define pOS_StopSGOS(par1) \
	__INLINE_FUN_1(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0x108, VOID, pOS_StopSGOS, \
	struct pOS_SGOInfo*, par1, __INLINE_REG_A0)

#define pOS_UnlockSGOInfo(par1) \
	__INLINE_FUN_1(__SGOS_BASE_NAME, __SGOS_LIB_NAME, 0x120, VOID, pOS_UnlockSGOInfo, \
	struct pOS_SGOInfo*, par1, __INLINE_REG_A0)

#endif /* !__INC_POS_PINLINE_SGOS_H */
