The structure used to define an interface
typedef struct { char * name; int32_t version; void *interface; } AOInterface_t;
The AOInterface_t structure defines an interface and contains at least the following members:
The interface itself can be anything you want. Typically it's a pointer to an array of function pointers, a pointer to a function, or a pointer to a string.