#ifndef __INC_POS_PROTO_SGOS2_H
#define __INC_POS_PROTO_SGOS2_H
/*******************************************************************
 Includes Release 24
 (C) Copyright 1995-1997 proDAD
     All Rights Reserved

 $AUT Holger Papajewski
 $DAT >>SGOS2.h<<   04 Dec 1996    16:04:04 - (C) ProDAD
*******************************************************************/

#ifndef __INC_POS_PEXEC_LIST_H
#include <pExec/List.h>
#endif



#ifdef __cplusplus
extern "C" {
#endif

/*------ SGOS --------------------------------------------------------------------------*/
VOID pOS_UnlockSGOInfo(_R_A0 struct pOS_SGOInfo*);
VOID pOS_LockSGOInfo(_R_A0 struct pOS_SGOInfo*);

VOID pOS_StopSGOS(_R_A0 struct pOS_SGOInfo*);
BOOL pOS_StartSGOS(_R_A0 struct pOS_SGOInfo*);
VOID pOS_DrawSGOS(_R_A0 struct pOS_SGOInfo*,_R_D0 ULONG);

VOID pOS_ActivateSGObjectA(_R_A0 struct pOS_SGObject*,_R_A1 const struct pOS_TagItem*);
VOID pOS_InactivateSGObject(_R_A0 struct pOS_SGObject*);
VOID pOS_RemoveSGObject(_R_A0 __ARID__ struct pOS_SGObject*);
VOID pOS_DeleteSGObject(_R_A0 __ARID__ struct pOS_SGObject*);
__ARID__ struct pOS_SGObject* pOS_CloneSGObjectA(_R_A0 struct pOS_SGObject*,_R_A1 const struct pOS_TagItem*);
__ARID__ struct pOS_SGObject* pOS_CreateSGObjectA(_R_A0 struct pOS_SGOInfo*,_R_A1 const struct pOS_TagItem*);

VOID pOS_DeleteSGOInfo(_R_A0 __ARID__ struct pOS_SGOInfo*);
__ARID__ struct pOS_SGOInfo* pOS_CreateSGOInfoA(_R_A0 struct pOS_Window*,_R_A1 const struct pOS_TagItem*);

struct pOS_GfxMap* pOS_SetSGObjectMask(_R_A0 struct pOS_SGObject*,_R_A1 struct pOS_GfxMap*);
struct pOS_GfxMap* pOS_SetSGObjectGfxMap(_R_A0 struct pOS_SGObject*,_R_A1 struct pOS_GfxMap*);




VOID pOS_ActivateSGObject(_R_A0 struct pOS_SGObject*,ULONG tag,...);
__ARID__ struct pOS_SGOInfo* pOS_CreateSGOInfo(_R_A0 struct pOS_Window*,ULONG tag,...);
__ARID__ struct pOS_SGObject* pOS_CloneSGObject(_R_A0 struct pOS_SGObject*,ULONG tag,...);
__ARID__ struct pOS_SGObject* pOS_CreateSGObject(_R_A0 struct pOS_SGOInfo*,ULONG tag,...);



#ifdef __cplusplus
}
#endif

#endif
