#ifndef __cxPick_API_H_ #define __cxPick_API_H_ #ifdef __cplusplus "C" { #endif #include <stdio.h> #if defined(__sun) || defined(WIN32) cxPick* cxPickAlloc( signed int NumObjectHits ); cxPick* cxPickCopy( cxPick *src ); cxPick* cxPickDup( cxPick *src ); signed long cxPickEventDataGet( cxPick *src, cxErrorCode *ec ); void cxPickEventDataSet( cxPick *src, signed long val, cxErrorCode *ec ); signed int cxPickEventTypeGet( cxPick *src, cxErrorCode *ec ); void cxPickEventTypeSet( cxPick *src, signed int val, cxErrorCode *ec ); float* cxPickHitColorGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitColorLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitColorRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitColorSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitConePartGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitConePartSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitCylinderPartGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitCylinderPartSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); signed long* cxPickHitFaceIndicesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitFaceIndicesLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFaceIndicesRem( cxPick *src, signed long* *val, cxErrorCode *ec ); void cxPickHitFaceIndicesSet( cxPick *src, signed long* val, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitFaceNormalsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitFaceNormalsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFaceNormalsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitFaceNormalsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitFaceNumVerticesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFaceNumVerticesSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitFacePointsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitFacePointsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFacePointsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitFacePointsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitFlagsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFlagsSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitGlobalTransformGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitGlobalTransformLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitGlobalTransformRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitGlobalTransformSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitIdGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitIdSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); cxstring * cxPickHitLabelGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLabelRem( cxPick *src, cxstring * *val, cxErrorCode *ec ); void cxPickHitLabelSet( cxPick *src, cxstring * val, long HitsArrayInd, cxErrorCode *ec ); signed long* cxPickHitLineIndicesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLineIndicesLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLineIndicesRem( cxPick *src, signed long* *val, cxErrorCode *ec ); void cxPickHitLineIndicesSet( cxPick *src, signed long* val, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLineNormalsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLineNormalsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLineNormalsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLineNormalsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLinePointsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLinePointsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLinePointsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLinePointsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLocalTransformGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLocalTransformLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLocalTransformRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLocalTransformSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLocationGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLocationLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLocationRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLocationSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitNormalGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitNormalLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitNormalRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitNormalSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); cxPickObject cxPickHitObjectTypeGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitObjectTypeSet( cxPick *src, cxPickObject val, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitPointIndexGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitPointIndexSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitsArrayLen( cxPick *src, cxErrorCode *ec ); void cxPickHitsArrayRem( cxPick *src, cxPickHit* *val, cxErrorCode *ec ); signed long cxPickModifierKeysGet( cxPick *src, cxErrorCode *ec ); void cxPickModifierKeysSet( cxPick *src, signed long val, cxErrorCode *ec ); signed int cxPickNumObjectHitsGet( cxPick *src, cxErrorCode *ec ); void cxPickNumObjectHitsSet( cxPick *src, signed int val, cxErrorCode *ec ); signed int* cxPickPositionArrayGet( cxPick *src, cxErrorCode *ec ); long cxPickPositionArrayLen( cxPick *src, cxErrorCode *ec ); void cxPickPositionArrayRem( cxPick *src, signed int* *val, cxErrorCode *ec ); void cxPickPositionArraySet( cxPick *src, signed int* val, cxErrorCode *ec ); float* cxPickProjectionMatrixGet( cxPick *src, cxErrorCode *ec ); long cxPickProjectionMatrixLen( cxPick *src, cxErrorCode *ec ); void cxPickProjectionMatrixRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickProjectionMatrixSet( cxPick *src, float* val, cxErrorCode *ec ); float* cxPickRayDirectionGet( cxPick *src, cxErrorCode *ec ); long cxPickRayDirectionLen( cxPick *src, cxErrorCode *ec ); void cxPickRayDirectionRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickRayDirectionSet( cxPick *src, float* val, cxErrorCode *ec ); float* cxPickRayOriginGet( cxPick *src, cxErrorCode *ec ); long cxPickRayOriginLen( cxPick *src, cxErrorCode *ec ); void cxPickRayOriginRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickRayOriginSet( cxPick *src, float* val, cxErrorCode *ec ); cxPick* cxPickRead( FILE *fd ); signed int* cxPickWindowSizeArrayGet( cxPick *src, cxErrorCode *ec ); long cxPickWindowSizeArrayLen( cxPick *src, cxErrorCode *ec ); void cxPickWindowSizeArrayRem( cxPick *src, signed int* *val, cxErrorCode *ec ); void cxPickWindowSizeArraySet( cxPick *src, signed int* val, cxErrorCode *ec ); void cxPickWrite( FILE *fd, int mode, cxPick *src );
#ifndef __cxPick_API_H_ #define __cxPick_API_H_ #ifdef __cplusplus "C" { #endif #include <stdio.h> #if defined(__sun) || defined(WIN32) integer function cxPickAlloc( NumObjectHits ) integer function cxPickCopy( src ) integer function cxPickDup( src ) integer function cxPickEventDataGet( src, ec ) subroutine cxPickEventDataSet( src, val, ec ) integer function cxPickEventTypeGet( src, ec ) subroutine cxPickEventTypeSet( src, val, ec ) integer function cxPickHitColorGet( src, HitsArrayInd, ec ) integer function cxPickHitColorLen( src, HitsArrayInd, ec ) subroutine cxPickHitColorRem( src, val, ec ) subroutine cxPickHitColorSet( src, val, HitsArrayInd, ec ) integer function cxPickHitConePartGet( src, HitsArrayInd, ec ) subroutine cxPickHitConePartSet( src, val, HitsArrayInd, ec ) integer function cxPickHitCylinderPartGet( src, HitsArrayInd, ec ) subroutine cxPickHitCylinderPartSet( src, val, HitsArrayInd, ec ) integer function cxPickHitFaceIndicesGet( src, HitsArrayInd, ec ) integer function cxPickHitFaceIndicesLen( src, HitsArrayInd, ec ) subroutine cxPickHitFaceIndicesRem( src, val, ec ) subroutine cxPickHitFaceIndicesSet( src, val, HitsArrayInd, ec ) integer function cxPickHitFaceNormalsGet( src, HitsArrayInd, ec ) integer function cxPickHitFaceNormalsLen( src, HitsArrayInd, ec ) subroutine cxPickHitFaceNormalsRem( src, val, ec ) subroutine cxPickHitFaceNormalsSet( src, val, HitsArrayInd, ec ) integer function cxPickHitFaceNumVerticesGet( src, HitsArrayInd, ec ) subroutine cxPickHitFaceNumVerticesSet( src, val, HitsArrayInd, ec ) integer function cxPickHitFacePointsGet( src, HitsArrayInd, ec ) integer function cxPickHitFacePointsLen( src, HitsArrayInd, ec ) subroutine cxPickHitFacePointsRem( src, val, ec ) subroutine cxPickHitFacePointsSet( src, val, HitsArrayInd, ec ) integer function cxPickHitFlagsGet( src, HitsArrayInd, ec ) subroutine cxPickHitFlagsSet( src, val, HitsArrayInd, ec ) integer function cxPickHitGlobalTransformGet( src, HitsArrayInd, ec ) integer function cxPickHitGlobalTransformLen( src, HitsArrayInd, ec ) subroutine cxPickHitGlobalTransformRem( src, val, ec ) subroutine cxPickHitGlobalTransformSet( src, val, HitsArrayInd, ec ) integer function cxPickHitIdGet( src, HitsArrayInd, ec ) subroutine cxPickHitIdSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLabelGet( src, HitsArrayInd, ec , retval) subroutine cxPickHitLabelRem( src, val, ec ) subroutine cxPickHitLabelSet( src, val, HitsArrayInd, ec ) integer function cxPickHitLineIndicesGet( src, HitsArrayInd, ec ) integer function cxPickHitLineIndicesLen( src, HitsArrayInd, ec ) subroutine cxPickHitLineIndicesRem( src, val, ec ) subroutine cxPickHitLineIndicesSet( src, val, HitsArrayInd, ec ) integer function cxPickHitLineNormalsGet( src, HitsArrayInd, ec ) integer function cxPickHitLineNormalsLen( src, HitsArrayInd, ec ) subroutine cxPickHitLineNormalsRem( src, val, ec ) subroutine cxPickHitLineNormalsSet( src, val, HitsArrayInd, ec ) integer function cxPickHitLinePointsGet( src, HitsArrayInd, ec ) integer function cxPickHitLinePointsLen( src, HitsArrayInd, ec ) subroutine cxPickHitLinePointsRem( src, val, ec ) subroutine cxPickHitLinePointsSet( src, val, HitsArrayInd, ec ) integer function cxPickHitLocalTransformGet( src, HitsArrayInd, ec ) integer function cxPickHitLocalTransformLen( src, HitsArrayInd, ec ) subroutine cxPickHitLocalTransformRem( src, val, ec ) subroutine cxPickHitLocalTransformSet( src, val, HitsArrayInd, ec ) integer function cxPickHitLocationGet( src, HitsArrayInd, ec ) integer function cxPickHitLocationLen( src, HitsArrayInd, ec ) subroutine cxPickHitLocationRem( src, val, ec ) subroutine cxPickHitLocationSet( src, val, HitsArrayInd, ec ) integer function cxPickHitNormalGet( src, HitsArrayInd, ec ) integer function cxPickHitNormalLen( src, HitsArrayInd, ec ) subroutine cxPickHitNormalRem( src, val, ec ) subroutine cxPickHitNormalSet( src, val, HitsArrayInd, ec ) integer function cxPickHitObjectTypeGet( src, HitsArrayInd, ec ) subroutine cxPickHitObjectTypeSet( src, val, HitsArrayInd, ec ) integer function cxPickHitPointIndexGet( src, HitsArrayInd, ec ) subroutine cxPickHitPointIndexSet( src, val, HitsArrayInd, ec ) integer function cxPickHitsArrayLen( src, ec ) subroutine cxPickHitsArrayRem( src, val, ec ) integer function cxPickModifierKeysGet( src, ec ) subroutine cxPickModifierKeysSet( src, val, ec ) integer function cxPickNumObjectHitsGet( src, ec ) subroutine cxPickNumObjectHitsSet( src, val, ec ) integer function cxPickPositionArrayGet( src, ec ) integer function cxPickPositionArrayLen( src, ec ) subroutine cxPickPositionArrayRem( src, val, ec ) subroutine cxPickPositionArraySet( src, val, ec ) integer function cxPickProjectionMatrixGet( src, ec ) integer function cxPickProjectionMatrixLen( src, ec ) subroutine cxPickProjectionMatrixRem( src, val, ec ) subroutine cxPickProjectionMatrixSet( src, val, ec ) integer function cxPickRayDirectionGet( src, ec ) integer function cxPickRayDirectionLen( src, ec ) subroutine cxPickRayDirectionRem( src, val, ec ) subroutine cxPickRayDirectionSet( src, val, ec ) integer function cxPickRayOriginGet( src, ec ) integer function cxPickRayOriginLen( src, ec ) subroutine cxPickRayOriginRem( src, val, ec ) subroutine cxPickRayOriginSet( src, val, ec ) integer function cxPickRead( fd ) integer function cxPickWindowSizeArrayGet( src, ec ) integer function cxPickWindowSizeArrayLen( src, ec ) subroutine cxPickWindowSizeArrayRem( src, val, ec ) subroutine cxPickWindowSizeArraySet( src, val, ec ) subroutine cxPickWrite( fd, mode, src )
For example, assuming that the cxPick.t file exists, you would take the following steps:
echo cxPick > TYPES cxmkmf makeNow your automatically generated code will reside in cxPick.api.c.
Note that this process will create several files in the local directory, so it is often helpful to use a separate directory for types, just as modules are developed in their own directories.
signed long cxPickEventDataGet( cxPick *src, cxErrorCode *ec ); signed int cxPickEventTypeGet( cxPick *src, cxErrorCode *ec ); float* cxPickHitColorGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitConePartGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitCylinderPartGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long* cxPickHitFaceIndicesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitFaceNormalsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitFaceNumVerticesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitFacePointsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitFlagsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitGlobalTransformGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitIdGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); cxstring * cxPickHitLabelGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long* cxPickHitLineIndicesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLineNormalsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLinePointsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLocalTransformGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLocationGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitNormalGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); cxPickObject cxPickHitObjectTypeGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitPointIndexGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickModifierKeysGet( cxPick *src, cxErrorCode *ec ); signed int cxPickNumObjectHitsGet( cxPick *src, cxErrorCode *ec ); signed int* cxPickPositionArrayGet( cxPick *src, cxErrorCode *ec ); float* cxPickProjectionMatrixGet( cxPick *src, cxErrorCode *ec ); float* cxPickRayDirectionGet( cxPick *src, cxErrorCode *ec ); float* cxPickRayOriginGet( cxPick *src, cxErrorCode *ec ); signed int* cxPickWindowSizeArrayGet( cxPick *src, cxErrorCode *ec );
integer function cxPickEventDataGet( src, ec ) integer function cxPickEventTypeGet( src, ec ) integer function cxPickHitColorGet( src, HitsArrayInd, ec ) integer function cxPickHitConePartGet( src, HitsArrayInd, ec ) integer function cxPickHitCylinderPartGet( src, HitsArrayInd, ec ) integer function cxPickHitFaceIndicesGet( src, HitsArrayInd, ec ) integer function cxPickHitFaceNormalsGet( src, HitsArrayInd, ec ) integer function cxPickHitFaceNumVerticesGet( src, HitsArrayInd, ec ) integer function cxPickHitFacePointsGet( src, HitsArrayInd, ec ) integer function cxPickHitFlagsGet( src, HitsArrayInd, ec ) integer function cxPickHitGlobalTransformGet( src, HitsArrayInd, ec ) integer function cxPickHitIdGet( src, HitsArrayInd, ec ) subroutine cxPickHitLabelGet( src, HitsArrayInd, ec , retval) integer function cxPickHitLineIndicesGet( src, HitsArrayInd, ec ) integer function cxPickHitLineNormalsGet( src, HitsArrayInd, ec ) integer function cxPickHitLinePointsGet( src, HitsArrayInd, ec ) integer function cxPickHitLocalTransformGet( src, HitsArrayInd, ec ) integer function cxPickHitLocationGet( src, HitsArrayInd, ec ) integer function cxPickHitNormalGet( src, HitsArrayInd, ec ) integer function cxPickHitObjectTypeGet( src, HitsArrayInd, ec ) integer function cxPickHitPointIndexGet( src, HitsArrayInd, ec ) integer function cxPickModifierKeysGet( src, ec ) integer function cxPickNumObjectHitsGet( src, ec ) integer function cxPickPositionArrayGet( src, ec ) integer function cxPickProjectionMatrixGet( src, ec ) integer function cxPickRayDirectionGet( src, ec ) integer function cxPickRayOriginGet( src, ec ) integer function cxPickWindowSizeArrayGet( src, ec )
void cxPickEventDataSet( cxPick *src, signed long val, cxErrorCode *ec ); void cxPickEventTypeSet( cxPick *src, signed int val, cxErrorCode *ec ); void cxPickHitColorSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitConePartSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitCylinderPartSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFaceIndicesSet( cxPick *src, signed long* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFaceNormalsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFaceNumVerticesSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFacePointsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFlagsSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitGlobalTransformSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitIdSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLabelSet( cxPick *src, cxstring * val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLineIndicesSet( cxPick *src, signed long* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLineNormalsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLinePointsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLocalTransformSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLocationSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitNormalSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitObjectTypeSet( cxPick *src, cxPickObject val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitPointIndexSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickModifierKeysSet( cxPick *src, signed long val, cxErrorCode *ec ); void cxPickNumObjectHitsSet( cxPick *src, signed int val, cxErrorCode *ec ); void cxPickPositionArraySet( cxPick *src, signed int* val, cxErrorCode *ec ); void cxPickProjectionMatrixSet( cxPick *src, float* val, cxErrorCode *ec ); void cxPickRayDirectionSet( cxPick *src, float* val, cxErrorCode *ec ); void cxPickRayOriginSet( cxPick *src, float* val, cxErrorCode *ec ); void cxPickWindowSizeArraySet( cxPick *src, signed int* val, cxErrorCode *ec );
subroutine cxPickEventDataSet( src, val, ec ) subroutine cxPickEventTypeSet( src, val, ec ) subroutine cxPickHitColorSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitConePartSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitCylinderPartSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFaceIndicesSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFaceNormalsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFaceNumVerticesSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFacePointsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFlagsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitGlobalTransformSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitIdSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLabelSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLineIndicesSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLineNormalsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLinePointsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLocalTransformSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLocationSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitNormalSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitObjectTypeSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitPointIndexSet( src, val, HitsArrayInd, ec ) subroutine cxPickModifierKeysSet( src, val, ec ) subroutine cxPickNumObjectHitsSet( src, val, ec ) subroutine cxPickPositionArraySet( src, val, ec ) subroutine cxPickProjectionMatrixSet( src, val, ec ) subroutine cxPickRayDirectionSet( src, val, ec ) subroutine cxPickRayOriginSet( src, val, ec ) subroutine cxPickWindowSizeArraySet( src, val, ec )
long cxPickHitColorLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitFaceIndicesLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitFaceNormalsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitFacePointsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitGlobalTransformLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLineIndicesLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLineNormalsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLinePointsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLocalTransformLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLocationLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitNormalLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitsArrayLen( cxPick *src, cxErrorCode *ec ); long cxPickPositionArrayLen( cxPick *src, cxErrorCode *ec ); long cxPickProjectionMatrixLen( cxPick *src, cxErrorCode *ec ); long cxPickRayDirectionLen( cxPick *src, cxErrorCode *ec ); long cxPickRayOriginLen( cxPick *src, cxErrorCode *ec ); long cxPickWindowSizeArrayLen( cxPick *src, cxErrorCode *ec );
integer function cxPickHitColorLen( src, HitsArrayInd, ec ) integer function cxPickHitFaceIndicesLen( src, HitsArrayInd, ec ) integer function cxPickHitFaceNormalsLen( src, HitsArrayInd, ec ) integer function cxPickHitFacePointsLen( src, HitsArrayInd, ec ) integer function cxPickHitGlobalTransformLen( src, HitsArrayInd, ec ) integer function cxPickHitLineIndicesLen( src, HitsArrayInd, ec ) integer function cxPickHitLineNormalsLen( src, HitsArrayInd, ec ) integer function cxPickHitLinePointsLen( src, HitsArrayInd, ec ) integer function cxPickHitLocalTransformLen( src, HitsArrayInd, ec ) integer function cxPickHitLocationLen( src, HitsArrayInd, ec ) integer function cxPickHitNormalLen( src, HitsArrayInd, ec ) integer function cxPickHitsArrayLen( src, ec ) integer function cxPickPositionArrayLen( src, ec ) integer function cxPickProjectionMatrixLen( src, ec ) integer function cxPickRayDirectionLen( src, ec ) integer function cxPickRayOriginLen( src, ec ) integer function cxPickWindowSizeArrayLen( src, ec )
cxPick* cxPickDup( cxPick *src );
integer function cxPickDup( src )
cxPick* cxPickCopy( cxPick *src );
integer function cxPickCopy( src )
cxPick* cxPickAlloc( signed int NumObjectHits );
integer function cxPickAlloc( NumObjectHits )There are two types of allocation routines, those that allocate an array and those that allocate a reference-counted structure.
void cxPickHitColorRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitFaceIndicesRem( cxPick *src, signed long* *val, cxErrorCode *ec ); void cxPickHitFaceNormalsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitFacePointsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitGlobalTransformRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLabelRem( cxPick *src, cxstring * *val, cxErrorCode *ec ); void cxPickHitLineIndicesRem( cxPick *src, signed long* *val, cxErrorCode *ec ); void cxPickHitLineNormalsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLinePointsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLocalTransformRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLocationRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitNormalRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitsArrayRem( cxPick *src, cxPickHit* *val, cxErrorCode *ec ); void cxPickPositionArrayRem( cxPick *src, signed int* *val, cxErrorCode *ec ); void cxPickProjectionMatrixRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickRayDirectionRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickRayOriginRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickWindowSizeArrayRem( cxPick *src, signed int* *val, cxErrorCode *ec );
cxPick* cxPickRead( FILE *fd );
integer function cxPickRead( fd )
void cxPickWrite( FILE *fd, int mode, cxPick *src );
subroutine cxPickWrite( fd, mode, src )
shared root typedef struct { int eventType "Event Type"; long eventData "Event Data"; long eventModifiers "Modifier Keys"; int position[2] "Position Array"; int windowSize[2] "Window Size Array"; float origin[3] "Ray Origin"; float direction[3] "Ray Direction"; float projectionMatrix[4, 4] "Projection Matrix"; int numHits "Num Object Hits"; cxPickHit hit[numHits] "Hits Array"; } cxPick; typedef struct { long id "Hit Id"; long validInfo "Hit Flags"; float point[3] "Hit Location"; float normal[3] "Hit Normal"; float color[3] "Hit Color"; string label "Hit Label"; float localTransform[4, 4] "Hit Local Transform"; float globalTransform[4, 4] "Hit Global Transform"; cxPickObject objectType "Hit Object Type"; switch (objectType) { case cx_pick_point: long index "Hit Point Index"; case cx_pick_line: long index[2] "Hit Line Indices"; float point[2, 3] "Hit Line Points"; float normal[2, 3] "Hit Line Normals"; case cx_pick_face: long nvertices "Hit Face NumVertices"; long index[nvertices] "Hit Face Indices"; float point[nvertices, 3] "Hit Face Points"; float normal[nvertices, 3] "Hit Face Normals"; case cx_pick_cone: long part "Hit Cone Part"; case cx_pick_cylinder: long part "Hit Cylinder Part"; } o; } cxPickHit; typedef enum { cx_pick_none, cx_pick_point, cx_pick_line, cx_pick_face, cx_pick_sphere, cx_pick_cone, cx_pick_cylinder, cx_pick_nurb, cx_pick_splat, cx_pick_other } cxPickObject;