/*************************************************************************

	form*Z by auto*des*sys, Inc.
	Copyright (c) 1989-2004 auto*des*sys, Inc.  All rights reserved.

	File:			sinewave.h
	Author:			auto*des*sys, Inc.
	Created on:		01/26/04
	Description:	Sinewave plugin header.

*************************************************************************/
#ifndef __SINEWAVE_H
#define __SINEWAVE_H 1

/************************************************************************
	formZ api headers
*************************************************************************/

/* Required for all plugins */

#include "fzrt_api.h"

/* Required for plugins created by auto*des*sys, Inc. */

#include "formz_vendor.h"

/* Required for this specific plugin */

#include "fz_rzne_shdr_api.h" /* required for shdr fset */
#include "fz_math_api.h" /* required for math fset */


/************************************************************************
	Globals
*************************************************************************/

/* sinewave shader plugin identification */
#define SINEWAVE_PLUGIN_UUID 			"\x46\xac\x35\x18\x0a\xb8\x43\x1c\xbe\x49\xca\xe3\x19\x8d\x62\xa4"
#define SINEWAVE_PLUGIN_VERSION			FZPL_VERS_MAKE(6,1,0,0)
#define SINEWAVE_PLUGIN_VENDOR			FORMZ_VENDOR
#define SINEWAVE_PLUGIN_URL				FORMZ_VENDOR_URL

#define SINEWAVE_COLR_PLUGIN_UUID				"\xdf\xfe\xcb\xfe\x63\xb9\x4b\xea\xbe\xa5\x6c\xd2\x0b\xda\x57\xa0"
/* Usually, start the data io version at 0 and increment by 1 each time the data changes */
#define SINEWAVE_COLR_PLUGIN_DATA_IO_VERSION	FZPL_VERS_MAKE(5,5,0,0)	/* ONLY UPDATE WHEN SHADER DATA CHANGES */

#define SINEWAVE_TRNS_PLUGIN_UUID				"\xcd\xfb\x53\x24\x18\xee\x43\x3f\x97\xe6\xcb\x79\xf5\x22\xcc\xf7"
/* Usually, start the data io version at 0 and increment by 1 each time the data changes */
#define SINEWAVE_TRNS_PLUGIN_DATA_IO_VERSION	FZPL_VERS_MAKE(5,5,0,0)	/* ONLY UPDATE WHEN SHADER DATA CHANGES */
			
#define SINEWAVE_BUMP_PLUGIN_UUID				"\xcf\x5c\x1d\x22\x01\xec\x46\x15\x9d\xa9\xca\xd7\x52\xd7\xd9\x79"
/* Usually, start the data io version at 0 and increment by 1 each time the data changes */
#define SINEWAVE_BUMP_PLUGIN_DATA_IO_VERSION	FZPL_VERS_MAKE(5,5,0,0)	/* ONLY UPDATE WHEN SHADER DATA CHANGES */

#define SINEWAVE_BGND_PLUGIN_UUID				"\x7c\x0a\xde\x40\x38\x79\x47\xe3\x8f\xfd\x1f\xe2\x72\x7c\x01\x74"
/* Usually, start the data io version at 0 and increment by 1 each time the data changes */
#define SINEWAVE_BGND_PLUGIN_DATA_IO_VERSION	FZPL_VERS_MAKE(5,5,0,0)	/* ONLY UPDATE WHEN SHADER DATA CHANGES */

/* function set provided by formZ during run-time. */
const fzpl_fset_glue_fset* _fset_glue;

/* formZ provided function sets to hold on to */
fz_fzrt_base_fset		_base_funcs;
fz_fzrt_mem_fset		_mem_funcs;
fz_shdr_fset			_shdr_funcs;
fz_type_fset			_type_funcs;
fz_fzrt_file_fset		_file_funcs;
fz_fuim_fset			_fuim_funcs;
fz_rmtl_fset			_rmtl_funcs;

/* id assigned at run-time */
fzrt_unsigned_int _sinewave_plugin_runtime_id;

/* localization */
#define STRING_SIZE		256
char	_name[STRING_SIZE];
char	_full_name[STRING_SIZE];
char	_color1[STRING_SIZE];
char	_color2[STRING_SIZE];
char	_trns1[STRING_SIZE];
char	_trns2[STRING_SIZE];
char	_bump1[STRING_SIZE];
char	_bump2[STRING_SIZE];
char	_wave_height[STRING_SIZE];
char	_fuzz[STRING_SIZE];


#endif /* __SINEWAVE_H */
