/*******************************************************************************
 * Copyright (c) 2007 IBM Corporation and Others
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *    Takashi ITOH - initial API and implementation
 *******************************************************************************/
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class org_eclipse_actf_util_win32_COMUtil */

#ifndef _Included_org_eclipse_actf_util_win32_COMUtil
#define _Included_org_eclipse_actf_util_win32_COMUtil
#ifdef __cplusplus
extern "C" {
#endif
/*
 * Class:     org_eclipse_actf_util_win32_COMUtil
 * Method:    VtblCall
 * Signature: (III)I
 */
JNIEXPORT jint JNICALL Java_org_eclipse_actf_util_win32_COMUtil_VtblCall__III
  (JNIEnv *, jclass, jint, jint, jint);

/*
 * Class:     org_eclipse_actf_util_win32_COMUtil
 * Method:    VtblCall
 * Signature: (IIII)I
 */
JNIEXPORT jint JNICALL Java_org_eclipse_actf_util_win32_COMUtil_VtblCall__IIII
  (JNIEnv *, jclass, jint, jint, jint, jint);

/*
 * Class:     org_eclipse_actf_util_win32_COMUtil
 * Method:    VtblCall
 * Signature: (IIIII)I
 */
JNIEXPORT jint JNICALL Java_org_eclipse_actf_util_win32_COMUtil_VtblCall__IIIII
  (JNIEnv *, jclass, jint, jint, jint, jint, jint);

/*
 * Class:     org_eclipse_actf_util_win32_COMUtil
 * Method:    VtblCall
 * Signature: (IIIIII)I
 */
JNIEXPORT jint JNICALL Java_org_eclipse_actf_util_win32_COMUtil_VtblCall__IIIIII
  (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint);

/*
 * Class:     org_eclipse_actf_util_win32_COMUtil
 * Method:    VtblCall
 * Signature: (IIIIIII)I
 */
JNIEXPORT jint JNICALL Java_org_eclipse_actf_util_win32_COMUtil_VtblCall__IIIIIII
  (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint);

/*
 * Class:     org_eclipse_actf_util_win32_COMUtil
 * Method:    VtblCall
 * Signature: (IIIIIIII)I
 */
JNIEXPORT jint JNICALL Java_org_eclipse_actf_util_win32_COMUtil_VtblCall__IIIIIIII
  (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint, jint);

/*
 * Class:     org_eclipse_actf_util_win32_COMUtil
 * Method:    VtblCall
 * Signature: (IIIIIIIII)I
 */
JNIEXPORT jint JNICALL Java_org_eclipse_actf_util_win32_COMUtil_VtblCall__IIIIIIIII
  (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint, jint, jint);

/*
 * Class:     org_eclipse_actf_util_win32_COMUtil
 * Method:    VtblCall
 * Signature: (IIIIIIIIII)I
 */
JNIEXPORT jint JNICALL Java_org_eclipse_actf_util_win32_COMUtil_VtblCall__IIIIIIIIII
  (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint, jint, jint, jint);

#ifdef __cplusplus
}
#endif
#endif
