/*********************************************************/
/*                                                       */
/* File        : ./usercalbzsup.h                        */
/* Description : tl compiler definitions                 */
/*                                                       */
/* Command     : calbzsup                                */
/* Comment     : CALB zero suppression library interface */
/*                                                       */
/* Note : This file was created from a tl file.          */
/*        Do not modify by hand.                         */
/*                                                       */
/* Created : Tue 20. May 1997 09:52:44                   */
/*                                                       */
/*********************************************************/

#ifndef TLC_TCLC_calbzsup_USER_H
#define TLC_TCLC_calbzsup_USER_H

#define TL_OK	0

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

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

#define	CALBZST_Cfind_succ	4
#define	CALBZST_Cfind_pred	3
#define	CALBZST_Cchanside_B	2
#define	CALBZST_Cchanside_A	1

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

typedef unsigned int CALBZST_OTdummy;	/* outtype natural */

typedef void * CALBZST_ITcid;	/* intype pointer */

typedef void * CALBZST_ITczsid;	/* intype pointer */

typedef void * CALBZST_OTczsid;	/* outtype pointer */

typedef int CALBZST_ITchannr;	/* intype irange */

typedef _TL_siset CALBZST_ITchanside;	/* intype iset */

typedef int CALBZST_ITbitnr;	/* intype irange */

typedef struct
	{
	 CALBZST_ITbitnr start_bit;	/* intype idf. */
	 CALBZST_ITbitnr end_bit;	/* intype idf. */
	} CALBZST_ITbitrange;	/* intype record*/

typedef _TL_siset CALBZST_ITfind_direction;	/* intype iset */

typedef struct
	{
	 CALBZST_ITcid cid;	/* param: intype idf. */


	 CALBZST_OTczsid result;	/* outtype idf. */

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

/* calbzsup new data function*/
/* return TL_OK iff no error */
int calbzst_tl_new(calbzst_t_new *data);

typedef struct
	{
	 CALBZST_ITczsid czsid;	/* param: intype idf. */


	 CALBZST_OTdummy result;	/* outtype idf. */

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

/* calbzsup dispose data function*/
/* return TL_OK iff no error */
int calbzst_tl_dispose(calbzst_t_dispose *data);

typedef struct
	{
	 CALBZST_ITczsid czsid;	/* param: intype idf. */

	 CALBZST_ITbitrange range;	/* option: intype idf. */
	 char range_present;	/* boolean: option range present */

	 CALBZST_OTdummy result;	/* outtype idf. */

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

/* calbzsup load data function*/
/* return TL_OK iff no error */
int calbzst_tl_load(calbzst_t_load *data);

typedef struct
	{
	 CALBZST_ITczsid czsid;	/* param: intype idf. */

	 CALBZST_ITbitrange range;	/* option: intype idf. */
	 char range_present;	/* boolean: option range present */

	 CALBZST_OTdummy result;	/* outtype idf. */

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

/* calbzsup save data function*/
/* return TL_OK iff no error */
int calbzst_tl_save(calbzst_t_save *data);

typedef struct
	{
	 CALBZST_ITczsid czsid;	/* param: intype idf. */
	 CALBZST_ITchannr channr;	/* param: intype idf. */
	 CALBZST_ITchanside chanside;	/* param: intype idf. */
	 CALBZST_ITbitnr bitnr;	/* param: intype idf. */


	 unsigned int result;	/* outtype natural */

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

/* calbzsup getbit data function*/
/* return TL_OK iff no error */
int calbzst_tl_getbit(calbzst_t_getbit *data);

typedef struct
	{
	 CALBZST_ITczsid czsid;	/* param: intype idf. */
	 CALBZST_ITchannr channr;	/* param: intype idf. */
	 CALBZST_ITchanside chanside;	/* param: intype idf. */
	 CALBZST_ITbitnr bitnr;	/* param: intype idf. */
	 int value;	/* param: intype irange */


	 CALBZST_OTdummy result;	/* outtype idf. */

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

/* calbzsup setbit data function*/
/* return TL_OK iff no error */
int calbzst_tl_setbit(calbzst_t_setbit *data);

typedef struct
	{
	 CALBZST_ITczsid czsid;	/* param: intype idf. */
	 CALBZST_ITchannr channr;	/* param: intype idf. */
	 CALBZST_ITchanside chanside;	/* param: intype idf. */
	 int value;	/* param: intype irange */

	 CALBZST_ITbitrange range;	/* option: intype idf. */
	 char range_present;	/* boolean: option range present */

	 CALBZST_OTdummy result;	/* outtype idf. */

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

/* calbzsup setrange data function*/
/* return TL_OK iff no error */
int calbzst_tl_setrange(calbzst_t_setrange *data);

typedef struct
	{
	 CALBZST_ITczsid czsid;	/* param: intype idf. */
	 CALBZST_ITchannr channr;	/* param: intype idf. */
	 CALBZST_ITchanside chanside;	/* param: intype idf. */
	 int value;	/* param: intype irange */

	 CALBZST_ITbitnr from;	/* option: intype idf. */
	 char from_present;	/* boolean: option from present */
	 CALBZST_ITfind_direction direction;	/* option: intype idf. */
	 char direction_present;	/* boolean: option direction present */

	 int result;	/* outtype integer */

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

/* calbzsup find data function*/
/* return TL_OK iff no error */
int calbzst_tl_find(calbzst_t_find *data);

#endif /* TLC_TCLC_calbzsup_USER_H */