/*===========================================================================
 *
 * File:	Dfarchdt.H
 * Author:	Dave Humphrey (uesp@m0use.net)
 * Created On:	Friday, June 29, 2001
 *
 * Contains the main CDFArch3DFile data object and routines used to load
 * 3D objects from that file.
 *
 *=========================================================================*/
#ifndef __DFARCHDT_H
#define __DFARCHDT_H


/*===========================================================================
 *
 * Begin Required Include Files
 *
 *=========================================================================*/
  #include "uesp/dagger/df3dobj.h"
/*===========================================================================
 *		End of Required Include Files
 *=========================================================================*/


/*===========================================================================
 *
 * Begin Definitions
 *
 *=========================================================================*/

	/* Default size of the 3d object cache in records */
  #define DFARCH3D_DATA_CACHESIZE 10300

/*===========================================================================
 *		End of Definitions
 *=========================================================================*/


/*===========================================================================
 *
 * Begin Function Prototypes
 *
 *=========================================================================*/

	/* Add a DF 3d object to the object cache */
  void AddDF3dObjectCache (CDF3dObject* pObject, const int Index);

	/* Create array of 3D objects */
  void CreateDF3dObjectCache (void);

	/* Delete any cached Arch3D objects */
  void ClearDF3dObjectCache   (void);
  void DestroyDF3dObjectCache (void);
  void DestroyDFArch3d      (void);

	/* Access a 3D object */
  boolean GetDF3dObject(CDF3dObject** pObject, const long ObjectValue);

	/* Initialize the Arch3D object */
  boolean InitDFArch3d (const char* pFilename);

/*===========================================================================
 *		End of Function Prototypes
 *=========================================================================*/


#endif
/*===========================================================================
 *		End of File Dfarchdt.H
 *=========================================================================*/