PEXGetEnumTypeInfo(3) — Subroutines
Name
PEXGetEnumTypeInfo - Get Enumerated Type Information
Synopsis
Status PEXGetEnumTypeInfo(Display ∗display, Drawable drawable, unsigned long count, int ∗enum_types, unsigned long item_mask, unsigned long ∗∗info_count_return, PEXEnumTypeDesc ∗∗enum_info_return)
Arguments
displayA pointer to a display structure returned by a successful XOpenDisplay call.
drawableThe resource identifier of a drawable.
countThe number of enumerated types.
enum_typesA list of enumerated types for which information is to be returned. (See the Description for valid values.)
item_maskA mask indicating the data to be returned for each enumerated type. (See the Description for valid values.)
info_count_return
Returns an array of counts. For each enumerated type, there is an entry specifying the number of descriptors in the return value array.
enum_info_return
Returns an array of enumerated type descriptors containing the enumerated type information.
Returns
Zero if unsuccessful; non-zero otherwise.
Description
PEXGetEnumTypeInfo allows the application to inquire the supported values for each enumerated type. It returns a descriptor for each supported value of each specified enumerated type requested. These values will be valid for all drawables having the same root window and depth as the specified drawable.
The standard PEX enumerated types are:
PEXETATextStyle
PEXETColorApproxModel
PEXETColorApproxType
PEXETColorType
PEXETCurveApproxMethod
PEXETDisplayUpdateMode
PEXETEscape
PEXETFloatFormat
PEXETGDP2D
PEXETGDP
PEXETGSE
PEXETHatchStyle
PEXETHLHSRMode
PEXETInteriorStyle
PEXETLightType
PEXETLineType
PEXETMarkerType
PEXETModelClipOperator
PEXETParaSurfCharacteristics
PEXETPickAllMethod
PEXETPickDeviceType
PEXETPickOneMethod
PEXETPolylineInterpMethod
PEXETPromptEchoType
PEXETReflectionModel
PEXETRenderingColorModel
PEXETSurfaceApproxMethod
PEXETSurfaceEdgeType
PEXETSurfaceInterpMethod
PEXETTrimCurveApproxMethod
Enumerated type descriptors are made up of an index field and a mnemonic field. The index field contains the numeric value of the supported type, and the mnemonic field contains a string describing the type.
The item mask specifies which of the fields is returned in each enumerated type descriptor. Defined values for the item mask are PEXETCounts, PEXETIndex, PEXETMnemonic and PEXETAll. If the item mask is PEXETCounts, no descriptor values are returned; only the counts will be returned. If the item mask is PEXETIndex, the supported index values are returned in addition to the counts. If the item mask is PEXETMnemonic, the mnemonic strings describing the supported values are returned in addition to the counts. If the item mask is PEXETAll, both the supported index values and the mnemonic strings are returned in addition to the counts.
PEXlib allocates memory for the returned array of counts and for the return value array of enumerated type descriptors. PEXFreeEnumInfo should be called to deallocate this memory.
The following are the standard enumerated type index, mnemonic pairs which may be returned.
PEXETATextStyle
PEXATextNotConnected, PEXETMATextNotConnected
PEXATextConnected, PEXETMATextConnected
PEXETColorApproxModel
PEXColorApproxRGB, PEXETMColorApproxRGB
PEXColorApproxCIE, PEXETMColorApproxCIE
PEXColorApproxHSV, PEXETMColorApproxHSV
PEXColorApproxHLS, PEXETMColorApproxHLS
PEXColorApproxYIQ, PEXETMColorApproxYIQ
PEXETColorApproxType
PEXColorSpace, PEXETMColorSpace
PEXColorRange, PEXETMColorRange
PEXETColorType
PEXColorTypeIndexed, PEXETMColorTypeIndexed
PEXColorTypeRGB, PEXETMColorTypeRGB
PEXColorTypeCIE, PEXETMColorTypeCIE
PEXColorTypeHSV, PEXETMColorTypeHSV
PEXColorTypeHLS, PEXETMColorTypeHLS
PEXColorTypeRGB8, PEXETMColorTypeRGB8
PEXColorTypeRGB16, PEXETMColorTypeRGB16
PEXETCurveApproxMethod
PEXApproxImpDep, implementation-dependent string
PEXApproxConstantBetweenKnots, PEXETMApproxConstantBetweenKnots
PEXApproxWCChordalSize, PEXETMApproxWCChordalSize
PEXApproxNPCChordalSize, PEXETMApproxNPCChordalSize
PEXApproxDCChordalSize, PEXETMApproxDCChordalSize
PEXCurveApproxWCChordalDev, PEXETMCurveApproxWCChordalDev
PEXCurveApproxNPCChordalDev, PEXETMCurveApproxNPCChordalDev
PEXCurveApproxDCChordalDev, PEXETMCurveApproxDCChordalDev
PEXApproxWCRelative, PEXETMApproxWCRelative
PEXApproxNPCRelative, PEXETMApproxNPCRelative
PEXApproxDCRelative, PEXETMApproxDCRelative
PEXETDisplayUpdateMode
PEXVisualizeEach, PEXETMVisualizeEach
PEXVisualizeEasy, PEXETMVisualizeEasy
PEXVisualizeNone, PEXETMVisualizeNone
PEXSimulateSome, PEXETMSimulateSome
PEXVisualizeWhenever, PEXETMVisualizeWhenever
PEXETEscape
PEXEscapeSetEchoColor PEXETMEscapeSetEchoColor
PEXETFloatFormat
PEXIEEE_754_32, PEXETMIEEE_754_32
PEXDEC_F_Floating, PEXETMDEC_F_Floating
PEXIEEE_754_64, PEXETMIEEE_754_64
PEXDEC_D_Floating, PEXETMDEC_D_Floating
PEXETGDP2D
There are currently no standard 2D generalized drawing primitives.
PEXETGDP
There are currently no standard 3D generalized drawing primitives.
PEXETGSE
There are currently no standard generalized structure elements.
PEXETHatchStyle
There are currently no standard hatch styles.
PEXETHLHSRMode
PEXHLHSROff, PEXETMHLHSROff
PEXHLHSRZBuffer, PEXETMHLHSRZBuffer
PEXHLHSRPainters, PEXETMHLHSRPainters
PEXHLHSRScanline, PEXETMHLHSRScanline
PEXHLHSRHiddenLineOnly, PEXETMHLHSRHiddenLineOnly
PEXHLHSRZBufferID, PEXETMHLHSRZBufferID
PEXETInteriorStyle
PEXInteriorStyleHollow, PEXETMInteriorStyleHollow
PEXInteriorStyleSolid, PEXETMInteriorStyleSolid
PEXInteriorStylePattern, PEXETMInteriorStylePattern
PEXInteriorStyleHatch, PEXETMInteriorStyleHatch
PEXInteriorStyleEmpty, PEXETMInteriorStyleEmpty
PEXETLightType
PEXLightAmbient, PEXETMLightAmbient
PEXLightWCVector, PEXETMLightWCVector
PEXLightWCPoint, PEXETMLightWCPoint
PEXLightWCSpot, PEXETMLightWCSpot
PEXETLineType
PEXLineTypeSolid, PEXETMLineTypeSolid
PEXLineTypeDashed, PEXETMLineTypeDashed
PEXLineTypeDotted, PEXETMLineTypeDotted
PEXLineTypeDashDot, PEXETMLineTypeDashDot
PEXETMarkerType
PEXMarkerDot, PEXETMMarkerDot
PEXMarkerCross, PEXETMMarkerCross
PEXMarkerAsterisk, PEXETMMarkerAsterisk
PEXMarkerCircle, PEXETMMarkerCircle
PEXMarkerX, PEXETMMarkerX
PEXETModelClipOperator
PEXModelClipReplace, PEXETMModelClipReplace
PEXModelClipIntersection, PEXETMModelClipIntersection
PEXETParaSurfCharacteristics
PEXPSCNone, PEXETMPSCNone
PEXPSCImpDep, implementation-dependent string
PEXPSCIsoCurves, PEXETMPSCIsoCurves
PEXPSCMCLevelCurves, PEXETMPSCMCLevelCurves
PEXPSCWCLevelCurves, PEXETMPSCWCLevelCurves
PEXETPickAllMethod
PEXPickAllAll, PEXETMPickAllAll
PEXPickAllVisible, PEXETMPickAllVisible
PEXETPickDeviceType
PEXPickDeviceDCHitBox, PEXETMPickDeviceDCHitBox
PEXPickDeviceNPCHitVolume, PEXETMPickDeviceNPCHitVolume
PEXETPickOneMethod
PEXPickLast, PEXETMPickLast
PEXPickClosestZ, PEXETMPickClosestZ
PEXPickVisibleAny, PEXETMPickVisibleAny
PEXPickVisibleClosest, PEXETMPickVisibleClosest
PEXETPolylineInterpMethod
PEXPolylineInterpNone, PEXETMPolylineInterpNone
PEXPolylineInterpColor, PEXETMPolylineInterpColor
PEXETPromptEchoType
PEXEchoPrimitive, PEXETMEchoPrimitive
PEXEchoStructure, PEXETMEchoStructure
PEXEchoNetwork, PEXETMEchoNetwork
PEXETReflectionModel
PEXReflectionNone, PEXETMReflectionNone
PEXReflectionAmbient, PEXETMReflectionAmbient
PEXReflectionDiffuse, PEXETMReflectionDiffuse
PEXReflectionSpecular, PEXETMReflectionSpecular
PEXETRenderingColorModel
PEXRenderingColorModelImpDep, implementation-dependent string
PEXRenderingColorModelRGB, PEXETMRenderingColorModelRGB
PEXRenderingColorModelCIE, PEXETMRenderingColorModelCIE
PEXRenderingColorModelHSV, PEXETMRenderingColorModelHSV
PEXRenderingColorModelHLS, PEXETMRenderingColorModelHLS
PEXETSurfaceApproxMethod
PEXApproxImpDep, implementation-dependent string
PEXApproxConstantBetweenKnots, PEXETMApproxConstantBetweenKnots
PEXApproxWCChordalSize, PEXETMApproxWCChordalSize
PEXApproxNPCChordalSize, PEXETMApproxNPCChordalSize
PEXApproxDCChordalSize, PEXETMApproxDCChordalSize
PEXSurfaceApproxWCPlanarDev, PEXETMSurfaceApproxWCPlanarDev
PEXSurfaceApproxNPCPlanarDev, PEXETMSurfaceApproxNPCPlanarDev
PEXSurfaceApproxDCPlanarDev, PEXETMSurfaceApproxDCPlanarDev
PEXApproxWCRelative, PEXETMApproxWCRelative
PEXApproxNPCRelative, PEXETMApproxNPCRelative
PEXApproxDCRelative, PEXETMApproxDCRelative
PEXETSurfaceEdgeType
PEXSurfaceEdgeSolid, PEXETMSurfaceEdgeSolid
PEXSurfaceEdgeDashed, PEXETMSurfaceEdgeDashed
PEXSurfaceEdgeDotted, PEXETMSurfaceEdgeDotted
PEXSurfaceEdgeDashDot, PEXETMSurfaceEdgeDashDot
PEXETSurfaceInterpMethod
PEXSurfaceInterpNone, PEXETMSurfaceInterpNone
PEXSurfaceInterpColor, PEXETMSurfaceInterpColor
PEXSurfaceInterpDotProduct, PEXETMSurfaceInterpDotProduct
PEXSurfaceInterpNormal, PEXETMSurfaceInterpNormal
PEXETTrimCurveApproxMethod
PEXApproxImpDep, implementation-dependent string
PEXApproxConstantBetweenKnots, PEXETMApproxConstantBetweenKnots
Data Structures
typedef struct {
PEXEnumTypeIndex index;
char ∗descriptor;
} PEXEnumTypeDesc;
Errors
BadDrawableThe specified drawable resource identifier is invalid.
BadMatchThe specified drawable is unsupported.
BadValueA specified enumerated type is invalid.
See Also
PEXFreeEnumInfo