Ethan Lee elee@codeweavers.com writes:
XACTEngine is similar to X3DAudio/XAPOFX in that they’re separate DLLs from XAudio2, but are still very tightly coupled with XAudio2 itself. In XACT’s case, we depend on both xaudio_private.h and xaudio_allocator.c, due to the need to unravel the engine/voice pointers as well as keep the exact same custom allocator callbacks as the rest of the XAudio DLLs, per FAudio’s request:
https://github.com/FNA-XNA/FAudio/blob/master/extensions/CustomAllocatorEXT....
That said, XACT didn’t get looped into XAudio 2.8+ like the other DLLs, so it would still make a little sense to have it in xactengine3_7 instead… if it’s okay for me to move the xact_* files but still depend on stuff in the xaudio2_7 folder, I can get that done today.
No, it's not OK to depend on stuff like that across DLLs. It should only be using the public API.