/* This file is auto-generated, do not edit. */

#include "vrclient_private.h"

static const struct { const char *iface_version; iface_constructor ctor; } constructors[] =
{
    {"IVRApplications_001", create_winIVRApplications_IVRApplications_001},
    {"FnTable:IVRApplications_001", create_winIVRApplications_IVRApplications_001_FnTable},
    {"IVRApplications_002", create_winIVRApplications_IVRApplications_002},
    {"FnTable:IVRApplications_002", create_winIVRApplications_IVRApplications_002_FnTable},
    {"IVRApplications_003", create_winIVRApplications_IVRApplications_003},
    {"FnTable:IVRApplications_003", create_winIVRApplications_IVRApplications_003_FnTable},
    {"IVRApplications_004", create_winIVRApplications_IVRApplications_004},
    {"FnTable:IVRApplications_004", create_winIVRApplications_IVRApplications_004_FnTable},
    {"IVRApplications_005", create_winIVRApplications_IVRApplications_005},
    {"FnTable:IVRApplications_005", create_winIVRApplications_IVRApplications_005_FnTable},
    {"IVRApplications_006", create_winIVRApplications_IVRApplications_006},
    {"FnTable:IVRApplications_006", create_winIVRApplications_IVRApplications_006_FnTable},
    {"IVRApplications_007", create_winIVRApplications_IVRApplications_007},
    {"FnTable:IVRApplications_007", create_winIVRApplications_IVRApplications_007_FnTable},
    {"IVRChaperoneSetup_004", create_winIVRChaperoneSetup_IVRChaperoneSetup_004},
    {"FnTable:IVRChaperoneSetup_004", create_winIVRChaperoneSetup_IVRChaperoneSetup_004_FnTable},
    {"IVRChaperoneSetup_005", create_winIVRChaperoneSetup_IVRChaperoneSetup_005},
    {"FnTable:IVRChaperoneSetup_005", create_winIVRChaperoneSetup_IVRChaperoneSetup_005_FnTable},
    {"IVRChaperoneSetup_006", create_winIVRChaperoneSetup_IVRChaperoneSetup_006},
    {"FnTable:IVRChaperoneSetup_006", create_winIVRChaperoneSetup_IVRChaperoneSetup_006_FnTable},
    {"IVRChaperone_002", create_winIVRChaperone_IVRChaperone_002},
    {"FnTable:IVRChaperone_002", create_winIVRChaperone_IVRChaperone_002_FnTable},
    {"IVRChaperone_003", create_winIVRChaperone_IVRChaperone_003},
    {"FnTable:IVRChaperone_003", create_winIVRChaperone_IVRChaperone_003_FnTable},
    {"IVRChaperone_004", create_winIVRChaperone_IVRChaperone_004},
    {"FnTable:IVRChaperone_004", create_winIVRChaperone_IVRChaperone_004_FnTable},
    {"IVRClientCore_002", create_winIVRClientCore_IVRClientCore_002},
    {"FnTable:IVRClientCore_002", create_winIVRClientCore_IVRClientCore_002_FnTable},
    {"IVRClientCore_003", create_winIVRClientCore_IVRClientCore_003},
    {"FnTable:IVRClientCore_003", create_winIVRClientCore_IVRClientCore_003_FnTable},
    {"IVRCompositor_005", create_winIVRCompositor_IVRCompositor_005},
    {"FnTable:IVRCompositor_005", create_winIVRCompositor_IVRCompositor_005_FnTable},
    {"IVRCompositor_006", create_winIVRCompositor_IVRCompositor_006},
    {"FnTable:IVRCompositor_006", create_winIVRCompositor_IVRCompositor_006_FnTable},
    {"IVRCompositor_007", create_winIVRCompositor_IVRCompositor_007},
    {"FnTable:IVRCompositor_007", create_winIVRCompositor_IVRCompositor_007_FnTable},
    {"IVRCompositor_008", create_winIVRCompositor_IVRCompositor_008},
    {"FnTable:IVRCompositor_008", create_winIVRCompositor_IVRCompositor_008_FnTable},
    {"IVRCompositor_009", create_winIVRCompositor_IVRCompositor_009},
    {"FnTable:IVRCompositor_009", create_winIVRCompositor_IVRCompositor_009_FnTable},
    {"IVRCompositor_010", create_winIVRCompositor_IVRCompositor_010},
    {"FnTable:IVRCompositor_010", create_winIVRCompositor_IVRCompositor_010_FnTable},
    {"IVRCompositor_011", create_winIVRCompositor_IVRCompositor_011},
    {"FnTable:IVRCompositor_011", create_winIVRCompositor_IVRCompositor_011_FnTable},
    {"IVRCompositor_012", create_winIVRCompositor_IVRCompositor_012},
    {"FnTable:IVRCompositor_012", create_winIVRCompositor_IVRCompositor_012_FnTable},
    {"IVRCompositor_013", create_winIVRCompositor_IVRCompositor_013},
    {"FnTable:IVRCompositor_013", create_winIVRCompositor_IVRCompositor_013_FnTable},
    {"IVRCompositor_014", create_winIVRCompositor_IVRCompositor_014},
    {"FnTable:IVRCompositor_014", create_winIVRCompositor_IVRCompositor_014_FnTable},
    {"IVRCompositor_015", create_winIVRCompositor_IVRCompositor_015},
    {"FnTable:IVRCompositor_015", create_winIVRCompositor_IVRCompositor_015_FnTable},
    {"IVRCompositor_016", create_winIVRCompositor_IVRCompositor_016},
    {"FnTable:IVRCompositor_016", create_winIVRCompositor_IVRCompositor_016_FnTable},
    {"IVRCompositor_017", create_winIVRCompositor_IVRCompositor_017},
    {"FnTable:IVRCompositor_017", create_winIVRCompositor_IVRCompositor_017_FnTable},
    {"IVRCompositor_018", create_winIVRCompositor_IVRCompositor_018},
    {"FnTable:IVRCompositor_018", create_winIVRCompositor_IVRCompositor_018_FnTable},
    {"IVRCompositor_019", create_winIVRCompositor_IVRCompositor_019},
    {"FnTable:IVRCompositor_019", create_winIVRCompositor_IVRCompositor_019_FnTable},
    {"IVRCompositor_020", create_winIVRCompositor_IVRCompositor_020},
    {"FnTable:IVRCompositor_020", create_winIVRCompositor_IVRCompositor_020_FnTable},
    {"IVRCompositor_021", create_winIVRCompositor_IVRCompositor_021},
    {"FnTable:IVRCompositor_021", create_winIVRCompositor_IVRCompositor_021_FnTable},
    {"IVRCompositor_022", create_winIVRCompositor_IVRCompositor_022},
    {"FnTable:IVRCompositor_022", create_winIVRCompositor_IVRCompositor_022_FnTable},
    {"IVRCompositor_024", create_winIVRCompositor_IVRCompositor_024},
    {"FnTable:IVRCompositor_024", create_winIVRCompositor_IVRCompositor_024_FnTable},
    {"IVRCompositor_026", create_winIVRCompositor_IVRCompositor_026},
    {"FnTable:IVRCompositor_026", create_winIVRCompositor_IVRCompositor_026_FnTable},
    {"IVRCompositor_027", create_winIVRCompositor_IVRCompositor_027},
    {"FnTable:IVRCompositor_027", create_winIVRCompositor_IVRCompositor_027_FnTable},
    {"IVRCompositor_028", create_winIVRCompositor_IVRCompositor_028},
    {"FnTable:IVRCompositor_028", create_winIVRCompositor_IVRCompositor_028_FnTable},
    {"IVRControlPanel_006", create_winIVRControlPanel_IVRControlPanel_006},
    {"FnTable:IVRControlPanel_006", create_winIVRControlPanel_IVRControlPanel_006_FnTable},
    {"IVRDriverManager_001", create_winIVRDriverManager_IVRDriverManager_001},
    {"FnTable:IVRDriverManager_001", create_winIVRDriverManager_IVRDriverManager_001_FnTable},
    {"IVRExtendedDisplay_001", create_winIVRExtendedDisplay_IVRExtendedDisplay_001},
    {"FnTable:IVRExtendedDisplay_001", create_winIVRExtendedDisplay_IVRExtendedDisplay_001_FnTable},
    {"IVRHeadsetView_001", create_winIVRHeadsetView_IVRHeadsetView_001},
    {"FnTable:IVRHeadsetView_001", create_winIVRHeadsetView_IVRHeadsetView_001_FnTable},
    {"IVRIOBuffer_001", create_winIVRIOBuffer_IVRIOBuffer_001},
    {"FnTable:IVRIOBuffer_001", create_winIVRIOBuffer_IVRIOBuffer_001_FnTable},
    {"IVRIOBuffer_002", create_winIVRIOBuffer_IVRIOBuffer_002},
    {"FnTable:IVRIOBuffer_002", create_winIVRIOBuffer_IVRIOBuffer_002_FnTable},
    {"IVRInput_003", create_winIVRInput_IVRInput_003},
    {"FnTable:IVRInput_003", create_winIVRInput_IVRInput_003_FnTable},
    {"IVRInput_004", create_winIVRInput_IVRInput_004},
    {"FnTable:IVRInput_004", create_winIVRInput_IVRInput_004_FnTable},
    {"IVRInput_005", create_winIVRInput_IVRInput_005},
    {"FnTable:IVRInput_005", create_winIVRInput_IVRInput_005_FnTable},
    {"IVRInput_006", create_winIVRInput_IVRInput_006},
    {"FnTable:IVRInput_006", create_winIVRInput_IVRInput_006_FnTable},
    {"IVRInput_007", create_winIVRInput_IVRInput_007},
    {"FnTable:IVRInput_007", create_winIVRInput_IVRInput_007_FnTable},
    {"IVRInput_010", create_winIVRInput_IVRInput_010},
    {"FnTable:IVRInput_010", create_winIVRInput_IVRInput_010_FnTable},
    {"IVRMailbox_001", create_winIVRMailbox_IVRMailbox_001},
    {"FnTable:IVRMailbox_001", create_winIVRMailbox_IVRMailbox_001_FnTable},
    {"IVRNotifications_001", create_winIVRNotifications_IVRNotifications_001},
    {"FnTable:IVRNotifications_001", create_winIVRNotifications_IVRNotifications_001_FnTable},
    {"IVRNotifications_002", create_winIVRNotifications_IVRNotifications_002},
    {"FnTable:IVRNotifications_002", create_winIVRNotifications_IVRNotifications_002_FnTable},
    {"IVROverlayView_003", create_winIVROverlayView_IVROverlayView_003},
    {"FnTable:IVROverlayView_003", create_winIVROverlayView_IVROverlayView_003_FnTable},
    {"IVROverlay_001", create_winIVROverlay_IVROverlay_001},
    {"FnTable:IVROverlay_001", create_winIVROverlay_IVROverlay_001_FnTable},
    {"IVROverlay_002", create_winIVROverlay_IVROverlay_002},
    {"FnTable:IVROverlay_002", create_winIVROverlay_IVROverlay_002_FnTable},
    {"IVROverlay_003", create_winIVROverlay_IVROverlay_003},
    {"FnTable:IVROverlay_003", create_winIVROverlay_IVROverlay_003_FnTable},
    {"IVROverlay_004", create_winIVROverlay_IVROverlay_004},
    {"FnTable:IVROverlay_004", create_winIVROverlay_IVROverlay_004_FnTable},
    {"IVROverlay_005", create_winIVROverlay_IVROverlay_005},
    {"FnTable:IVROverlay_005", create_winIVROverlay_IVROverlay_005_FnTable},
    {"IVROverlay_007", create_winIVROverlay_IVROverlay_007},
    {"FnTable:IVROverlay_007", create_winIVROverlay_IVROverlay_007_FnTable},
    {"IVROverlay_008", create_winIVROverlay_IVROverlay_008},
    {"FnTable:IVROverlay_008", create_winIVROverlay_IVROverlay_008_FnTable},
    {"IVROverlay_010", create_winIVROverlay_IVROverlay_010},
    {"FnTable:IVROverlay_010", create_winIVROverlay_IVROverlay_010_FnTable},
    {"IVROverlay_011", create_winIVROverlay_IVROverlay_011},
    {"FnTable:IVROverlay_011", create_winIVROverlay_IVROverlay_011_FnTable},
    {"IVROverlay_012", create_winIVROverlay_IVROverlay_012},
    {"FnTable:IVROverlay_012", create_winIVROverlay_IVROverlay_012_FnTable},
    {"IVROverlay_013", create_winIVROverlay_IVROverlay_013},
    {"FnTable:IVROverlay_013", create_winIVROverlay_IVROverlay_013_FnTable},
    {"IVROverlay_014", create_winIVROverlay_IVROverlay_014},
    {"FnTable:IVROverlay_014", create_winIVROverlay_IVROverlay_014_FnTable},
    {"IVROverlay_016", create_winIVROverlay_IVROverlay_016},
    {"FnTable:IVROverlay_016", create_winIVROverlay_IVROverlay_016_FnTable},
    {"IVROverlay_017", create_winIVROverlay_IVROverlay_017},
    {"FnTable:IVROverlay_017", create_winIVROverlay_IVROverlay_017_FnTable},
    {"IVROverlay_018", create_winIVROverlay_IVROverlay_018},
    {"FnTable:IVROverlay_018", create_winIVROverlay_IVROverlay_018_FnTable},
    {"IVROverlay_019", create_winIVROverlay_IVROverlay_019},
    {"FnTable:IVROverlay_019", create_winIVROverlay_IVROverlay_019_FnTable},
    {"IVROverlay_020", create_winIVROverlay_IVROverlay_020},
    {"FnTable:IVROverlay_020", create_winIVROverlay_IVROverlay_020_FnTable},
    {"IVROverlay_021", create_winIVROverlay_IVROverlay_021},
    {"FnTable:IVROverlay_021", create_winIVROverlay_IVROverlay_021_FnTable},
    {"IVROverlay_022", create_winIVROverlay_IVROverlay_022},
    {"FnTable:IVROverlay_022", create_winIVROverlay_IVROverlay_022_FnTable},
    {"IVROverlay_024", create_winIVROverlay_IVROverlay_024},
    {"FnTable:IVROverlay_024", create_winIVROverlay_IVROverlay_024_FnTable},
    {"IVROverlay_025", create_winIVROverlay_IVROverlay_025},
    {"FnTable:IVROverlay_025", create_winIVROverlay_IVROverlay_025_FnTable},
    {"IVROverlay_026", create_winIVROverlay_IVROverlay_026},
    {"FnTable:IVROverlay_026", create_winIVROverlay_IVROverlay_026_FnTable},
    {"IVROverlay_027", create_winIVROverlay_IVROverlay_027},
    {"FnTable:IVROverlay_027", create_winIVROverlay_IVROverlay_027_FnTable},
    {"IVRRenderModels_001", create_winIVRRenderModels_IVRRenderModels_001},
    {"FnTable:IVRRenderModels_001", create_winIVRRenderModels_IVRRenderModels_001_FnTable},
    {"IVRRenderModels_002", create_winIVRRenderModels_IVRRenderModels_002},
    {"FnTable:IVRRenderModels_002", create_winIVRRenderModels_IVRRenderModels_002_FnTable},
    {"IVRRenderModels_004", create_winIVRRenderModels_IVRRenderModels_004},
    {"FnTable:IVRRenderModels_004", create_winIVRRenderModels_IVRRenderModels_004_FnTable},
    {"IVRRenderModels_005", create_winIVRRenderModels_IVRRenderModels_005},
    {"FnTable:IVRRenderModels_005", create_winIVRRenderModels_IVRRenderModels_005_FnTable},
    {"IVRRenderModels_006", create_winIVRRenderModels_IVRRenderModels_006},
    {"FnTable:IVRRenderModels_006", create_winIVRRenderModels_IVRRenderModels_006_FnTable},
    {"IVRResources_001", create_winIVRResources_IVRResources_001},
    {"FnTable:IVRResources_001", create_winIVRResources_IVRResources_001_FnTable},
    {"IVRScreenshots_001", create_winIVRScreenshots_IVRScreenshots_001},
    {"FnTable:IVRScreenshots_001", create_winIVRScreenshots_IVRScreenshots_001_FnTable},
    {"IVRSettings_001", create_winIVRSettings_IVRSettings_001},
    {"FnTable:IVRSettings_001", create_winIVRSettings_IVRSettings_001_FnTable},
    {"IVRSettings_002", create_winIVRSettings_IVRSettings_002},
    {"FnTable:IVRSettings_002", create_winIVRSettings_IVRSettings_002_FnTable},
    {"IVRSettings_003", create_winIVRSettings_IVRSettings_003},
    {"FnTable:IVRSettings_003", create_winIVRSettings_IVRSettings_003_FnTable},
    {"IVRSystem_003", create_winIVRSystem_IVRSystem_003},
    {"FnTable:IVRSystem_003", create_winIVRSystem_IVRSystem_003_FnTable},
    {"IVRSystem_004", create_winIVRSystem_IVRSystem_004},
    {"FnTable:IVRSystem_004", create_winIVRSystem_IVRSystem_004_FnTable},
    {"IVRSystem_005", create_winIVRSystem_IVRSystem_005},
    {"FnTable:IVRSystem_005", create_winIVRSystem_IVRSystem_005_FnTable},
    {"IVRSystem_006", create_winIVRSystem_IVRSystem_006},
    {"FnTable:IVRSystem_006", create_winIVRSystem_IVRSystem_006_FnTable},
    {"IVRSystem_009", create_winIVRSystem_IVRSystem_009},
    {"FnTable:IVRSystem_009", create_winIVRSystem_IVRSystem_009_FnTable},
    {"IVRSystem_010", create_winIVRSystem_IVRSystem_010},
    {"FnTable:IVRSystem_010", create_winIVRSystem_IVRSystem_010_FnTable},
    {"IVRSystem_011", create_winIVRSystem_IVRSystem_011},
    {"FnTable:IVRSystem_011", create_winIVRSystem_IVRSystem_011_FnTable},
    {"IVRSystem_012", create_winIVRSystem_IVRSystem_012},
    {"FnTable:IVRSystem_012", create_winIVRSystem_IVRSystem_012_FnTable},
    {"IVRSystem_014", create_winIVRSystem_IVRSystem_014},
    {"FnTable:IVRSystem_014", create_winIVRSystem_IVRSystem_014_FnTable},
    {"IVRSystem_015", create_winIVRSystem_IVRSystem_015},
    {"FnTable:IVRSystem_015", create_winIVRSystem_IVRSystem_015_FnTable},
    {"IVRSystem_016", create_winIVRSystem_IVRSystem_016},
    {"FnTable:IVRSystem_016", create_winIVRSystem_IVRSystem_016_FnTable},
    {"IVRSystem_017", create_winIVRSystem_IVRSystem_017},
    {"FnTable:IVRSystem_017", create_winIVRSystem_IVRSystem_017_FnTable},
    {"IVRSystem_019", create_winIVRSystem_IVRSystem_019},
    {"FnTable:IVRSystem_019", create_winIVRSystem_IVRSystem_019_FnTable},
    {"IVRSystem_020", create_winIVRSystem_IVRSystem_020},
    {"FnTable:IVRSystem_020", create_winIVRSystem_IVRSystem_020_FnTable},
    {"IVRSystem_021", create_winIVRSystem_IVRSystem_021},
    {"FnTable:IVRSystem_021", create_winIVRSystem_IVRSystem_021_FnTable},
    {"IVRSystem_022", create_winIVRSystem_IVRSystem_022},
    {"FnTable:IVRSystem_022", create_winIVRSystem_IVRSystem_022_FnTable},
    {"IVRTrackedCamera_001", create_winIVRTrackedCamera_IVRTrackedCamera_001},
    {"FnTable:IVRTrackedCamera_001", create_winIVRTrackedCamera_IVRTrackedCamera_001_FnTable},
    {"IVRTrackedCamera_002", create_winIVRTrackedCamera_IVRTrackedCamera_002},
    {"FnTable:IVRTrackedCamera_002", create_winIVRTrackedCamera_IVRTrackedCamera_002_FnTable},
    {"IVRTrackedCamera_003", create_winIVRTrackedCamera_IVRTrackedCamera_003},
    {"FnTable:IVRTrackedCamera_003", create_winIVRTrackedCamera_IVRTrackedCamera_003_FnTable},
    {"IVRTrackedCamera_004", create_winIVRTrackedCamera_IVRTrackedCamera_004},
    {"FnTable:IVRTrackedCamera_004", create_winIVRTrackedCamera_IVRTrackedCamera_004_FnTable},
    {"IVRTrackedCamera_005", create_winIVRTrackedCamera_IVRTrackedCamera_005},
    {"FnTable:IVRTrackedCamera_005", create_winIVRTrackedCamera_IVRTrackedCamera_005_FnTable},
    {"IVRTrackedCamera_006", create_winIVRTrackedCamera_IVRTrackedCamera_006},
    {"FnTable:IVRTrackedCamera_006", create_winIVRTrackedCamera_IVRTrackedCamera_006_FnTable},
};

iface_constructor find_iface_constructor( const char *iface_version )
{
    int i;
    for (i = 0; i < ARRAYSIZE(constructors); ++i)
        if (!strcmp( iface_version, constructors[i].iface_version ))
            return constructors[i].ctor;
    return NULL;
}

static const struct { const char *iface_version; iface_destructor dtor; } destructors[] =
{
    {"IVRApplications_001", destroy_winIVRApplications_IVRApplications_001},
    {"FnTable:IVRApplications_001", destroy_winIVRApplications_IVRApplications_001_FnTable},
    {"IVRApplications_002", destroy_winIVRApplications_IVRApplications_002},
    {"FnTable:IVRApplications_002", destroy_winIVRApplications_IVRApplications_002_FnTable},
    {"IVRApplications_003", destroy_winIVRApplications_IVRApplications_003},
    {"FnTable:IVRApplications_003", destroy_winIVRApplications_IVRApplications_003_FnTable},
    {"IVRApplications_004", destroy_winIVRApplications_IVRApplications_004},
    {"FnTable:IVRApplications_004", destroy_winIVRApplications_IVRApplications_004_FnTable},
    {"IVRApplications_005", destroy_winIVRApplications_IVRApplications_005},
    {"FnTable:IVRApplications_005", destroy_winIVRApplications_IVRApplications_005_FnTable},
    {"IVRApplications_006", destroy_winIVRApplications_IVRApplications_006},
    {"FnTable:IVRApplications_006", destroy_winIVRApplications_IVRApplications_006_FnTable},
    {"IVRApplications_007", destroy_winIVRApplications_IVRApplications_007},
    {"FnTable:IVRApplications_007", destroy_winIVRApplications_IVRApplications_007_FnTable},
    {"IVRChaperoneSetup_004", destroy_winIVRChaperoneSetup_IVRChaperoneSetup_004},
    {"FnTable:IVRChaperoneSetup_004", destroy_winIVRChaperoneSetup_IVRChaperoneSetup_004_FnTable},
    {"IVRChaperoneSetup_005", destroy_winIVRChaperoneSetup_IVRChaperoneSetup_005},
    {"FnTable:IVRChaperoneSetup_005", destroy_winIVRChaperoneSetup_IVRChaperoneSetup_005_FnTable},
    {"IVRChaperoneSetup_006", destroy_winIVRChaperoneSetup_IVRChaperoneSetup_006},
    {"FnTable:IVRChaperoneSetup_006", destroy_winIVRChaperoneSetup_IVRChaperoneSetup_006_FnTable},
    {"IVRChaperone_002", destroy_winIVRChaperone_IVRChaperone_002},
    {"FnTable:IVRChaperone_002", destroy_winIVRChaperone_IVRChaperone_002_FnTable},
    {"IVRChaperone_003", destroy_winIVRChaperone_IVRChaperone_003},
    {"FnTable:IVRChaperone_003", destroy_winIVRChaperone_IVRChaperone_003_FnTable},
    {"IVRChaperone_004", destroy_winIVRChaperone_IVRChaperone_004},
    {"FnTable:IVRChaperone_004", destroy_winIVRChaperone_IVRChaperone_004_FnTable},
    {"IVRClientCore_002", destroy_winIVRClientCore_IVRClientCore_002},
    {"FnTable:IVRClientCore_002", destroy_winIVRClientCore_IVRClientCore_002_FnTable},
    {"IVRClientCore_003", destroy_winIVRClientCore_IVRClientCore_003},
    {"FnTable:IVRClientCore_003", destroy_winIVRClientCore_IVRClientCore_003_FnTable},
    {"IVRCompositor_005", destroy_winIVRCompositor_IVRCompositor_005},
    {"FnTable:IVRCompositor_005", destroy_winIVRCompositor_IVRCompositor_005_FnTable},
    {"IVRCompositor_006", destroy_winIVRCompositor_IVRCompositor_006},
    {"FnTable:IVRCompositor_006", destroy_winIVRCompositor_IVRCompositor_006_FnTable},
    {"IVRCompositor_007", destroy_winIVRCompositor_IVRCompositor_007},
    {"FnTable:IVRCompositor_007", destroy_winIVRCompositor_IVRCompositor_007_FnTable},
    {"IVRCompositor_008", destroy_winIVRCompositor_IVRCompositor_008},
    {"FnTable:IVRCompositor_008", destroy_winIVRCompositor_IVRCompositor_008_FnTable},
    {"IVRCompositor_009", destroy_winIVRCompositor_IVRCompositor_009},
    {"FnTable:IVRCompositor_009", destroy_winIVRCompositor_IVRCompositor_009_FnTable},
    {"IVRCompositor_010", destroy_winIVRCompositor_IVRCompositor_010},
    {"FnTable:IVRCompositor_010", destroy_winIVRCompositor_IVRCompositor_010_FnTable},
    {"IVRCompositor_011", destroy_winIVRCompositor_IVRCompositor_011},
    {"FnTable:IVRCompositor_011", destroy_winIVRCompositor_IVRCompositor_011_FnTable},
    {"IVRCompositor_012", destroy_winIVRCompositor_IVRCompositor_012},
    {"FnTable:IVRCompositor_012", destroy_winIVRCompositor_IVRCompositor_012_FnTable},
    {"IVRCompositor_013", destroy_winIVRCompositor_IVRCompositor_013},
    {"FnTable:IVRCompositor_013", destroy_winIVRCompositor_IVRCompositor_013_FnTable},
    {"IVRCompositor_014", destroy_winIVRCompositor_IVRCompositor_014},
    {"FnTable:IVRCompositor_014", destroy_winIVRCompositor_IVRCompositor_014_FnTable},
    {"IVRCompositor_015", destroy_winIVRCompositor_IVRCompositor_015},
    {"FnTable:IVRCompositor_015", destroy_winIVRCompositor_IVRCompositor_015_FnTable},
    {"IVRCompositor_016", destroy_winIVRCompositor_IVRCompositor_016},
    {"FnTable:IVRCompositor_016", destroy_winIVRCompositor_IVRCompositor_016_FnTable},
    {"IVRCompositor_017", destroy_winIVRCompositor_IVRCompositor_017},
    {"FnTable:IVRCompositor_017", destroy_winIVRCompositor_IVRCompositor_017_FnTable},
    {"IVRCompositor_018", destroy_winIVRCompositor_IVRCompositor_018},
    {"FnTable:IVRCompositor_018", destroy_winIVRCompositor_IVRCompositor_018_FnTable},
    {"IVRCompositor_019", destroy_winIVRCompositor_IVRCompositor_019},
    {"FnTable:IVRCompositor_019", destroy_winIVRCompositor_IVRCompositor_019_FnTable},
    {"IVRCompositor_020", destroy_winIVRCompositor_IVRCompositor_020},
    {"FnTable:IVRCompositor_020", destroy_winIVRCompositor_IVRCompositor_020_FnTable},
    {"IVRCompositor_021", destroy_winIVRCompositor_IVRCompositor_021},
    {"FnTable:IVRCompositor_021", destroy_winIVRCompositor_IVRCompositor_021_FnTable},
    {"IVRCompositor_022", destroy_winIVRCompositor_IVRCompositor_022},
    {"FnTable:IVRCompositor_022", destroy_winIVRCompositor_IVRCompositor_022_FnTable},
    {"IVRCompositor_024", destroy_winIVRCompositor_IVRCompositor_024},
    {"FnTable:IVRCompositor_024", destroy_winIVRCompositor_IVRCompositor_024_FnTable},
    {"IVRCompositor_026", destroy_winIVRCompositor_IVRCompositor_026},
    {"FnTable:IVRCompositor_026", destroy_winIVRCompositor_IVRCompositor_026_FnTable},
    {"IVRCompositor_027", destroy_winIVRCompositor_IVRCompositor_027},
    {"FnTable:IVRCompositor_027", destroy_winIVRCompositor_IVRCompositor_027_FnTable},
    {"IVRCompositor_028", destroy_winIVRCompositor_IVRCompositor_028},
    {"FnTable:IVRCompositor_028", destroy_winIVRCompositor_IVRCompositor_028_FnTable},
    {"IVRControlPanel_006", destroy_winIVRControlPanel_IVRControlPanel_006},
    {"FnTable:IVRControlPanel_006", destroy_winIVRControlPanel_IVRControlPanel_006_FnTable},
    {"IVRDriverManager_001", destroy_winIVRDriverManager_IVRDriverManager_001},
    {"FnTable:IVRDriverManager_001", destroy_winIVRDriverManager_IVRDriverManager_001_FnTable},
    {"IVRExtendedDisplay_001", destroy_winIVRExtendedDisplay_IVRExtendedDisplay_001},
    {"FnTable:IVRExtendedDisplay_001", destroy_winIVRExtendedDisplay_IVRExtendedDisplay_001_FnTable},
    {"IVRHeadsetView_001", destroy_winIVRHeadsetView_IVRHeadsetView_001},
    {"FnTable:IVRHeadsetView_001", destroy_winIVRHeadsetView_IVRHeadsetView_001_FnTable},
    {"IVRIOBuffer_001", destroy_winIVRIOBuffer_IVRIOBuffer_001},
    {"FnTable:IVRIOBuffer_001", destroy_winIVRIOBuffer_IVRIOBuffer_001_FnTable},
    {"IVRIOBuffer_002", destroy_winIVRIOBuffer_IVRIOBuffer_002},
    {"FnTable:IVRIOBuffer_002", destroy_winIVRIOBuffer_IVRIOBuffer_002_FnTable},
    {"IVRInput_003", destroy_winIVRInput_IVRInput_003},
    {"FnTable:IVRInput_003", destroy_winIVRInput_IVRInput_003_FnTable},
    {"IVRInput_004", destroy_winIVRInput_IVRInput_004},
    {"FnTable:IVRInput_004", destroy_winIVRInput_IVRInput_004_FnTable},
    {"IVRInput_005", destroy_winIVRInput_IVRInput_005},
    {"FnTable:IVRInput_005", destroy_winIVRInput_IVRInput_005_FnTable},
    {"IVRInput_006", destroy_winIVRInput_IVRInput_006},
    {"FnTable:IVRInput_006", destroy_winIVRInput_IVRInput_006_FnTable},
    {"IVRInput_007", destroy_winIVRInput_IVRInput_007},
    {"FnTable:IVRInput_007", destroy_winIVRInput_IVRInput_007_FnTable},
    {"IVRInput_010", destroy_winIVRInput_IVRInput_010},
    {"FnTable:IVRInput_010", destroy_winIVRInput_IVRInput_010_FnTable},
    {"IVRMailbox_001", destroy_winIVRMailbox_IVRMailbox_001},
    {"FnTable:IVRMailbox_001", destroy_winIVRMailbox_IVRMailbox_001_FnTable},
    {"IVRNotifications_001", destroy_winIVRNotifications_IVRNotifications_001},
    {"FnTable:IVRNotifications_001", destroy_winIVRNotifications_IVRNotifications_001_FnTable},
    {"IVRNotifications_002", destroy_winIVRNotifications_IVRNotifications_002},
    {"FnTable:IVRNotifications_002", destroy_winIVRNotifications_IVRNotifications_002_FnTable},
    {"IVROverlayView_003", destroy_winIVROverlayView_IVROverlayView_003},
    {"FnTable:IVROverlayView_003", destroy_winIVROverlayView_IVROverlayView_003_FnTable},
    {"IVROverlay_001", destroy_winIVROverlay_IVROverlay_001},
    {"FnTable:IVROverlay_001", destroy_winIVROverlay_IVROverlay_001_FnTable},
    {"IVROverlay_002", destroy_winIVROverlay_IVROverlay_002},
    {"FnTable:IVROverlay_002", destroy_winIVROverlay_IVROverlay_002_FnTable},
    {"IVROverlay_003", destroy_winIVROverlay_IVROverlay_003},
    {"FnTable:IVROverlay_003", destroy_winIVROverlay_IVROverlay_003_FnTable},
    {"IVROverlay_004", destroy_winIVROverlay_IVROverlay_004},
    {"FnTable:IVROverlay_004", destroy_winIVROverlay_IVROverlay_004_FnTable},
    {"IVROverlay_005", destroy_winIVROverlay_IVROverlay_005},
    {"FnTable:IVROverlay_005", destroy_winIVROverlay_IVROverlay_005_FnTable},
    {"IVROverlay_007", destroy_winIVROverlay_IVROverlay_007},
    {"FnTable:IVROverlay_007", destroy_winIVROverlay_IVROverlay_007_FnTable},
    {"IVROverlay_008", destroy_winIVROverlay_IVROverlay_008},
    {"FnTable:IVROverlay_008", destroy_winIVROverlay_IVROverlay_008_FnTable},
    {"IVROverlay_010", destroy_winIVROverlay_IVROverlay_010},
    {"FnTable:IVROverlay_010", destroy_winIVROverlay_IVROverlay_010_FnTable},
    {"IVROverlay_011", destroy_winIVROverlay_IVROverlay_011},
    {"FnTable:IVROverlay_011", destroy_winIVROverlay_IVROverlay_011_FnTable},
    {"IVROverlay_012", destroy_winIVROverlay_IVROverlay_012},
    {"FnTable:IVROverlay_012", destroy_winIVROverlay_IVROverlay_012_FnTable},
    {"IVROverlay_013", destroy_winIVROverlay_IVROverlay_013},
    {"FnTable:IVROverlay_013", destroy_winIVROverlay_IVROverlay_013_FnTable},
    {"IVROverlay_014", destroy_winIVROverlay_IVROverlay_014},
    {"FnTable:IVROverlay_014", destroy_winIVROverlay_IVROverlay_014_FnTable},
    {"IVROverlay_016", destroy_winIVROverlay_IVROverlay_016},
    {"FnTable:IVROverlay_016", destroy_winIVROverlay_IVROverlay_016_FnTable},
    {"IVROverlay_017", destroy_winIVROverlay_IVROverlay_017},
    {"FnTable:IVROverlay_017", destroy_winIVROverlay_IVROverlay_017_FnTable},
    {"IVROverlay_018", destroy_winIVROverlay_IVROverlay_018},
    {"FnTable:IVROverlay_018", destroy_winIVROverlay_IVROverlay_018_FnTable},
    {"IVROverlay_019", destroy_winIVROverlay_IVROverlay_019},
    {"FnTable:IVROverlay_019", destroy_winIVROverlay_IVROverlay_019_FnTable},
    {"IVROverlay_020", destroy_winIVROverlay_IVROverlay_020},
    {"FnTable:IVROverlay_020", destroy_winIVROverlay_IVROverlay_020_FnTable},
    {"IVROverlay_021", destroy_winIVROverlay_IVROverlay_021},
    {"FnTable:IVROverlay_021", destroy_winIVROverlay_IVROverlay_021_FnTable},
    {"IVROverlay_022", destroy_winIVROverlay_IVROverlay_022},
    {"FnTable:IVROverlay_022", destroy_winIVROverlay_IVROverlay_022_FnTable},
    {"IVROverlay_024", destroy_winIVROverlay_IVROverlay_024},
    {"FnTable:IVROverlay_024", destroy_winIVROverlay_IVROverlay_024_FnTable},
    {"IVROverlay_025", destroy_winIVROverlay_IVROverlay_025},
    {"FnTable:IVROverlay_025", destroy_winIVROverlay_IVROverlay_025_FnTable},
    {"IVROverlay_026", destroy_winIVROverlay_IVROverlay_026},
    {"FnTable:IVROverlay_026", destroy_winIVROverlay_IVROverlay_026_FnTable},
    {"IVROverlay_027", destroy_winIVROverlay_IVROverlay_027},
    {"FnTable:IVROverlay_027", destroy_winIVROverlay_IVROverlay_027_FnTable},
    {"IVRRenderModels_001", destroy_winIVRRenderModels_IVRRenderModels_001},
    {"FnTable:IVRRenderModels_001", destroy_winIVRRenderModels_IVRRenderModels_001_FnTable},
    {"IVRRenderModels_002", destroy_winIVRRenderModels_IVRRenderModels_002},
    {"FnTable:IVRRenderModels_002", destroy_winIVRRenderModels_IVRRenderModels_002_FnTable},
    {"IVRRenderModels_004", destroy_winIVRRenderModels_IVRRenderModels_004},
    {"FnTable:IVRRenderModels_004", destroy_winIVRRenderModels_IVRRenderModels_004_FnTable},
    {"IVRRenderModels_005", destroy_winIVRRenderModels_IVRRenderModels_005},
    {"FnTable:IVRRenderModels_005", destroy_winIVRRenderModels_IVRRenderModels_005_FnTable},
    {"IVRRenderModels_006", destroy_winIVRRenderModels_IVRRenderModels_006},
    {"FnTable:IVRRenderModels_006", destroy_winIVRRenderModels_IVRRenderModels_006_FnTable},
    {"IVRResources_001", destroy_winIVRResources_IVRResources_001},
    {"FnTable:IVRResources_001", destroy_winIVRResources_IVRResources_001_FnTable},
    {"IVRScreenshots_001", destroy_winIVRScreenshots_IVRScreenshots_001},
    {"FnTable:IVRScreenshots_001", destroy_winIVRScreenshots_IVRScreenshots_001_FnTable},
    {"IVRSettings_001", destroy_winIVRSettings_IVRSettings_001},
    {"FnTable:IVRSettings_001", destroy_winIVRSettings_IVRSettings_001_FnTable},
    {"IVRSettings_002", destroy_winIVRSettings_IVRSettings_002},
    {"FnTable:IVRSettings_002", destroy_winIVRSettings_IVRSettings_002_FnTable},
    {"IVRSettings_003", destroy_winIVRSettings_IVRSettings_003},
    {"FnTable:IVRSettings_003", destroy_winIVRSettings_IVRSettings_003_FnTable},
    {"IVRSystem_003", destroy_winIVRSystem_IVRSystem_003},
    {"FnTable:IVRSystem_003", destroy_winIVRSystem_IVRSystem_003_FnTable},
    {"IVRSystem_004", destroy_winIVRSystem_IVRSystem_004},
    {"FnTable:IVRSystem_004", destroy_winIVRSystem_IVRSystem_004_FnTable},
    {"IVRSystem_005", destroy_winIVRSystem_IVRSystem_005},
    {"FnTable:IVRSystem_005", destroy_winIVRSystem_IVRSystem_005_FnTable},
    {"IVRSystem_006", destroy_winIVRSystem_IVRSystem_006},
    {"FnTable:IVRSystem_006", destroy_winIVRSystem_IVRSystem_006_FnTable},
    {"IVRSystem_009", destroy_winIVRSystem_IVRSystem_009},
    {"FnTable:IVRSystem_009", destroy_winIVRSystem_IVRSystem_009_FnTable},
    {"IVRSystem_010", destroy_winIVRSystem_IVRSystem_010},
    {"FnTable:IVRSystem_010", destroy_winIVRSystem_IVRSystem_010_FnTable},
    {"IVRSystem_011", destroy_winIVRSystem_IVRSystem_011},
    {"FnTable:IVRSystem_011", destroy_winIVRSystem_IVRSystem_011_FnTable},
    {"IVRSystem_012", destroy_winIVRSystem_IVRSystem_012},
    {"FnTable:IVRSystem_012", destroy_winIVRSystem_IVRSystem_012_FnTable},
    {"IVRSystem_014", destroy_winIVRSystem_IVRSystem_014},
    {"FnTable:IVRSystem_014", destroy_winIVRSystem_IVRSystem_014_FnTable},
    {"IVRSystem_015", destroy_winIVRSystem_IVRSystem_015},
    {"FnTable:IVRSystem_015", destroy_winIVRSystem_IVRSystem_015_FnTable},
    {"IVRSystem_016", destroy_winIVRSystem_IVRSystem_016},
    {"FnTable:IVRSystem_016", destroy_winIVRSystem_IVRSystem_016_FnTable},
    {"IVRSystem_017", destroy_winIVRSystem_IVRSystem_017},
    {"FnTable:IVRSystem_017", destroy_winIVRSystem_IVRSystem_017_FnTable},
    {"IVRSystem_019", destroy_winIVRSystem_IVRSystem_019},
    {"FnTable:IVRSystem_019", destroy_winIVRSystem_IVRSystem_019_FnTable},
    {"IVRSystem_020", destroy_winIVRSystem_IVRSystem_020},
    {"FnTable:IVRSystem_020", destroy_winIVRSystem_IVRSystem_020_FnTable},
    {"IVRSystem_021", destroy_winIVRSystem_IVRSystem_021},
    {"FnTable:IVRSystem_021", destroy_winIVRSystem_IVRSystem_021_FnTable},
    {"IVRSystem_022", destroy_winIVRSystem_IVRSystem_022},
    {"FnTable:IVRSystem_022", destroy_winIVRSystem_IVRSystem_022_FnTable},
    {"IVRTrackedCamera_001", destroy_winIVRTrackedCamera_IVRTrackedCamera_001},
    {"FnTable:IVRTrackedCamera_001", destroy_winIVRTrackedCamera_IVRTrackedCamera_001_FnTable},
    {"IVRTrackedCamera_002", destroy_winIVRTrackedCamera_IVRTrackedCamera_002},
    {"FnTable:IVRTrackedCamera_002", destroy_winIVRTrackedCamera_IVRTrackedCamera_002_FnTable},
    {"IVRTrackedCamera_003", destroy_winIVRTrackedCamera_IVRTrackedCamera_003},
    {"FnTable:IVRTrackedCamera_003", destroy_winIVRTrackedCamera_IVRTrackedCamera_003_FnTable},
    {"IVRTrackedCamera_004", destroy_winIVRTrackedCamera_IVRTrackedCamera_004},
    {"FnTable:IVRTrackedCamera_004", destroy_winIVRTrackedCamera_IVRTrackedCamera_004_FnTable},
    {"IVRTrackedCamera_005", destroy_winIVRTrackedCamera_IVRTrackedCamera_005},
    {"FnTable:IVRTrackedCamera_005", destroy_winIVRTrackedCamera_IVRTrackedCamera_005_FnTable},
    {"IVRTrackedCamera_006", destroy_winIVRTrackedCamera_IVRTrackedCamera_006},
    {"FnTable:IVRTrackedCamera_006", destroy_winIVRTrackedCamera_IVRTrackedCamera_006_FnTable},
};

iface_destructor find_iface_destructor( const char *iface_version )
{
    int i;
    for (i = 0; i < ARRAYSIZE(destructors); ++i)
        if (!strcmp( iface_version, destructors[i].iface_version ))
            return destructors[i].dtor;
    return NULL;
}

extern void init_winIVRApplications_rtti( char * );
extern void init_winIVRChaperone_rtti( char * );
extern void init_winIVRChaperoneSetup_rtti( char * );
extern void init_winIVRClientCore_rtti( char * );
extern void init_winIVRCompositor_rtti( char * );
extern void init_winIVRControlPanel_rtti( char * );
extern void init_winIVRDriverManager_rtti( char * );
extern void init_winIVRExtendedDisplay_rtti( char * );
extern void init_winIVRHeadsetView_rtti( char * );
extern void init_winIVRIOBuffer_rtti( char * );
extern void init_winIVRInput_rtti( char * );
extern void init_winIVRMailbox_rtti( char * );
extern void init_winIVRNotifications_rtti( char * );
extern void init_winIVROverlay_rtti( char * );
extern void init_winIVROverlayView_rtti( char * );
extern void init_winIVRRenderModels_rtti( char * );
extern void init_winIVRResources_rtti( char * );
extern void init_winIVRScreenshots_rtti( char * );
extern void init_winIVRSettings_rtti( char * );
extern void init_winIVRSystem_rtti( char * );
extern void init_winIVRTrackedCamera_rtti( char * );

void init_rtti( char *base )
{
    init_winIVRApplications_rtti( base );
    init_winIVRChaperone_rtti( base );
    init_winIVRChaperoneSetup_rtti( base );
    init_winIVRClientCore_rtti( base );
    init_winIVRCompositor_rtti( base );
    init_winIVRControlPanel_rtti( base );
    init_winIVRDriverManager_rtti( base );
    init_winIVRExtendedDisplay_rtti( base );
    init_winIVRHeadsetView_rtti( base );
    init_winIVRIOBuffer_rtti( base );
    init_winIVRInput_rtti( base );
    init_winIVRMailbox_rtti( base );
    init_winIVRNotifications_rtti( base );
    init_winIVROverlay_rtti( base );
    init_winIVROverlayView_rtti( base );
    init_winIVRRenderModels_rtti( base );
    init_winIVRResources_rtti( base );
    init_winIVRScreenshots_rtti( base );
    init_winIVRSettings_rtti( base );
    init_winIVRSystem_rtti( base );
    init_winIVRTrackedCamera_rtti( base );
}
