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

 $AUT Holger Burkarth
 $DAT >>SpDtType.h<<   23 Jan 1997    12:47:43 - (C) ProDAD
*******************************************************************/
#ifndef __INC_POS_PEXEC_DEVICE_H
#include <pExec/Device.h>
#endif

extern struct pOS_DataTypeBase *gb_DataTypeBase;

/*----------------------------------
-----------------------------------*/
struct pOS_DtTypeLibFunction
{

/** 20 **/
  VOID (*pOS_DeleteDtTypeFileID_func)(_R_LB pOS_DataTypeBase*,__ARID__ _R_A0 pOS_DtTypeFileID*);
  UBYTE _d19[8];
  __ARID__ pOS_DtTypeFileID* (*pOS_CreateDtTypeFPattern_func)(_R_LB pOS_DataTypeBase*,_R_A0 const CHAR*);
  UBYTE _d18[8];
  BOOL (*pOS_IsDtTypeName_func)(_R_LB pOS_DataTypeBase*,_R_A0 const pOS_DtTypeDescribe*,_R_A1 const CHAR*);
  UBYTE _d17[8];
  BOOL (*pOS_TstReadDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 pOS_DataType*,_R_A1 pOS_DClassInfo*,_R_A2 APTR,_R_A3 const pOS_TagItem*);
  UBYTE _d16[8];
  __ARID__ pOS_DataType* (*pOS_CloneDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 const pOS_DataType*,_R_A1 const pOS_TagItem*);
  UBYTE _d15[8];
  __ARID__ pOS_IntuiObj* (*pOS_GetIDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 const pOS_DataType*,_R_A1 const pOS_TagItem*);
  UBYTE _d14[8];
  __ARID__ pOS_DataType* (*pOS_CreateFHDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 const pOS_FileLock*,
                              _R_A1 const dosname_t*,_R_A2 const CHAR*,_R_A3 APTR,_R_A4 const pOS_TagItem*);
  UBYTE _d13[8];
  BOOL (*pOS_ReadDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 pOS_DataType*,_R_A1 pOS_DClassInfo*,_R_A2 APTR,_R_A3 const pOS_TagItem*);
  UBYTE _d12[8];
  BOOL (*pOS_WriteDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 pOS_DataType*,_R_A1 pOS_DClassInfo*,_R_A2 const VOID*,_R_A3 const pOS_TagItem*);
  UBYTE _d11[8];
  BOOL (*pOS_ConvertDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 pOS_DataType*,_R_A1 pOS_DClassInfo*,_R_A2 const VOID*,_R_A3 VOID*,_R_A4 const pOS_TagItem*);
  UBYTE _d10[8];

/** 10 **/
  __ARID__  pOS_DtTypeDescribe* (*pOS_CreateDtTypeDescribeA_func)(_R_LB pOS_DataTypeBase*,_R_A0 const pOS_TagItem*);
  UBYTE _d9[8];
  VOID (*pOS_DeleteDtTypeDescribe_func)(_R_LB pOS_DataTypeBase*,_R_A0 __ARID__ pOS_DtTypeDescribe*);
  UBYTE _d8[8];
  VOID (*pOS_AddDtTypeDescribe_func)(_R_LB pOS_DataTypeBase*,_R_A0 pOS_DtTypeDescribe*);
  UBYTE _d7[8];
  VOID (*pOS_RemDtTypeDescribe_func)(_R_LB pOS_DataTypeBase*,_R_A0 pOS_DtTypeDescribe*);
  UBYTE _d6[8];
  __ARID__ const pOS_DtTypeDescribe*
   (*pOS_ObtainFHDtTypeDescribeA_func)(_R_LB pOS_DataTypeBase*,
       _R_A0 const pOS_FileLock*,_R_A1 const dosname_t*,_R_A2 const CHAR*,
       _R_A3 APTR,_R_A4 __ARID__ const pOS_DtTypeDescribe*,_R_A5 const pOS_TagItem*);
  UBYTE _d5[8];
  VOID (*pOS_ReleaseDtTypeDescribe_func)(_R_LB pOS_DataTypeBase*,_R_A0 __ARID__ const pOS_DtTypeDescribe*);
  UBYTE _d4[8];
  BOOL (*pOS_SaveDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 pOS_DataType*,
                                _R_A1 pOS_DClassInfo*,_R_A2 const pOS_TagItem*);
  UBYTE _d3[8];
  BOOL (*pOS_LoadDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 const pOS_DataType*,
                                 _R_A1 pOS_DClassInfo*,_R_A2 const pOS_TagItem*);
  UBYTE _d2[8];
  VOID (*pOS_DeleteDTObject_func)(_R_LB pOS_DataTypeBase*,__ARID__ _R_A0 pOS_DataType*);
  UBYTE _d1[8];
  pOS_DataType* (*pOS_CreateDTObjectA_func)(_R_LB pOS_DataTypeBase*,_R_A0 pOS_NClass*,
                 _R_A1 const CHAR*,_R_D0 ULONG,_R_A2 pOS_DClassInfo*,_R_D1 ULONG,_R_A3 const pOS_TagItem*);
  UBYTE _d0[8];

  pOS_StdDeviceFunction StdDev;
}; /* => Base */


#endif
