/* DO NOT EDIT THIS FILE - it is machine generated */
#include "jri.h"

/* Header for class TimeMediaPlugin */

#ifndef _TimeMediaPlugin_H_
#define _TimeMediaPlugin_H_

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

struct java_net_URL;
struct java_lang_String;
struct java_lang_Class;

/*******************************************************************************
 * Class TimeMediaPlugin
 ******************************************************************************/

typedef struct TimeMediaPlugin TimeMediaPlugin;

#define classname_TimeMediaPlugin	"TimeMediaPlugin"

#define class_TimeMediaPlugin(env) \
	((struct java_lang_Class*)JRI_FindClass(env, classname_TimeMediaPlugin))

/*******************************************************************************
 * Public Methods
 ******************************************************************************/

#ifdef DEBUG

/*** public SetSource (Ljava/net/URL;)V ***/
extern JRI_PUBLIC_API(void)
TimeMediaPlugin_SetSource(JRIEnv* env, struct TimeMediaPlugin* self, struct java_net_URL *a);

/*** public SetSource (Ljava/lang/String;)V ***/
extern JRI_PUBLIC_API(void)
TimeMediaPlugin_SetSource_1(JRIEnv* env, struct TimeMediaPlugin* self, struct java_lang_String *a);

/*** public native SetSourceNative (Ljava/lang/String;)V ***/
extern JRI_PUBLIC_API(void)
TimeMediaPlugin_SetSourceNative(JRIEnv* env, struct TimeMediaPlugin* self, struct java_lang_String *a);

/*** public native Start ()V ***/
extern JRI_PUBLIC_API(void)
TimeMediaPlugin_Start(JRIEnv* env, struct TimeMediaPlugin* self);

/*** public native Stop ()V ***/
extern JRI_PUBLIC_API(void)
TimeMediaPlugin_Stop(JRIEnv* env, struct TimeMediaPlugin* self);

/*** public native IsRunning ()Z ***/
extern JRI_PUBLIC_API(jbool)
TimeMediaPlugin_IsRunning(JRIEnv* env, struct TimeMediaPlugin* self);

/*** public native Loop (Z)V ***/
extern JRI_PUBLIC_API(void)
TimeMediaPlugin_Loop(JRIEnv* env, struct TimeMediaPlugin* self, jbool a);

/*** public native IsLooping ()Z ***/
extern JRI_PUBLIC_API(jbool)
TimeMediaPlugin_IsLooping(JRIEnv* env, struct TimeMediaPlugin* self);

/*** public native SetSpeed (I)V ***/
extern JRI_PUBLIC_API(void)
TimeMediaPlugin_SetSpeed(JRIEnv* env, struct TimeMediaPlugin* self, jint a);

/*** public native GetSpeed ()I ***/
extern JRI_PUBLIC_API(jint)
TimeMediaPlugin_GetSpeed(JRIEnv* env, struct TimeMediaPlugin* self);

#else /* !DEBUG */

/*** public SetSource (Ljava/net/URL;)V ***/
#define TimeMediaPlugin_SetSource(env, obj, a) \
	((void)JRI_CallMethod(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_SetSource, a))

/*** public SetSource (Ljava/lang/String;)V ***/
#define TimeMediaPlugin_SetSource_1(env, obj, a) \
	((void)JRI_CallMethod(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_SetSource_1, a))

/*** public native SetSourceNative (Ljava/lang/String;)V ***/
#define TimeMediaPlugin_SetSourceNative(env, obj, a) \
	((void)JRI_CallMethod(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_SetSourceNative, a))

/*** public native Start ()V ***/
#define TimeMediaPlugin_Start(env, obj) \
	((void)JRI_CallMethod(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_Start))

/*** public native Stop ()V ***/
#define TimeMediaPlugin_Stop(env, obj) \
	((void)JRI_CallMethod(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_Stop))

/*** public native IsRunning ()Z ***/
#define TimeMediaPlugin_IsRunning(env, obj) \
	((jbool)JRI_CallMethodBoolean(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_IsRunning))

/*** public native Loop (Z)V ***/
#define TimeMediaPlugin_Loop(env, obj, a) \
	((void)JRI_CallMethod(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_Loop, a))

/*** public native IsLooping ()Z ***/
#define TimeMediaPlugin_IsLooping(env, obj) \
	((jbool)JRI_CallMethodBoolean(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_IsLooping))

/*** public native SetSpeed (I)V ***/
#define TimeMediaPlugin_SetSpeed(env, obj, a) \
	((void)JRI_CallMethod(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_SetSpeed, a))

/*** public native GetSpeed ()I ***/
#define TimeMediaPlugin_GetSpeed(env, obj) \
	((jint)JRI_CallMethodInt(env)(env, JRI_CallMethod_op, obj, methodID_TimeMediaPlugin_GetSpeed))

#endif /* !DEBUG*/

/*** public SetSource (Ljava/net/URL;)V ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_SetSource;
#define name_TimeMediaPlugin_SetSource	"SetSource"
#define sig_TimeMediaPlugin_SetSource 	"(Ljava/net/URL;)V"
#define use_TimeMediaPlugin_SetSource(env, clazz)	\
	(methodID_TimeMediaPlugin_SetSource =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_SetSource,	\
			sig_TimeMediaPlugin_SetSource))
#define unuse_TimeMediaPlugin_SetSource(env, clazz)	\
	(methodID_TimeMediaPlugin_SetSource = JRIUninitialized)

/*** public SetSource (Ljava/lang/String;)V ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_SetSource_1;
#define name_TimeMediaPlugin_SetSource_1	"SetSource"
#define sig_TimeMediaPlugin_SetSource_1 	"(Ljava/lang/String;)V"
#define use_TimeMediaPlugin_SetSource_1(env, clazz)	\
	(methodID_TimeMediaPlugin_SetSource_1 =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_SetSource_1,	\
			sig_TimeMediaPlugin_SetSource_1))
#define unuse_TimeMediaPlugin_SetSource_1(env, clazz)	\
	(methodID_TimeMediaPlugin_SetSource_1 = JRIUninitialized)

/*** public native SetSourceNative (Ljava/lang/String;)V ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_SetSourceNative;
#define name_TimeMediaPlugin_SetSourceNative	"SetSourceNative"
#define sig_TimeMediaPlugin_SetSourceNative 	"(Ljava/lang/String;)V"
#define use_TimeMediaPlugin_SetSourceNative(env, clazz)	\
	(methodID_TimeMediaPlugin_SetSourceNative =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_SetSourceNative,	\
			sig_TimeMediaPlugin_SetSourceNative))
#define unuse_TimeMediaPlugin_SetSourceNative(env, clazz)	\
	(methodID_TimeMediaPlugin_SetSourceNative = JRIUninitialized)

/*** public native Start ()V ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_Start;
#define name_TimeMediaPlugin_Start	"Start"
#define sig_TimeMediaPlugin_Start 	"()V"
#define use_TimeMediaPlugin_Start(env, clazz)	\
	(methodID_TimeMediaPlugin_Start =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_Start,	\
			sig_TimeMediaPlugin_Start))
#define unuse_TimeMediaPlugin_Start(env, clazz)	\
	(methodID_TimeMediaPlugin_Start = JRIUninitialized)

/*** public native Stop ()V ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_Stop;
#define name_TimeMediaPlugin_Stop	"Stop"
#define sig_TimeMediaPlugin_Stop 	"()V"
#define use_TimeMediaPlugin_Stop(env, clazz)	\
	(methodID_TimeMediaPlugin_Stop =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_Stop,	\
			sig_TimeMediaPlugin_Stop))
#define unuse_TimeMediaPlugin_Stop(env, clazz)	\
	(methodID_TimeMediaPlugin_Stop = JRIUninitialized)

/*** public native IsRunning ()Z ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_IsRunning;
#define name_TimeMediaPlugin_IsRunning	"IsRunning"
#define sig_TimeMediaPlugin_IsRunning 	"()Z"
#define use_TimeMediaPlugin_IsRunning(env, clazz)	\
	(methodID_TimeMediaPlugin_IsRunning =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_IsRunning,	\
			sig_TimeMediaPlugin_IsRunning))
#define unuse_TimeMediaPlugin_IsRunning(env, clazz)	\
	(methodID_TimeMediaPlugin_IsRunning = JRIUninitialized)

/*** public native Loop (Z)V ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_Loop;
#define name_TimeMediaPlugin_Loop	"Loop"
#define sig_TimeMediaPlugin_Loop 	"(Z)V"
#define use_TimeMediaPlugin_Loop(env, clazz)	\
	(methodID_TimeMediaPlugin_Loop =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_Loop,	\
			sig_TimeMediaPlugin_Loop))
#define unuse_TimeMediaPlugin_Loop(env, clazz)	\
	(methodID_TimeMediaPlugin_Loop = JRIUninitialized)

/*** public native IsLooping ()Z ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_IsLooping;
#define name_TimeMediaPlugin_IsLooping	"IsLooping"
#define sig_TimeMediaPlugin_IsLooping 	"()Z"
#define use_TimeMediaPlugin_IsLooping(env, clazz)	\
	(methodID_TimeMediaPlugin_IsLooping =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_IsLooping,	\
			sig_TimeMediaPlugin_IsLooping))
#define unuse_TimeMediaPlugin_IsLooping(env, clazz)	\
	(methodID_TimeMediaPlugin_IsLooping = JRIUninitialized)

/*** public native SetSpeed (I)V ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_SetSpeed;
#define name_TimeMediaPlugin_SetSpeed	"SetSpeed"
#define sig_TimeMediaPlugin_SetSpeed 	"(I)V"
#define use_TimeMediaPlugin_SetSpeed(env, clazz)	\
	(methodID_TimeMediaPlugin_SetSpeed =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_SetSpeed,	\
			sig_TimeMediaPlugin_SetSpeed))
#define unuse_TimeMediaPlugin_SetSpeed(env, clazz)	\
	(methodID_TimeMediaPlugin_SetSpeed = JRIUninitialized)

/*** public native GetSpeed ()I ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_GetSpeed;
#define name_TimeMediaPlugin_GetSpeed	"GetSpeed"
#define sig_TimeMediaPlugin_GetSpeed 	"()I"
#define use_TimeMediaPlugin_GetSpeed(env, clazz)	\
	(methodID_TimeMediaPlugin_GetSpeed =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_GetSpeed,	\
			sig_TimeMediaPlugin_GetSpeed))
#define unuse_TimeMediaPlugin_GetSpeed(env, clazz)	\
	(methodID_TimeMediaPlugin_GetSpeed = JRIUninitialized)

/*******************************************************************************
 * IMPLEMENTATION SECTION: 
 * Define the IMPLEMENT_TimeMediaPlugin symbol 
 * if you intend to implement the native methods of this class. This 
 * symbol makes the private and protected methods available. You should 
 * also call the register_TimeMediaPlugin routine 
 * to make your native methods available.
 ******************************************************************************/

extern JRI_PUBLIC_API(struct java_lang_Class*)
use_TimeMediaPlugin(JRIEnv* env);

extern JRI_PUBLIC_API(void)
unuse_TimeMediaPlugin(JRIEnv* env);

extern JRI_PUBLIC_API(struct java_lang_Class*)
register_TimeMediaPlugin(JRIEnv* env);

extern JRI_PUBLIC_API(void)
unregister_TimeMediaPlugin(JRIEnv* env);

#ifdef IMPLEMENT_TimeMediaPlugin

/*******************************************************************************
 * Native Methods: 
 * These are the signatures of the native methods which you must implement.
 ******************************************************************************/

/*** public native SetSourceNative (Ljava/lang/String;)V ***/
extern JRI_PUBLIC_API(void)
native_TimeMediaPlugin_SetSourceNative(JRIEnv* env, struct TimeMediaPlugin* self, struct java_lang_String *a);

/*** public native Start ()V ***/
extern JRI_PUBLIC_API(void)
native_TimeMediaPlugin_Start(JRIEnv* env, struct TimeMediaPlugin* self);

/*** public native Stop ()V ***/
extern JRI_PUBLIC_API(void)
native_TimeMediaPlugin_Stop(JRIEnv* env, struct TimeMediaPlugin* self);

/*** public native IsRunning ()Z ***/
extern JRI_PUBLIC_API(jbool)
native_TimeMediaPlugin_IsRunning(JRIEnv* env, struct TimeMediaPlugin* self);

/*** public native Loop (Z)V ***/
extern JRI_PUBLIC_API(void)
native_TimeMediaPlugin_Loop(JRIEnv* env, struct TimeMediaPlugin* self, jbool a);

/*** public native IsLooping ()Z ***/
extern JRI_PUBLIC_API(jbool)
native_TimeMediaPlugin_IsLooping(JRIEnv* env, struct TimeMediaPlugin* self);

/*** public native SetSpeed (I)V ***/
extern JRI_PUBLIC_API(void)
native_TimeMediaPlugin_SetSpeed(JRIEnv* env, struct TimeMediaPlugin* self, jint a);

/*** public native GetSpeed ()I ***/
extern JRI_PUBLIC_API(jint)
native_TimeMediaPlugin_GetSpeed(JRIEnv* env, struct TimeMediaPlugin* self);

/*******************************************************************************
 * Implementation Methods: 
 * You should only use these from within the native method definitions.
 ******************************************************************************/

#ifdef DEBUG

/*** <init> ()V ***/
extern JRI_PUBLIC_API(struct TimeMediaPlugin*)
TimeMediaPlugin_new(JRIEnv* env, struct java_lang_Class* clazz);

#else /* !DEBUG */

/*** <init> ()V ***/
#define TimeMediaPlugin_new(env, clazz)	\
	((struct TimeMediaPlugin*)JRI_NewObject(env)(env, JRI_NewObject_op, clazz, methodID_TimeMediaPlugin_new))

#endif /* !DEBUG*/

/*** <init> ()V ***/
extern JRIMethodID FAR methodID_TimeMediaPlugin_new;
#define name_TimeMediaPlugin_new	"<init>"
#define sig_TimeMediaPlugin_new 	"()V"
#define use_TimeMediaPlugin_new(env, clazz)	\
	(methodID_TimeMediaPlugin_new =	\
		JRI_GetMethodID(env, clazz,	\
			name_TimeMediaPlugin_new,	\
			sig_TimeMediaPlugin_new))
#define unuse_TimeMediaPlugin_new(env, clazz)	\
	(methodID_TimeMediaPlugin_new = JRIUninitialized)

#endif /* IMPLEMENT_TimeMediaPlugin */

#ifdef __cplusplus
} /* extern "C" */

/*******************************************************************************
 * C++ Definitions
 ******************************************************************************/

#include "netscape_plugin_Plugin.h"

struct TimeMediaPlugin : public netscape_plugin_Plugin {

	static struct java_lang_Class* _use(JRIEnv* env) {
		return use_TimeMediaPlugin(env);
	}

	static void _unuse(JRIEnv* env) {
		unuse_TimeMediaPlugin(env);
	}

	static struct java_lang_Class* _register(JRIEnv* env) {
		return register_TimeMediaPlugin(env);
	}

	static void _unregister(JRIEnv* env) {
		unregister_TimeMediaPlugin(env);
	}

	static struct java_lang_Class* _class(JRIEnv* env) {
		return class_TimeMediaPlugin(env);
	}

	/* Public Methods */
	/*** public SetSource (Ljava/net/URL;)V ***/
	void SetSource(JRIEnv* env, struct java_net_URL *a) {
		TimeMediaPlugin_SetSource(env, this, a);
	}

	/*** public SetSource (Ljava/lang/String;)V ***/
	void SetSource(JRIEnv* env, struct java_lang_String *a) {
		TimeMediaPlugin_SetSource_1(env, this, a);
	}

	/*** public native SetSourceNative (Ljava/lang/String;)V ***/
	void SetSourceNative(JRIEnv* env, struct java_lang_String *a) {
		TimeMediaPlugin_SetSourceNative(env, this, a);
	}

	/*** public native Start ()V ***/
	void Start(JRIEnv* env) {
		TimeMediaPlugin_Start(env, this);
	}

	/*** public native Stop ()V ***/
	void Stop(JRIEnv* env) {
		TimeMediaPlugin_Stop(env, this);
	}

	/*** public native IsRunning ()Z ***/
	jbool IsRunning(JRIEnv* env) {
		return TimeMediaPlugin_IsRunning(env, this);
	}

	/*** public native Loop (Z)V ***/
	void Loop(JRIEnv* env, jbool a) {
		TimeMediaPlugin_Loop(env, this, a);
	}

	/*** public native IsLooping ()Z ***/
	jbool IsLooping(JRIEnv* env) {
		return TimeMediaPlugin_IsLooping(env, this);
	}

	/*** public native SetSpeed (I)V ***/
	void SetSpeed(JRIEnv* env, jint a) {
		TimeMediaPlugin_SetSpeed(env, this, a);
	}

	/*** public native GetSpeed ()I ***/
	jint GetSpeed(JRIEnv* env) {
		return TimeMediaPlugin_GetSpeed(env, this);
	}

#ifdef IMPLEMENT_TimeMediaPlugin

#endif /* IMPLEMENT_TimeMediaPlugin */
};

#endif /* __cplusplus */

#endif /* Class TimeMediaPlugin */
