pub struct IDirect3DSurface9Vtbl {
    pub parent: IDirect3DResource9Vtbl,
    pub GetContainer: unsafe extern "system" fn(This: *mut IDirect3DSurface9, riid: *const IID, ppContainer: *mut *mut VOID) -> HRESULT,
    pub GetDesc: unsafe extern "system" fn(This: *mut IDirect3DSurface9, pDesc: *mut D3DSURFACE_DESC) -> HRESULT,
    pub LockRect: unsafe extern "system" fn(This: *mut IDirect3DSurface9, pLockedRect: *mut D3DLOCKED_RECT, pRect: *const RECT, Flags: DWORD) -> HRESULT,
    pub UnlockRect: unsafe extern "system" fn(This: *mut IDirect3DSurface9) -> HRESULT,
    pub GetDC: unsafe extern "system" fn(This: *mut IDirect3DSurface9, phdc: *mut HDC) -> HRESULT,
    pub ReleaseDC: unsafe extern "system" fn(This: *mut IDirect3DSurface9, hdc: HDC) -> HRESULT,
}Fields
                             parent |  | 
                             GetContainer |  | 
                             GetDesc |  | 
                             LockRect |  | 
                             UnlockRect |  | 
                             GetDC |  | 
                             ReleaseDC |  |