/*										UGENS1.H	*/

typedef struct {
	OPDS	h;
	float	*xr, *ia, *idur, *ib;
	float	val, incr;
} LINE;

typedef struct 
{
	OPDS   	h;
	float 	*xr, *ia, *idur, *ib;
	float	val, mlt;
} EXPON;

#define ARGMAX	50	/* limited by rdorch GRPMAX */
#define	SEGMAX	25

typedef struct {
	OPDS	h;
	float	*rslt, *argums[ARGMAX];
	float	inc[SEGMAX] ,val[SEGMAX]; 
	long	cnt[SEGMAX];
	int     segno; 
} LINSEG;

typedef struct {
	OPDS	h;
	float	*rslt, *argums[ARGMAX];
	float	mlt[SEGMAX] ,val[SEGMAX]; 	
	long	cnt[SEGMAX];
	int     segno; 
} EXPSEG;

typedef struct
{
	OPDS 	h;
	float	*rslt, *sig, *iris, *idur, *idec;
	float 	inc1,inc2,val,lin1,lin2;
	long 	cnt1,cnt2;
} LINEN;

typedef struct {
	OPDS	h;
	float  *rslt, *xamp, *irise, *idur, *idec, *ifn, *iatss,*iatdec,*ixmod;
	long 	phs, ki, cnt1;
	float	val, mlt1, mlt2, asym;
	FUNC	*ftp;
} ENVLPX;
