# All plugins ereditate all variables and functions in the scope
# One plugin can handle different format file, by example sox plugin
# can handle wav and au formats.
#
# For each sound format must be created:
# plugin_present_<format-file>
# extract_time_<format-file>
# extract_check_info_<format-file>
# check_file_type_<plugin_name>
# setup_vars_<format-file>

First two rows must be:
# Functions for <plugin-name>
# FORMAT FILE: <format-file> [<format-file> ...]

# Here dependencies:
plugin_present_<required-plugin> 2>/dev/null
if [ $? -ne 0 ]; then
  #This plugin require <required-plugin> plugin
  . $PLUGINDIR/general/<required-plugin>
fi

# Functions definition:

# plugin_present_<plugin_name> must only return 0. It is used in checking dependencies:

plugin_present_<plugin_name> () {
  return 0
}

# extract_time_<format-file> must use one parameter: filename

# extract_check_info_<format-file> 
# can use following variables (these are the ones much importants):
# i		filename
# INFO		output of file command in filename
# TIPOFILE	echo $INFO|cut -d':' -f2
# SONGDATA	Filename of temporary data file
#
# And must return two variables: 
# RET_RATE		Frequency rate of file 
# RET_KBITSTEREO	Kbit/s and if stereo and mono (not required) 

# check_file_type_<plugin_name>
# Must check for all supported format files (by this plugin) and can use
# variables wrote in config file during configuration using config/<plugin_name>.
# Must return:
# ISTYPE 	extension of format file and FILETYPE
# FILETYPE	Description string of format file

# parse_param_t_<plugin-name>
# Can use $1 and $2 (first and second positional parameters in main program) to
# parse for output format file. 

# setup_vars_<format-file> 
# Must fill:
# CMDSOXBUFF	 
# CMDSOXFLY
# CMDFLY
# FILEFLY
# CMDNORMAL
# FILESRC
# FILEDST
# OUTPUT_FILE

