/**
 * @defgroup api_drain The Drain API.
 *
 * These methods relate to the "Drainable" interface.
 */

/**
 * @defgroup api_serialize The Serialize API.
 *
 * These methods related to the "Serialize" interface.
 */

/**
 * @defgroup api_eventq The Event Queue API.
 *
 * These methods relate to the event queue interface.
 */

/**
 * @defgroup api_stats The Stats API.
 *
 * These methods relate to the statistics I/O interface.
 */

/**
 * @defgroup api_simobject The SimObject API.
 *
 * These methods relate to the SimObject interface.
 */
