Using Unreal Engine 4.1 (latest from GitHub) in Visual Studio 2013 Professional Update 2, USoundBase, USoundWave, and USoundWaveStreaming are not marked as having DLL linkage, so it’s not possible to extend them in an Engine plugin. Upon building a plugin based on the UObjectPlugin example but instead inheriting from USoundWaveStreaming and linking the Engine module in my Build.cs file, I get the following linker errors:
See the relevant build output here.
I believe the classes named above should be marked with the ENGINE_API macro and the MinimalAPI specifier removed, as well as the ENGINE_API macro removed from the individual methods currently marked for export since only then, my project builds correctly.