Why doesn't FAssetTypeActions_SoundEffectPreset inherit from FAssetTypeActions_Base

FAssetTypeActions_Base overrides IAssetTypeActions, and has this description:

/** A base class for all AssetTypeActions. Provides helper functions useful for many types. Deriving from this class is optional. */

Deriving from it is optional, but in 4.13, every asset derived from it directly or indirectly. In 4.14, the only one we see that doesn’t is FAssetTypeActions_SoundEffectPreset. With the exception of ::CanLocalize, it looks like it mirrors the functionality of Base precisely, including the more complicated AssetsActivated and PerformAssetDiff functions.

This caused a minor problem for us because we had added extra functionality to IAssetTypeActions and extended it to FAssetTypeActions_Base. We’ve decided to make the change locally to inherit FAssetTypeActions_SoundEffectPreset from FAssetTypeActions_Base rather than duplicate some of those other functions we added, but that could of course be risky if there are later updates to SoundEffectPreset that rely on it not inheriting from base.

This obviously isn’t high priority, but if there is a reason it doesn’t inherit, we’d like to know, and if there isn’t, then we’d prefer it if it were changed to do the inheritance.

That code was a work-in-progress and isn’t being used by anybody right now. It’s part of the new audio mixer functionality to support user-created effects. I believe I had it directly inherit from IAssetTypeActions for some reason that I can’t really remember right now. I’m about to check in a massive change with this stuff actually working (with user-created effects that show up as engine asset actions/factories) and this has been reverted to just inherit from FAssetTypeActions_Base.

Thanks for bringing it up.

Thanks for the update!