/*=========================================================================*\ Copyright (c) Microsoft Corporation. All rights reserved. \*=========================================================================*/ #pragma once /*=========================================================================*\ D2D Status Codes \*=========================================================================*/ #define FACILITY_D2D 0x899 #define MAKE_D2DHR( sev, code )\ MAKE_HRESULT( sev, FACILITY_D2D, (code) ) #define MAKE_D2DHR_ERR( code )\ MAKE_D2DHR( 1, code ) //+---------------------------------------------------------------------------- // // D2D error codes // //------------------------------------------------------------------------------ // // Error codes shared with WINCODECS // // // The pixel format is not supported. // #define D2DERR_UNSUPPORTED_PIXEL_FORMAT WINCODEC_ERR_UNSUPPORTEDPIXELFORMAT // // Error codes that were already returned in prior versions and were part of the // MIL facility. // // Error codes mapped from WIN32 where there isn't already another HRESULT based // define // // // The supplied buffer was too small to accomodate the data. // #define D2DERR_INSUFFICIENT_BUFFER HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) // // D2D specific codes // // // The object was not in the correct state to process the method. // #define D2DERR_WRONG_STATE MAKE_D2DHR_ERR(0x001) // // The object has not yet been initialized. // #define D2DERR_NOT_INITIALIZED MAKE_D2DHR_ERR(0x002) // // The requested opertion is not supported. // #define D2DERR_UNSUPPORTED_OPERATION MAKE_D2DHR_ERR(0x003) // // The geomery scanner failed to process the data. // #define D2DERR_SCANNER_FAILED MAKE_D2DHR_ERR(0x004) // // D2D could not access the screen. // #define D2DERR_SCREEN_ACCESS_DENIED MAKE_D2DHR_ERR(0x005) // // A valid display state could not be determined. // #define D2DERR_DISPLAY_STATE_INVALID MAKE_D2DHR_ERR(0x006) // // The supplied vector is vero. // #define D2DERR_ZERO_VECTOR MAKE_D2DHR_ERR(0x007) // // An internal error (D2D bug) occurred. On checked builds, we would assert. // // The application should close this instance of D2D and should consider // restarting its process. // #define D2DERR_INTERNAL_ERROR MAKE_D2DHR_ERR(0x008) // // The display format we need to render is not supported by the // hardware device. // #define D2DERR_DISPLAY_FORMAT_NOT_SUPPORTED MAKE_D2DHR_ERR(0x009) // // A call to this method is invalid. // #define D2DERR_INVALID_CALL MAKE_D2DHR_ERR(0x00A) // // No HW rendering device is available for this operation. // #define D2DERR_NO_HARDWARE_DEVICE MAKE_D2DHR_ERR(0x00B) // // There has been a presentation error that may be recoverable. The caller // needs to recreate, rerender the entire frame, and reattempt present. // #define D2DERR_RECREATE_TARGET MAKE_D2DHR_ERR(0x00C) // // Shader construction failed because it was too complex. // #define D2DERR_TOO_MANY_SHADER_ELEMENTS MAKE_D2DHR_ERR(0x00D) // // Shader compilation failed. // #define D2DERR_SHADER_COMPILE_FAILED MAKE_D2DHR_ERR(0x00E) // // Requested DX surface size exceeded maximum texture size. // #define D2DERR_MAX_TEXTURE_SIZE_EXCEEDED MAKE_D2DHR_ERR(0x00F) // // The requested D2D version is not supported. // #define D2DERR_UNSUPPORTED_VERSION MAKE_D2DHR_ERR(0x010) // // Invalid number. // #define D2DERR_BAD_NUMBER MAKE_D2DHR_ERR(0x0011) // // Objects used together must be created from the same factory instance. // #define D2DERR_WRONG_FACTORY MAKE_D2DHR_ERR(0x012) // // A layer resource can only be in use once at any point in time. // #define D2DERR_LAYER_ALREADY_IN_USE MAKE_D2DHR_ERR(0x013) // // The pop call did not match the corresponding push call // #define D2DERR_POP_CALL_DID_NOT_MATCH_PUSH MAKE_D2DHR_ERR(0x014) // // The resource was realized on the wrong render target // #define D2DERR_WRONG_RESOURCE_DOMAIN MAKE_D2DHR_ERR(0x015) // // The push and pop calls were unbalanced // #define D2DERR_PUSH_POP_UNBALANCED MAKE_D2DHR_ERR(0x016) // // Attempt to copy from a render target while a layer or clip rect is applied // #define D2DERR_RENDER_TARGET_HAS_LAYER_OR_CLIPRECT MAKE_D2DHR_ERR(0x017) // // The brush types are incompatible for the call. // #define D2DERR_INCOMPATIBLE_BRUSH_TYPES MAKE_D2DHR_ERR(0x018) // // An unknown win32 failure occurred. // #define D2DERR_WIN32_ERROR MAKE_D2DHR_ERR(0x019) // // The render target is not compatible with GDI // #define D2DERR_TARGET_NOT_GDI_COMPATIBLE MAKE_D2DHR_ERR(0x01A) // // A text client drawing effect object is of the wrong type // #define D2DERR_TEXT_EFFECT_IS_WRONG_TYPE MAKE_D2DHR_ERR(0x01B) // // The application is holding a reference to the IDWriteTextRenderer interface // after the corresponding DrawText or DrawTextLayout call has returned. The // IDWriteTextRenderer instance will be zombied. // #define D2DERR_TEXT_RENDERER_NOT_RELEASED MAKE_D2DHR_ERR(0x01C) // // The requested size is larger than the guaranteed supported texture size. // #define D2DERR_EXCEEDS_MAX_BITMAP_SIZE MAKE_D2DHR_ERR(0x01D)