hello!

so i was thinking about using


    typedef IOReturn (*DataValueChangeHandler)(OSObject *target,
        IOAudioControl *audioControl, const void *oldData, UInt32
        oldDataSize, const void *newData, UInt32 newDataSize);

but what worries me not knowing *how* the APPUL coreaudio api “knows” what to 
get.

i mean, they are giving me carte blanche to use whatever structure i want to 
perform the necessary change.

do the “getValueChanged” handlers (that we do not specify) use our 
specification of the “setValueChanged” to “learn” what to do? or is this 
function supposed to be used for something entirely different?

for example this is what i see in IOAudioControl.h:

    virtual OSObject *getValue( ) 
AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_10;
    virtual SInt32 getIntValue( ) 
AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_10;
    virtual const void *getDataBytes( ) 
AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_10;
    virtual UInt32 getDataLength( ) 
AVAILABLE_MAC_OS_X_VERSION_10_4_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_10;

the actual source is not very helpful here either:

https://opensource.apple.com/source/IOAudioFamily/IOAudioFamily-203.3/IOAudioControl.cpp.auto.html

basically, what i’m asking is: how can the API know the kind of data i’m using 
to set the change without my specification? 

google comes up empty for the usage of this function. in some ways it’s very 
exciting and comforting that know google is impotent for many of the questions 
i’m asking here!

Thanks,
Gagan

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/coreaudio-api/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to