Re: Audio Unit Properties that are CFStringRef
Re: Audio Unit Properties that are CFStringRef
- Subject: Re: Audio Unit Properties that are CFStringRef
- From: David Duncan <email@hidden>
- Date: Sun, 04 Mar 2012 22:18:58 -0800
On Mar 4, 2012, at 9:32 PM, Per Bull Holmen wrote:
> Den 04:27 5. mars 2012 skrev David Duncan <email@hidden> følgende:
>> Your assumption is that because you receive a pointer type, that the pointer must be valid in both address spaces.
>
> No, my assumption is that if I pass a pointer type one address space,
> then that pointer would be invalid in another address space. I also
> make the assumption that therefore, if the plugin and view exist in
> separate address spaces, it would be invalid to the view when passed
> from the plugin, and that there is no point in passing a pointer that
> might be invalid to whoever receives it.
Yes, but your question is "how can I get a pointer back if its not valid in one of the address spaces", and the answer is "its not valid in the other address space". Its really that simple, but fundamentally the answer also doesn't matter.
When the plugins are in the same address space, you have GUI <=> AU.
When the plugins are in different address spaces, you have GUI <=> AU-Proxy <-- transport --> GUI-Proxy <=> AU.
The GUI gets a pointer from the AU-Proxy that is legal in both the GUI & AU-Proxy address spaces. The GUI-Proxy and the AU similarly get pointers that are valid between their address spaces. When one plugin asks the other for something, it goes through the proxy and over the transport (if necessary) to get the correct value. As long as you adhere to the plugin requirements, a generic proxy can capture any data that you can request from either side without an issue.
--
Reality is what, when you stop believing in it, doesn't go away.
Failure is not an option. It is a privilege reserved for those who try.
David Duncan
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden