Poster of Linux kernelThe best gift for a Linux geek
The EAX (and volume) manipulation API

The EAX (and volume) manipulation API

Section: libnjb (3) Updated: 6 Mar 2010
Local index Up
 

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.


 

Index

NAME
Functions
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.
void NJB_Destroy_EAX_Type (njb_eax_t * eax)This destroys an EAX Type and frees all memory used by it.
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.
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().
Author

This document was created by man2html, using the manual pages.
Time: 21:51:25 GMT, April 16, 2011