NAME
The EAX (and volume) manipulation API -
Functions
void NJB_Reset_Get_EAX_Type (njb_t *njb)
njb_eax_t * NJB_Get_EAX_Type (njb_t *njb)
void NJB_Destroy_EAX_Type (njb_eax_t *eax)
void NJB_Adjust_EAX (njb_t *njb, u_int16_t eaxid, u_int16_t patchindex,
int16_t scalevalue)
Function Documentation
void NJB_Adjust_EAX (njb_t * njb, u_int16_t eaxid, u_int16_t patchindex,
int16_t scalevalue) This adjusts an EAX control. The magic numbers
needed are to be found in njb_eax_t structs retrived with the
NJB_Get_EAX_Type() function. In theory, EAX controls could be both
selectable (different patchindex can be selected) and scaleable
(different scalevalue can be set) but in practice all controls are
either selectable or scaleable.
Parameters:
njb a pointer to the njb_t object to manipulate the EAX settings on
eaxid a unique ID for the EAX effect to manipulate
patchindex a patch index to set for the EAX effect. If the effect
is not selectable, you can set this to 0.
scalevalue a scale value to set for the EAX effect. If the effect
is not scaleable, you can set this to 0. Note that this is a signed
integer, and may very well be supplied with negative numbers!
See also:
NJB_Get_EAX_Type()
References njb_struct::device_type, njb3_state_t::eax_processor_active,
njb3_control_eax_processor(), NJB_DEVICE_NJB1, and
njb_struct::protocol_state.
void NJB_Destroy_EAX_Type (njb_eax_t * eax) This destroys an EAX Type and
frees all memory used by it.
Parameters:
eax the EAX Type to destroy
Examples:
dumpeax.c.
References destroy_eax_type().
njb_eax_t* NJB_Get_EAX_Type (njb_t * njb) This retrieves an EAX type from
the device. EAX types include volume controls, so this is essential for
most player gadgets. Adjustment of the EAX controls according to the
values found in njb_eax_t objects is done using the NJB_Ajust_EAX()
function.
Parameters:
njb a pointer to the njb_t object to reset the EAX retrieveal
pointer for
Returns:
a pointer to a newly allocaed EAX type. This should be freed with
NJB_Destroy_EAX_Type() after use.
See also:
NJB_Reset_Get_EAX_Type()
NJB_Adjust_EAX()
njb_eax_t
Examples:
dumpeax.c.
References njb_struct::device_type, NJB_DEVICE_NJB1, and
njb_get_nexteax().
void NJB_Reset_Get_EAX_Type (njb_t * njb) This function resets the
retrieveal of EAX types. It should typically be called before any
subsequent calls to NJB_Get_EAX_Type().
Typical usage:
njb_t *njb;
njb_eax_t *eax;
NJB_Reset_Get_EAX_Type(njb);
while ( (eax = NJB_Get_EAX_Type(njb)) != NULL ) {
// Do something with all the EAX types...
NJB_Destroy_EAX_Type(eax);
}
Parameters:
njb a pointer to the njb_t object to reset the EAX retrieveal
pointer for
See also:
NJB_Get_EAX_Type()
Examples:
dumpeax.c.
References njb_struct::device_type, NJB_DEVICE_NJB1, and
njb_read_eaxtypes().
Author
Generated automatically by Doxygen for libnjb from the source code.
Version 2.2.5 6 MaThe0EAX (and volume) manipulation API(3)