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

 $AUT Holger Burkarth
 $DAT >>DtBase.h<<   08 Mar 1997    17:56:30 - (C) ProDAD
*******************************************************************/
#ifndef __INC_POS_PEXEC_MEMORY_H
#include <pExec/Memory.h>
#endif
#ifndef __INC_POS_PEXEC_SEMA_H
#include <pExec/Sema.h>
#endif
#ifndef __INC_POS_PEXEC_LIBRARY_H
#include <pExec/Library.h>
#endif



/*----------------------------------
-----------------------------------*/
struct pOS_DtTypeFileID
{
  struct pOS_Node dtfid_Node;
  UBYTE           dtfid_Type;  /* (enum pOS_DtTypeFileIDs) */
  UBYTE           dtfid_Pad;

  union {
    struct { /* DTTDFID_Pattern */
      const CHAR *dtfidp_Pattern;
    } dtfid_Pat;

  } dtfid_U;
};


enum pOS_DtTypeFileIDs /** dtfid_Type **/
{
  DTTDFID_Pattern = 1
};



/*----------------------------------
-----------------------------------*/
struct pOS_DtTypeDescribe
{
  struct pOS_ExNode  dttd_Node;
  const CHAR        *dttd_Type;
  const CHAR        *dttd_ClassName;
        UWORD        dttd_ClassVer;
        UWORD        dttd_OpenCnt;
  struct pOS_List    dttd_FIDList;    /* (pOS_DtTypeFileID*) */
        ULONG        dttd_Flags;      /* (enum pOS_DtTypeDescribeFlags) */
};


enum pOS_DtTypeDescribeFlags  /** dttd_Flags **/
{
  DTTDF_None       =0,
  DTTDF_QuickMatch =0x0001  /* Übereinstimmung mit einem pOS_DtTypeFileID-Objekt
                            ** genügt der Identifizierung */
};







/*----------------------------------
-----------------------------------*/
struct pOS_DataTypeBase
{
  struct pOS_Library dt_Lib;

/*** SYSTEM - DATAS ***/
};


#endif
