/*
 * @(#)nativemcl.h    generated by: makeheader 4.21  Mon Dec 20 17:03:18 2004
 *
 *		built from:	../../../src/include/copyright.h
 *				../../../src/include/pragma_interface.h
 *				./arrayaccessor.cpp
 *				./mcljava.cpp
 *				./mcljava_common.cpp
 *				./mcljava_excep.cpp
 *				./mcljava_globals.cpp
 */

#ifndef nativemcl_h
#define nativemcl_h


/*
 * Copyright 1984-2003 The MathWorks, Inc.
 * All Rights Reserved.
 */



/* Copyright 2003 The MathWorks, Inc. */

/*
 * Prevent g++ from making copies of vtable and typeinfo data
 * in every compilation unit.  By allowing for only one, we can
 * save space and prevent some situations where the linker fails
 * to coalesce them properly into a single entry.
 *
 * References:
 *    http://gcc.gnu.org/onlinedocs/gcc/Vague-Linkage.html#Vague%20Linkage
 *    http://gcc.gnu.org/onlinedocs/gcc/C---Interface.html
 */

#ifdef __cplusplus
#  ifdef __linux__
#    pragma interface
#  endif
#endif



#include <jni.h>
typedef jint (*mcljavaErrorHandler)(JNIEnv *env, const char* msg);
typedef jint (*mcljavaFunction)(JNIEnv *env, int nlhs, mxArray *plhs[], int nrhs, mxArray *prhs[],
                                mcljavaErrorHandler error_handler);

#endif /* nativemcl_h */
