/******************************************************************************************************/
/*                                                                                                    */
/* File        : ./userrockmfifo.h                                                                    */
/* Description : tl compiler definitions                                                              */
/*                                                                                                    */
/* Command     : rockmfifo                                                                            */
/* Comment     : ROCKM FIFO library tcl interface
If a fifo is opened, no other should use that FIFO! */
/*                                                                                                    */
/* Note : This file was created from a tl file.                                                       */
/*        Do not modify by hand.                                                                      */
/*                                                                                                    */
/* Created : Wed 29. Oct 1997 11:40:23                                                                */
/*                                                                                                    */
/******************************************************************************************************/

#ifndef TLC_TCLC_rockmfifo_USER_H
#define TLC_TCLC_rockmfifo_USER_H

#define TL_OK	0

typedef struct
	{
	 int nr;    	/* associated nr. */
	 char *str; 	/* read string */
	} _TL_siset;	/* set/iset data structure */

/*****************************************/
/*             Constants                 */
/*****************************************/

#define	ROCKMFIFOT_Ccancache_block_advanced	5
#define	ROCKMFIFOT_Ccancache_block	4
#define	ROCKMFIFOT_Ccancache_advanced	3
#define	ROCKMFIFOT_Ccancache_minimal	2
#define	ROCKMFIFOT_Ccancache_off	1

/*****************************************/
/*           User types                  */
/*****************************************/

typedef void * ROCKMT_ITrid;	/* intype pointer */

typedef void * ROCKMFIFOT_ITfid;	/* intype pointer */

typedef void * ROCKMFIFOT_OTfid;	/* outtype pointer */

typedef int ROCKMFIFOT_OTdummy;	/* outtype integer */

typedef _TL_siset ROCKMFIFOT_ITcancache;	/* intype iset */

typedef struct _str_natural
	{ /* auto dispose by tl compiler */
	 struct _str_natural *next;	/* last must be NULL */
	 unsigned int element;	/* outtype natural element*/
	} _STR_natural;

typedef _STR_natural *ROCKMFIFOT_OTclose;	/* outtype list of natural*/

typedef _STR_natural *ROCKMFIFOT_OTread;	/* outtype list of natural*/

typedef struct
	{
	 unsigned int chadd;	/* outtype natural */
	 unsigned int trigger;	/* outtype natural */
	 unsigned int ring;	/* outtype natural */
	} ROCKMFIFOT_OTsuperheader;	/* outtype record*/

typedef struct
	{
	 unsigned int last;	/* outtype natural */
	 unsigned int trigger;	/* outtype natural */
	} ROCKMFIFOT_OTsubheader;	/* outtype record*/

typedef struct
	{
	 unsigned int slvadd;	/* outtype natural */
	 unsigned int channel;	/* outtype natural */
	 unsigned int reserved;	/* outtype natural */
	 unsigned int slvdata;	/* outtype natural */
	} ROCKMFIFOT_OTslave;	/* outtype record*/

typedef struct _str_ROCKMFIFOT_OTslave
	{ /* auto dispose by tl compiler */
	 struct _str_ROCKMFIFOT_OTslave *next;	/* last must be NULL */
	 ROCKMFIFOT_OTslave element;	/* outtype idf. element*/
	} _STR_ROCKMFIFOT_OTslave;

typedef _STR_ROCKMFIFOT_OTslave *ROCKMFIFOT_OTslaves;	/* outtype list of idf.*/

typedef struct
	{
	 unsigned int softparity;	/* outtype natural */
	 unsigned int hardparity;	/* outtype natural */
	} ROCKMFIFOT_OTsubfooter;	/* outtype record*/

typedef struct
	{
	 unsigned int cradd;	/* outtype natural */
	 ROCKMFIFOT_OTsubheader header;	/* outtype idf. */
	 ROCKMFIFOT_OTslaves slaves;	/* outtype idf. */
	 ROCKMFIFOT_OTsubfooter footer;	/* outtype idf. */
	} ROCKMFIFOT_OTsubframe;	/* outtype record*/

typedef struct _str_ROCKMFIFOT_OTsubframe
	{ /* auto dispose by tl compiler */
	 struct _str_ROCKMFIFOT_OTsubframe *next;	/* last must be NULL */
	 ROCKMFIFOT_OTsubframe element;	/* outtype idf. element*/
	} _STR_ROCKMFIFOT_OTsubframe;

typedef _STR_ROCKMFIFOT_OTsubframe *ROCKMFIFOT_OTsubframes;	/* outtype list of idf.*/

typedef unsigned int ROCKMFIFOT_OTsuperfooter_parity_fail;	/* outtype natural */

typedef struct
	{
	 ROCKMFIFOT_OTsuperfooter_parity_fail softparity_fail;	/* outtype idf. */
	 ROCKMFIFOT_OTsuperfooter_parity_fail hardparity_fail;	/* outtype idf. */
	 unsigned int overflow;	/* outtype natural */
	 unsigned int softcounter;	/* outtype natural */
	 unsigned int hardcounter;	/* outtype natural */
	} ROCKMFIFOT_OTsuperfooter;	/* outtype record*/

typedef struct
	{
	 ROCKMFIFOT_OTsuperheader header;	/* outtype idf. */
	 ROCKMFIFOT_OTsubframes subfr;	/* outtype idf. */
	 ROCKMFIFOT_OTsuperfooter footer;	/* outtype idf. */
	} ROCKMFIFOT_OTsuperframe;	/* outtype record*/

typedef struct _str_ROCKMFIFOT_OTsuperframe
	{ /* auto dispose by tl compiler */
	 struct _str_ROCKMFIFOT_OTsuperframe *next;	/* last must be NULL */
	 ROCKMFIFOT_OTsuperframe element;	/* outtype idf. element*/
	} _STR_ROCKMFIFOT_OTsuperframe;

typedef _STR_ROCKMFIFOT_OTsuperframe *ROCKMFIFOT_OTdecode_elements;	/* outtype list of idf.*/

typedef struct
	{
	 char * status;	/* outtype string */
	 ROCKMFIFOT_OTdecode_elements elements;	/* outtype idf. */
	} ROCKMFIFOT_OTdecode;	/* outtype record*/

typedef struct
	{
	 char * status;	/* outtype string */
	 ROCKMFIFOT_OTread elements;	/* outtype idf. */
	} ROCKMFIFOT_OTread_frame;	/* outtype record*/

typedef struct
	{
	 int nrels;	/* nr of elements in the list */
	 unsigned int *els;	/* array of intype natural elements*/
	} ROCKMFIFOT_ITrefill;	/* intype list of natural*/

typedef struct
	{
	 int nrels;	/* nr of elements in the list */
	 unsigned int *els;	/* array of intype natural elements*/
	} ROCKMFIFOT_ITraw2frame;	/* intype list of natural*/

typedef struct
	{
	 char * status;	/* outtype string */
	 ROCKMFIFOT_OTsuperframe superframe;	/* outtype idf. */
	} ROCKMFIFOT_OTraw2frame;	/* outtype record*/

typedef struct
	{
	 unsigned int chadd;	/* intype natural */
	 unsigned int trigger;	/* intype natural */
	 unsigned int ring;	/* intype natural */
	} ROCKMFIFOT_ITsuperheader;	/* intype record*/

typedef struct
	{
	 unsigned int last;	/* intype natural */
	 unsigned int trigger;	/* intype natural */
	} ROCKMFIFOT_ITsubheader;	/* intype record*/

typedef struct
	{
	 unsigned int slvadd;	/* intype natural */
	 unsigned int channel;	/* intype natural */
	 unsigned int reserved;	/* intype natural */
	 unsigned int slvdata;	/* intype natural */
	} ROCKMFIFOT_ITslave;	/* intype record*/

typedef struct
	{
	 int nrels;	/* nr of elements in the list */
	 ROCKMFIFOT_ITslave *els;	/* array of intype idf. elements*/
	} ROCKMFIFOT_ITslaves;	/* intype list of idf.*/

typedef struct
	{
	 unsigned int softparity;	/* intype natural */
	 unsigned int hardparity;	/* intype natural */
	} ROCKMFIFOT_ITsubfooter;	/* intype record*/

typedef struct
	{
	 unsigned int cradd;	/* intype natural */
	 ROCKMFIFOT_ITsubheader header;	/* intype idf. */
	 ROCKMFIFOT_ITslaves slaves;	/* intype idf. */
	 ROCKMFIFOT_ITsubfooter footer;	/* intype idf. */
	} ROCKMFIFOT_ITsubframe;	/* intype record*/

typedef struct
	{
	 int nrels;	/* nr of elements in the list */
	 ROCKMFIFOT_ITsubframe *els;	/* array of intype idf. elements*/
	} ROCKMFIFOT_ITsubframes;	/* intype list of idf.*/

typedef unsigned int ROCKMFIFOT_ITsuperfooter_parity_fail;	/* intype natural */

typedef struct
	{
	 ROCKMFIFOT_ITsuperfooter_parity_fail softparity_fail;	/* intype idf. */
	 ROCKMFIFOT_ITsuperfooter_parity_fail hardparity_fail;	/* intype idf. */
	 unsigned int overflow;	/* intype natural */
	 unsigned int softcounter;	/* intype natural */
	 unsigned int hardcounter;	/* intype natural */
	} ROCKMFIFOT_ITsuperfooter;	/* intype record*/

typedef struct
	{
	 ROCKMFIFOT_ITsuperheader header;	/* intype idf. */
	 ROCKMFIFOT_ITsubframes subfr;	/* intype idf. */
	 ROCKMFIFOT_ITsuperfooter footer;	/* intype idf. */
	} ROCKMFIFOT_ITsuperframe;	/* intype record*/

typedef _STR_natural *ROCKMFIFOT_OTframe2raw;	/* outtype list of natural*/

typedef char * ROCKMFIFOT_OTconv_whatis;	/* outtype string */

typedef struct
	{
	 ROCKMT_ITrid rid;	/* param: intype idf. */

	 ROCKMFIFOT_ITcancache cancache;	/* optparam: intype idf. */
	 char cancache_present;	/* boolean: optparam present */


	 ROCKMFIFOT_OTfid result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_open;	/* data structure */

/* rockmfifo open data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_open(rockmfifot_t_open *data);

typedef struct
	{
	 ROCKMFIFOT_ITfid fid;	/* param: intype idf. */


	 ROCKMFIFOT_OTclose result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_close;	/* data structure */

/* rockmfifo close data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_close(rockmfifot_t_close *data);

typedef struct
	{
	 ROCKMFIFOT_ITfid fid;	/* param: intype idf. */


	 char result;	/* outtype nboolean */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_isempty;	/* data structure */

/* rockmfifo isempty data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_isempty(rockmfifot_t_isempty *data);

typedef struct
	{
	 ROCKMFIFOT_ITfid fid;	/* param: intype idf. */

	 unsigned int nrels;	/* optparam: intype natural */
	 char nrels_present;	/* boolean: optparam present */


	 ROCKMFIFOT_OTread result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_read;	/* data structure */

/* rockmfifo read data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_read(rockmfifot_t_read *data);

typedef struct
	{
	 ROCKMFIFOT_ITfid fid;	/* param: intype idf. */

	 unsigned int nrels;	/* optparam: intype natural */
	 char nrels_present;	/* boolean: optparam present */


	 ROCKMFIFOT_OTdecode result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_decode;	/* data structure */

/* rockmfifo decode data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_decode(rockmfifot_t_decode *data);

typedef struct
	{
	 ROCKMFIFOT_ITfid fid;	/* param: intype idf. */


	 ROCKMFIFOT_OTread_frame result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_read_frame;	/* data structure */

/* rockmfifo read_frame data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_read_frame(rockmfifot_t_read_frame *data);

typedef struct
	{
	 ROCKMFIFOT_ITfid fid;	/* param: intype idf. */


	 ROCKMFIFOT_OTread result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_synch;	/* data structure */

/* rockmfifo synch data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_synch(rockmfifot_t_synch *data);

typedef struct
	{
	 ROCKMFIFOT_ITfid fid;	/* param: intype idf. */
	 ROCKMFIFOT_ITcancache cancache;	/* param: intype idf. */


	 ROCKMFIFOT_OTdummy result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_setcancache;	/* data structure */

/* rockmfifo cache set data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_setcancache(rockmfifot_t_setcancache *data);

typedef struct
	{
	 ROCKMFIFOT_ITfid fid;	/* param: intype idf. */


	 ROCKMFIFOT_OTread result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_flush;	/* data structure */

/* rockmfifo cache flush data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_flush(rockmfifot_t_flush *data);

typedef struct
	{
	 ROCKMFIFOT_ITfid fid;	/* param: intype idf. */
	 ROCKMFIFOT_ITrefill newdata;	/* param: intype idf. */


	 ROCKMFIFOT_OTdummy result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_refill;	/* data structure */

/* rockmfifo cache refill data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_refill(rockmfifot_t_refill *data);

typedef struct
	{
	 ROCKMFIFOT_ITraw2frame rawdata;	/* param: intype idf. */


	 ROCKMFIFOT_OTraw2frame result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_conv_raw2frame;	/* data structure */

/* rockmfifo conv raw2frame data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_conv_raw2frame(rockmfifot_t_conv_raw2frame *data);

typedef struct
	{
	 ROCKMFIFOT_ITsuperframe aframe;	/* param: intype idf. */


	 ROCKMFIFOT_OTframe2raw result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_conv_frame2raw;	/* data structure */

/* rockmfifo conv frame2raw data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_conv_frame2raw(rockmfifot_t_conv_frame2raw *data);

typedef struct
	{
	 unsigned int rawel;	/* param: intype natural */


	 ROCKMFIFOT_OTconv_whatis result;	/* outtype idf. */

	 char *errorstr;	/* initialized ==NULL */
	} rockmfifot_t_conv_whatis;	/* data structure */

/* rockmfifo conv whatis data function*/
/* return TL_OK iff no error */
int rockmfifot_tl_conv_whatis(rockmfifot_t_conv_whatis *data);

#endif /* TLC_TCLC_rockmfifo_USER_H */