
/*
 *      $Id: TypeSupport.h.sed,v 1.3 2006-04-18 01:10:11 dbrown Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:29:58 MST 1995
 *
 *	Description:	
 */
#ifndef TypeSupport_h
#define TypeSupport_h


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclmultiply(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclmultiply_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Ncldivide(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Ncldivide_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclplus(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclplus_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclminus(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclminus_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclexponent(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclexponent_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclmod(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclmod_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclsel_lt(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclsel_lt_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclsel_gt(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclsel_gt_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclgt(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclgt_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Ncllt(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Ncllt_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclge(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclge_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclle(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclle_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclne(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclne_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Ncleq(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Ncleq_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclncl_and(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Ncland_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclncl_or(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclor_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportOpTemplate.h.sed,v 1.1 1995-01-28 01:53:15 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclncl_xor(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
ng_size_t /* nlhs */,
ng_size_t /* nrhs */
#endif
);

NclTypeClass _Nclxor_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportMonoOpTemplate.h.sed,v 1.1 1995-01-28 01:53:11 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:10 MST 1995
 *
 *	Description:	
 */






extern NhlErrorTypes _Nclncl_not(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
NclScalar* /* lhs_m */,
ng_size_t /* nlhs */
#endif
);

extern NclTypeClass _Nclnot_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportMonoOpTemplate.h.sed,v 1.1 1995-01-28 01:53:11 ethan Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:10 MST 1995
 *
 *	Description:	
 */






extern NhlErrorTypes _Nclneg(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
NclScalar* /* lhs_m */,
ng_size_t /* nlhs */
#endif
);

extern NclTypeClass _Nclneg_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


/*
 *      $Id: TypeSupportMatTemplate.h.sed,v 1.1.4.1 2008-03-28 20:37:53 grubin Exp $
 */
/************************************************************************
*									*
*			     Copyright (C)  1995			*
*	     University Corporation for Atmospheric Research		*
*			     All Rights Reserved			*
*									*
************************************************************************/
/*
 *	File:		
 *
 *	Author:		Ethan Alpert
 *			National Center for Atmospheric Research
 *			PO 3000, Boulder, Colorado
 *
 *	Date:		Fri Jan 27 18:30:21 MST 1995
 *
 *	Description:	
 */
extern NhlErrorTypes _Nclmat(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* result */,
void* /* lhs */,
void* /* rhs */,
NclScalar* /* lhs_m */,
NclScalar* /* rhs_m */,
int       /* nlhs_dims */,
ng_size_t* /* lhs_dimsizes */,
int       /* nrhs_dims */,
ng_size_t* /* rhs_dimsizes */
#endif
);

NclTypeClass _Nclmat_type(
#if	NhlNeedProto
NclTypeClass /*the_type*/
#endif
);


extern NhlErrorTypes _NclInitTypeClasses(
#if	NhlNeedProto
void
#endif
);

extern NclTypeClass _NclTypeEnumToTypeClass(
#if	NhlNeedProto
NclObjTypes /* obj_type_enum */
#endif
);

extern NhlErrorTypes _Nclcmpf(
#if	NhlNeedProto
NclTypeClass	/* the_type */,
void *		/* lhs */,
void *		/* rhs */,
NclScalar *	/* lhs_m */,
NclScalar * 	/* rhs_m */,
int		/* digits */,
double*		/* result */
#endif
);

extern NhlErrorTypes _Nclprint(
#if	NhlNeedProto
NclTypeClass /* the_type */,
FILE 	* /*fp*/,
void * /*val*/
#endif
);

extern NhlErrorTypes _Nclcoerce(
#if	NhlNeedProto
NclTypeClass /* to_type */,
void * /* result */,
void* /* from */,
ng_size_t /* n */,
NclScalar* /* from_m */,
NclScalar* /* to_m */,
NclTypeClass  /*from_type*/
#endif
);

extern NhlErrorTypes _Nclreset_mis(
#if	NhlNeedProto
NclTypeClass /* the_type*/,
void * /*val*/,
NclScalar* /*old_m*/,
NclScalar* /*new_m*/,
ng_size_t /*nval*/
#endif
);

extern NclMonoTypes _Nclis_mono(
#if	NhlNeedProto
NclTypeClass /* the_type */,
void * /* val */,
NclScalar* /* val_m */,
ng_size_t /* nval */
#endif
);

extern NclQuark _NclGetLower(
#if	NhlNeedProto
NclQuark qstr
#endif
);

#define NCL_5_DEFAULT_FILLVALUES 0
#define NCL_6_DEFAULT_FILLVALUES 1

extern NhlErrorTypes _NclSetDefaultFillValues(
#if	NhlNeedProto
int default_type
#endif
);

extern NhlErrorTypes _NclGetDefaultFillValue(
#if	NhlNeedProto
NclBasicDataTypes type,
NclScalar *def_val
#endif
);


#endif /* TypeSupport_h*/
