Need help with code structure

You can create static delegates, so you’d be able to call or subscribe to them from anywhere without knowing in advance which object is going to call it.

You could also put these in another class entirely, so both sides would only need to know about this delegate interface. One example usage in the engine would be FWorldDelegates.