# WARNING: Please don't edit this file. It was generated by Python/WinRT v1.0.0-beta.10

import enum

import winsdk.system

_ns_module = winsdk.system._import_ns_module("Windows.Graphics.Printing3D")

try:
    import winsdk.windows.foundation
except ImportError:
    pass

try:
    import winsdk.windows.foundation.collections
except ImportError:
    pass

try:
    import winsdk.windows.foundation.numerics
except ImportError:
    pass

try:
    import winsdk.windows.storage.streams
except ImportError:
    pass

try:
    import winsdk.windows.ui
except ImportError:
    pass

class Print3DTaskCompletion(enum.IntEnum):
    ABANDONED = 0
    CANCELED = 1
    FAILED = 2
    SLICING = 3
    SUBMITTED = 4

class Print3DTaskDetail(enum.IntEnum):
    UNKNOWN = 0
    MODEL_EXCEEDS_PRINT_BED = 1
    UPLOAD_FAILED = 2
    INVALID_MATERIAL_SELECTION = 3
    INVALID_MODEL = 4
    MODEL_NOT_MANIFOLD = 5
    INVALID_PRINT_TICKET = 6

class Printing3DBufferFormat(enum.IntEnum):
    UNKNOWN = 0
    R32_G32_B32_A32_FLOAT = 2
    R32_G32_B32_A32_UINT = 3
    R32_G32_B32_FLOAT = 6
    R32_G32_B32_UINT = 7
    PRINTING3_D_DOUBLE = 500
    PRINTING3_D_UINT = 501

class Printing3DMeshVerificationMode(enum.IntEnum):
    FIND_FIRST_ERROR = 0
    FIND_ALL_ERRORS = 1

class Printing3DModelUnit(enum.IntEnum):
    METER = 0
    MICRON = 1
    MILLIMETER = 2
    CENTIMETER = 3
    INCH = 4
    FOOT = 5

class Printing3DObjectType(enum.IntEnum):
    MODEL = 0
    SUPPORT = 1
    OTHERS = 2

class Printing3DPackageCompression(enum.IntEnum):
    LOW = 0
    MEDIUM = 1
    HIGH = 2

class Printing3DTextureEdgeBehavior(enum.IntEnum):
    NONE = 0
    WRAP = 1
    MIRROR = 2
    CLAMP = 3

_ns_module._register_Print3DTaskCompletion(Print3DTaskCompletion)
_ns_module._register_Print3DTaskDetail(Print3DTaskDetail)
_ns_module._register_Printing3DBufferFormat(Printing3DBufferFormat)
_ns_module._register_Printing3DMeshVerificationMode(Printing3DMeshVerificationMode)
_ns_module._register_Printing3DModelUnit(Printing3DModelUnit)
_ns_module._register_Printing3DObjectType(Printing3DObjectType)
_ns_module._register_Printing3DPackageCompression(Printing3DPackageCompression)
_ns_module._register_Printing3DTextureEdgeBehavior(Printing3DTextureEdgeBehavior)

Printing3DBufferDescription = _ns_module.Printing3DBufferDescription
Print3DManager = _ns_module.Print3DManager
Print3DTask = _ns_module.Print3DTask
Print3DTaskCompletedEventArgs = _ns_module.Print3DTaskCompletedEventArgs
Print3DTaskRequest = _ns_module.Print3DTaskRequest
Print3DTaskRequestedEventArgs = _ns_module.Print3DTaskRequestedEventArgs
Print3DTaskSourceChangedEventArgs = _ns_module.Print3DTaskSourceChangedEventArgs
Print3DTaskSourceRequestedArgs = _ns_module.Print3DTaskSourceRequestedArgs
Printing3D3MFPackage = _ns_module.Printing3D3MFPackage
Printing3DBaseMaterial = _ns_module.Printing3DBaseMaterial
Printing3DBaseMaterialGroup = _ns_module.Printing3DBaseMaterialGroup
Printing3DColorMaterial = _ns_module.Printing3DColorMaterial
Printing3DColorMaterialGroup = _ns_module.Printing3DColorMaterialGroup
Printing3DComponent = _ns_module.Printing3DComponent
Printing3DComponentWithMatrix = _ns_module.Printing3DComponentWithMatrix
Printing3DCompositeMaterial = _ns_module.Printing3DCompositeMaterial
Printing3DCompositeMaterialGroup = _ns_module.Printing3DCompositeMaterialGroup
Printing3DFaceReductionOptions = _ns_module.Printing3DFaceReductionOptions
Printing3DMaterial = _ns_module.Printing3DMaterial
Printing3DMesh = _ns_module.Printing3DMesh
Printing3DMeshVerificationResult = _ns_module.Printing3DMeshVerificationResult
Printing3DModel = _ns_module.Printing3DModel
Printing3DModelTexture = _ns_module.Printing3DModelTexture
Printing3DMultiplePropertyMaterial = _ns_module.Printing3DMultiplePropertyMaterial
Printing3DMultiplePropertyMaterialGroup = _ns_module.Printing3DMultiplePropertyMaterialGroup
Printing3DTexture2CoordMaterial = _ns_module.Printing3DTexture2CoordMaterial
Printing3DTexture2CoordMaterialGroup = _ns_module.Printing3DTexture2CoordMaterialGroup
Printing3DTextureResource = _ns_module.Printing3DTextureResource
