Skip to main content
gamedev.net
🔒 Locked

FMOD API Headers

Started by RabblePants 1 reply 1.3k views
Original Post
RabblePants
RabblePants
Hi all,

Anyone happen to know how FMOD managed to create their API headers such that they have a series of externally facing class definitions with only public methods? No visible members, no use of virtual functions that I can tell, etc?

How did they manage to hide the implementation details without the use of virtual functions? Or did they just hide the virtual keyword in a clever way? There is a method to create the various objects they use, so they must be instantiating an inherited object somehow, but without using virtuals I don't see how they can override the base functionality.

Thanks in advance,

Graf
MJP
MJP
It's been a very long time since I worked with FMOD, but if I recall correctly it's actually just a flat C API with C++ wrapper classes.
RabblePants
RabblePants
Even so, they do instantiate objects that you use to interact with the system. The class declaration is decidedly sparse - contains just public methods, and no members. So unless they do a pointer-to-pointer mapping between external/internal objects I can't immediately imagine how they hid the implementation details.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.