// ***************** FILTERS FOR SAMPLES/SOUNDS ***************/
//
// Your main function have to be in this form:
// OSErr main( sData *theData, // Sample informations, see MAD.h
// long SelectionStart, // SelectionStart
// long SelectionEnd, // SelectionEnd, your filter SHOULD apply his effect only on the selection
// PPInfoPlug *thePPInfoPlug // Some functions of PlayerPRO that you can use in your plugs
// short stereoMode) // StereoMode, see 'Silence.c' example
//
// ***************** ***********************/
//
// If you want to reallocate theData or theData->data:
//
// if( theData->data != 0L) DisposPtr( theData->data); // VERY IMPORTANT to free memory
// theData->data = NewPtr( newsize); // Use NewPtr ONLY to allocate memory!
//
// theData->size = newsize; // In bytes !! Even for 16 bits !
//
// Don't forget to UPDATE the theData->size !!!!!!!!!!!!
//
// ***************** ***********************/
//
// About Resources:
//
// Your Plug should have: Creator: 'SNPL', Type: 'PLug'
//
// Your Plug have to have these resources:
//
// - One resource CODE 1000 with 68k Code ** You should NOT use the 68881 coprocessor **
// - One resource PPCC 1000 with PPC Code (OPTIONAL: if PlayerPRO PPC version cannot find it, it will use the CODE 1000 68k resource)
// - One STR# resource :
//
// 1 string: Menu Name (see Instrument window in PlayerPRO)
//
/******************** ***********************/
typedef struct
{
void *RPlaySoundUPP; // OSErr RPlaySound( Ptr whichSound, long SoundSize, long whichTrack, long Period, long Amplitude, long loopStart, long loopLength)
// RPlaySoundUPP : See Developper Toolkit documentation. Play a SoundPtr at a specific Period by using PlayerPRO Driver.
// UpdateALLWindow : Check all PlayerPRO windows and update them if need it.
// MyDlgFilterUPP : to use with a ModalDialog function: allow movable dialog, PlayerPRO windows updating, Item 1 Frame, Copy/Paste support, Key support